| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Add self-learning recipes (ghost_learn) for v2.2.0 3 new MCP tools: ghost_learn_start, ghost_learn_stop, ghost_learn_status. User performs a task manually while Ghost OS observes via CGEvent tap + AX enrichment, then Claude synthesizes the recording into a replayable recipe. New files (Sources/GhostOS/Learning/): - LearningTypes.swift: ObservedAction, ElementContext, LearningSession, errors - LearningRecorder.swift: CGEvent tap lifecycle, background thread, os_unfair_lock - EventHandlers.swift: key/mouse/scroll handling, AX enrichment, secure field detection - AppSwitchDetector.swift: frontmost app polling for app switch detection - LearningDispatch.swift: MCP tool handlers with JSON serialization Modified files: - MCPTools.swift, MCPDispatch.swift: 3 new tool definitions and dispatch cases - Doctor.swift: Input Monitoring permission check (optional, warning only) - SetupWizard.swift: Optional Input Monitoring setup step - GHOST-MCP.md: Rule 13 (Self-Learning Mode), tool count 26->29 - README.md: What's New v2.2.0 section - Types.swift: Version bump to 2.2.0 Thread safety: os_unfair_lock on all shared state, lock-protected local copy pattern for app switch detection, max duration safety timer (600s). Privacy: 3-tier secure field detection, restricted bundle ID filtering. Reviewed by 2 adversarial review agents (P0/P1/P2 classification, all fixed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | 6 个月前 | |
Add self-learning recipes (ghost_learn) for v2.2.0 3 new MCP tools: ghost_learn_start, ghost_learn_stop, ghost_learn_status. User performs a task manually while Ghost OS observes via CGEvent tap + AX enrichment, then Claude synthesizes the recording into a replayable recipe. New files (Sources/GhostOS/Learning/): - LearningTypes.swift: ObservedAction, ElementContext, LearningSession, errors - LearningRecorder.swift: CGEvent tap lifecycle, background thread, os_unfair_lock - EventHandlers.swift: key/mouse/scroll handling, AX enrichment, secure field detection - AppSwitchDetector.swift: frontmost app polling for app switch detection - LearningDispatch.swift: MCP tool handlers with JSON serialization Modified files: - MCPTools.swift, MCPDispatch.swift: 3 new tool definitions and dispatch cases - Doctor.swift: Input Monitoring permission check (optional, warning only) - SetupWizard.swift: Optional Input Monitoring setup step - GHOST-MCP.md: Rule 13 (Self-Learning Mode), tool count 26->29 - README.md: What's New v2.2.0 section - Types.swift: Version bump to 2.2.0 Thread safety: os_unfair_lock on all shared state, lock-protected local copy pattern for app switch detection, max duration safety timer (600s). Privacy: 3-tier secure field detection, restricted bundle ID filtering. Reviewed by 2 adversarial review agents (P0/P1/P2 classification, all fixed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | 6 个月前 | |
Phase 6: ghost setup wizard and ghost doctor diagnostic tool ghost setup (SetupWizard.swift, ~280 lines): - Detects host app (iTerm2, VS Code, Cursor, Terminal) via TERM_PROGRAM env var and tells user exactly which app needs permission - Accessibility: checks with actual AX tree read, opens System Settings to the exact pane, retry loop with clear instructions - Screen Recording: optional, guides user to the right settings pane - MCP: detects Claude Code CLI, runs claude mcp add automatically - Recipes: installs bundled recipes from repo recipes/ directory - Self-test: reads AX tree, verifies screenshot capability - Clear summary with next steps ghost doctor (Doctor.swift, ~200 lines): - Non-interactive diagnostic that checks everything: Binary path/version, Accessibility (with AX tree test), Screen Recording, stale ghost processes (detects multiple PIDs), MCP config (checks claude mcp list output), recipes directory and JSON decode validation, AX tree readability - Reports issues vs warnings with specific fix commands - Detects the exact problem from v1/v2 testing: stale processes, wrong MCP path, broken recipe JSON Updated main.swift: - ghost setup -> SetupWizard - ghost doctor -> Doctor - Cleaner help text with "Get started" section | 7 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 个月前 | ||
| 6 个月前 | ||
| 7 个月前 |