Skip to content

fix: v0.5 - JSON support, screenshot reliability, chain robustness#14

Merged
adhikjoshi merged 8 commits intomainfrom
fix/v0.5-json-screenshot-chain
Feb 8, 2026
Merged

fix: v0.5 - JSON support, screenshot reliability, chain robustness#14
adhikjoshi merged 8 commits intomainfrom
fix/v0.5-json-screenshot-chain

Conversation

@adhikjoshi
Copy link
Copy Markdown
Owner

Fixes #10 and #13

Changes

  • app launch/frontmost: Added --json output support
  • chrome list-tabs: Added --json output support
  • Screenshot: Reworked to use screencapture CLI for reliable capture (no more wallpaper-only screenshots)
  • Chain command: Structured JSON input support, prevents no-session input hangs
  • Minor fixes to keyboard, shell, space commands
  • Added test infrastructure

Testing

Built and binary deployed to MacPilot.app. Needs end-to-end QA validation.

…enshot via screencapture, fix chain multiline parsing

- AppCommands: --json output for launch and frontmost
- ChromeCommand: --json for list-tabs
- ScreenshotCommand: use screencapture CLI for reliable capture (fixes #10)
- ChainCommand: structured JSON input, prevent no-session hangs (fixes #13)
- Minor fixes to keyboard, shell, space commands
- Added tests
…lt on), app launch timeout, bump v0.5.0

- KeyboardCommands: rewritten typeText using combinedSessionState + proper unicode on keyDown/keyUp
- Alert sound detection enabled by default on all keyboard commands (--no-detect-errors to disable)
- App launch: 5s timeout, errors instead of hanging forever (fixes #16)
- Version bumped to 0.5.0
- Fixes #15
- New 'macpilot menubar' command launches NSStatusBar item
- Shows permission status (✅/❌) for Accessibility, Screen Recording, Full Disk Access, Automation
- 'Grant All Permissions' opens System Settings panes sequentially
- Individual permission settings shortcuts
- SF Symbol icon (command.circle.fill)
- Refreshes permissions on menu open
… appearance, OCR, network, process, system info, screen record, dock commands

- Activity indicator overlay (screen border glow when MacPilot is active)
- Notification send command
- Audio volume get/set/mute/unmute
- Display brightness get/set
- Dark mode / appearance toggle
- OCR via Vision framework
- Network info (wifi, IP, interfaces)
- Process list/kill
- System info (CPU, RAM, disk, OS)
- Screen recording start/stop
- Dock show/hide/autohide
- UI find-text and wait-for commands
- Enhanced clipboard with image support
- Enhanced dialog file interaction
…to-start indicator

- Flash indicator BEFORE every operation (mouse, keyboard, app, window, chrome, chain, clipboard, screenshot, UI, dialog, system commands)
- New ModalDialogSupport.swift: AX-based modal dialog detection with button discovery
- New dialog subcommands: detect, dismiss, auto-dismiss (with smart button priority: Don't Save > OK > Cancel)
- Auto-start indicator daemon via IndicatorAutoStarter when any command runs
- KeyboardCommands: include modal dialog info in JSON output when alert sounds detected
- MacPilot.swift validate(): call ensureIndicatorAutoStartIfNeeded()
- Fix kAXSheetsAttribute scope issue (use string literal)
@adhikjoshi adhikjoshi merged commit c065954 into main Feb 8, 2026
1 check passed
@adhikjoshi adhikjoshi deleted the fix/v0.5-json-screenshot-chain branch February 8, 2026 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

screenshot captures wallpaper/menu bar instead of active app windows after successful automation steps

1 participant