Skip to content

v3.0.0-beta3

Latest

Choose a tag to compare

@steipete steipete released this 29 Dec 23:04
· 12 commits to main since this release

[3.0.0-beta3] - 2025-12-29

Highlights

  • Headless daemon + window tracking: peekaboo daemon start|stop|status, MCP auto-daemon mode, in-memory snapshots, and move-aware click/type adjustments.
  • Menu bar automation overhaul: CGWindow + AX fallback for menu extras (including Trimmy), menubar click --verify + menu click-extra --verify with popover/focus/OCR checks, and see --menubar popover capture via window list + OCR.
  • Screen/area capture pipeline now uses a persistent ScreenCaptureKit fast stream (frame-age + wait timing logs) with single-shot fallback for windows.

Added

  • peekaboo clipboard --verify reads back clipboard writes; text writes now publish both public.plain-text and .string across CLI, MCP tools, paste, and scripts.
  • peekaboo dock launch --verify, peekaboo window focus --verify, and peekaboo app switch --verify add lightweight post-action checks.
  • peekaboo app list now supports --include-hidden and --include-background.
  • Release artifacts now ship a universal macOS CLI binary (arm64 + x86_64).

Changed

  • AX element detection now caches per-window traversals for ~1.5s to reduce repeated see thrash; window list mapping is now centralized and cached to cut CG/SC re-queries.
  • Menu bar popover selection now prefers owner-name matches and X-position hints; owner-PID filtering relaxes when app hints do not match any candidate.
  • Menu bar screenshot captures now use the real menu bar height derived from each screen’s visible frame.
  • peekaboo see --menubar now attempts an OCR area fallback after auto-clicking a menu extra even when open-menu AX state is missing.

Fixed

  • Menu bar extras now combine CGWindow data with AX fallbacks to surface third-party items like Trimmy, and clicks target the owning window for reliability.
  • Menu bar extras now hydrate missing owner PIDs from running app metadata to improve open-menu detection.
  • Menu bar open-menu probing now returns AX menu frames over the bridge to support popover captures.
  • Menu bar verification now detects focused-window changes when a menu bar app opens a settings window.
  • Menu bar click verification now detects popovers in both top-left and bottom-left coordinate systems.
  • Menu bar click verification now requires OCR text to include the target title/owner name when falling back to OCR (set PEEKABOO_MENUBAR_OCR_VERIFY=0 to disable).
  • Menu bar popover OCR area/frame fallbacks now validate against app hints before accepting a capture.