mirror of
https://github.com/samsonjs/Peekaboo.git
synced 2026-03-25 09:25:47 +00:00
3.3 KiB
3.3 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.0-beta.3] - 2025-01-21
Added
- Enhanced
imagetool to support optional immediate analysis of the captured screenshot by providing aquestionandprovider_config.- If a
questionis given and nopathis specified, the image is saved to a temporary location and deleted after analysis. - If a
questionis given, Base64 image data is not returned in thecontentarray; the analysis result becomes the primary payload, alongside image metadata.
- If a
Changed
- Migrated test runner from Jest to Vitest.
- Updated documentation (
README.md,docs/spec.md) to reflect newimagetool capabilities.
[1.0.0-beta.2] - Previous Release Date
Fixed
- (Summarize fixes from beta.2 if known, otherwise remove or mark as TBD)
Added
- Initial E2E tests for CLI image capture.
[1.0.0-beta.4] - 2025-01-25
✨ Added
- Comprehensive Swift unit tests for all CLI components
- Release preparation script with extensive validation checks
- Swift code linting and formatting with SwiftLint and SwiftFormat
- Enhanced image tool with blur detection, custom formats (PNG/JPG), and naming patterns
- Robust error handling for Swift CLI integration
🐛 Fixed
- Swift CLI integration tests now properly handle error output
- Fixed Swift code to comply with SwiftLint rules
- Corrected JSON structure expectations in tests
📚 Changed
- Updated all dependencies to latest versions
- Improved test coverage for both TypeScript and Swift code
- Enhanced release process with automated checks
- Swift CLI
imagecommand: Added--screen-index <Int>option to capture a specific display when--mode screenis used - MCP
imagetool: Now fully supportsapp_target: "screen:INDEX"by utilizing the Swift CLI's new--screen-indexcapability
♻️ Changed
- MCP
imagetool API significantly simplified:- Replaced
app,mode, andwindow_specifierparameters with a singleapp_targetstring (e.g.,"AppName","AppName:WINDOW_TITLE:Title","screen:0"). formatparameter now includes"data"option to return Base64 PNG data directly. Ifpathis also given withformat: "data", file is saved (as PNG) AND data is returned.- If
pathis omitted,imagetool now defaults toformat: "data"behavior (returns Base64 PNG data). return_dataparameter removed (behavior now implied byformatandpath).provider_configparameter removed. AI provider for analysis (whenquestionis supplied) is now automatically selected fromPEEKABOO_AI_PROVIDERSenvironment variable.
- Replaced
- Node.js
imageToolHandlerandbuildSwiftCliArgs: Refactored to support the newimagetool API and--screen-index. - Tests: Unit and Integration tests for the
imagetool were extensively updated to reflect the API changes and new functionalities.
🐛 Fixed
- Addressed an issue in
src/tools/image.tswherelogger.debug()could be called without checking for logger existence (relevant forbuildSwiftCliArgsif called in an unexpected context, though typically safe).