- Update version in package.json
- Update package-lock.json
- Add comprehensive changelog entry for beta.10
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix all critical ESLint errors (unused variables, wrong types)
- Split image.ts into smaller modules for better maintainability:
- image-analysis.ts: AI provider analysis logic
- image-summary.ts: Summary text generation
- image-cli-args.ts: Swift CLI argument building
- Reduce image.ts from 472 to 246 lines
- Add proper TypeScript types throughout (reduce 'any' usage)
- Fix logger type imports and use proper Pino Logger type
- Update ESLint to ignore test files (handled by vitest)
- Clean up all trailing spaces and formatting issues
- Export buildSwiftCliArgs for test compatibility
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add LICENSE and README.md to npm package files array
- Enhance list tool's server_status as comprehensive info command:
- Shows MCP version, Swift CLI status and version
- Displays system permissions (screen recording, accessibility)
- Lists environment configuration and potential issues
- Checks log file accessibility
- Implement dynamic version injection for Swift CLI via build script
- Add ESLint configuration (.eslintrc.json) and npm scripts
- Fix critical ESLint issues (console.error, unused imports, prefer-const)
- Add Pino fallback logic when log directory is not writable
- Update default log path to ~/Library/Logs/peekaboo-mcp.log (macOS system log directory)
- Update README to document new log path
- Add Version.swift to .gitignore (auto-generated file)
- Create Version.swift.development for local development
- Add execPeekaboo utility function for simple CLI execution
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add npm run inspector script for MCP inspector tool
- Synchronize Swift CLI version with package.json (1.0.0-beta.9)
- Update macOS version requirement to v14 (Sonoma) for n-1 support
- Add Swift compiler warnings check in prepare-release script
- Convert tests/setup.ts from Jest to Vitest syntax
- Update server status tests to match new format
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace non-existent server_status command with list apps
- Update command names to match actual Swift CLI (apps not running_applications)
- Fix expected JSON structure to match actual output
- Remove references to non-existent ServerStatus type
- Fix ListCommandTests to use actual WindowsSubcommand properties
- Update PermissionsCheckerTests to test actual error types
- Remove tests for properties that don't exist in the implementation
- Update PermissionsCheckerTests to use static methods
- Fix ApplicationFinderTests to use correct method signatures
- Update WindowManagerTests to match actual WindowManager API
- Fix ImageCommandTests to use correct property names (path not output, etc)
- Update ListCommandTests to work with subcommand structure
- Remove tests for non-existent methods and add tests for actual functionality
- Fix import ordering (XCTest after module imports)
- Add missing newlines at end of files
- Fix number formatting (underscore separators)
- Apply consistent formatting to switch statements
- Add unit test templates for all Swift components:
- ApplicationFinderTests: Test app discovery and fuzzy matching
- WindowManagerTests: Test window listing and filtering
- PermissionsCheckerTests: Test permission detection
- ImageCommandTests: Test command parsing and validation
- ListCommandTests: Test list command variations
- Enhance release script with thorough CLI testing:
- Test all commands with various arguments
- Validate JSON output structure
- Test error handling for invalid inputs
- Check permission status reporting
- Add dedicated Swift CLI integration test phase
- Update RELEASING.md to highlight automated checks
- Check peekaboo binary exists and is included in package
- Verify binary has executable permissions
- Ensure binary contains both arm64 and x86_64 architectures
- Test binary execution with --help flag
- Check if the current version is already published on npm
- Prevent accidental republishing of existing versions
- Run this check early in the release process
Update test cases to use xCoordinate/yCoordinate instead of x/y
to match the refactored property names.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Specify Swift 6.0 in .swiftformat to enable all formatting features
- Apply Swift 6 formatting improvements:
- Use shorthand optional unwrapping syntax
- Use implicit returns in computed properties
- Use modern Swift 6 syntax throughout
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add prepare-release.js script that performs all pre-release checks
- Checks git status, dependencies, TypeScript, Swift, and builds
- Runs all tests including integration tests
- Verifies package contents and structure
- Add npm run prepare-release command
- Document in CLAUDE.md
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add Swift linting and formatting support
- Refactor Swift code for better maintainability
- Enhanced image capture features (blur detection, formats, naming)
- Fix compilation error in ListCommand
- Add comprehensive integration tests
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>