mirror of
https://github.com/jlengrand/Maestro.git
synced 2026-03-10 08:31:19 +00:00
- Split monolithic CLAUDE.md into focused, indexed sub-docs for faster onboarding 📚 - Added deep Agent support guide: capabilities, flags, parsers, storage, and adding agents 🤖 - Documented full `window.maestro` IPC surface with clearer namespaces and History API 📡 - Captured core implementation patterns: processes, security, settings, modals, SSH, Auto Run 🧭 - Published performance playbook for React, IPC batching, caching, and debouncing 🚀 - Formalized Session interface docs, including multi-tab, queues, stats, and error fields 🧩 - Session-level custom agent path now overrides detected binary during spawn 🛠️ - New rendering settings: disable GPU acceleration (early startup) and disable confetti 🖥️ - Confetti effects now respect user preference across celebration overlays and wizard completion 🎊 - File explorer now distinguishes “loading” vs “no files found” empty states 🗂️
3.2 KiB
3.2 KiB
CLAUDE-AGENTS.md
Agent support documentation for the Maestro codebase. For the main guide, see CLAUDE.md. For detailed integration instructions, see AGENT_SUPPORT.md.
Supported Agents
| ID | Name | Status | Notes |
|---|---|---|---|
claude-code |
Claude Code | Active | Primary agent, --print --verbose --output-format stream-json |
codex |
OpenAI Codex | Active | Full support, --json, YOLO mode default |
opencode |
OpenCode | Active | Multi-provider support (75+ LLMs), stub session storage |
terminal |
Terminal | Internal | Hidden from UI, used for shell sessions |
Additional ToolType values (aider, claude) are defined in types but not yet implemented in agent-detector.ts.
Agent Capabilities
Each agent declares capabilities that control UI feature availability. See src/main/agent-capabilities.ts for the full interface.
| Capability | Description | UI Feature Controlled |
|---|---|---|
supportsResume |
Can resume previous sessions | Resume button |
supportsReadOnlyMode |
Has plan/read-only mode | Read-only toggle |
supportsJsonOutput |
Emits structured JSON | Output parsing |
supportsSessionId |
Emits session ID | Session ID pill |
supportsImageInput |
Accepts image attachments | Attach image button |
supportsSlashCommands |
Has discoverable commands | Slash autocomplete |
supportsSessionStorage |
Persists browsable sessions | Sessions browser |
supportsCostTracking |
Reports token costs | Cost widget |
supportsUsageStats |
Reports token counts | Context window widget |
supportsBatchMode |
Runs per-message | Batch processing |
supportsStreaming |
Streams output | Real-time display |
supportsResultMessages |
Distinguishes final result | Message classification |
Agent-Specific Details
Claude Code
- Binary:
claude - JSON Output:
--output-format stream-json - Resume:
--resume <session-id> - Read-only:
--permission-mode plan - Session Storage:
~/.claude/projects/<encoded-path>/
OpenAI Codex
- Binary:
codex - JSON Output:
--json - Batch Mode:
execsubcommand - Resume:
resume <thread_id>(v0.30.0+) - Read-only:
--sandbox read-only - YOLO Mode:
--dangerously-bypass-approvals-and-sandbox(enabled by default) - Session Storage:
~/.codex/sessions/YYYY/MM/DD/*.jsonl
OpenCode
- Binary:
opencode - JSON Output:
--format json - Batch Mode:
runsubcommand - Resume:
--session <session-id> - Read-only:
--agent plan - YOLO Mode: Auto-enabled in batch mode (no flag needed)
- Multi-Provider: Supports 75+ LLMs including Ollama, LM Studio, llama.cpp
Adding New Agents
To add support for a new agent:
- Add agent definition to
src/main/agent-detector.ts - Define capabilities in
src/main/agent-capabilities.ts - Create output parser in
src/main/parsers/{agent}-output-parser.ts - Register parser in
src/main/parsers/index.ts - (Optional) Create session storage in
src/main/storage/{agent}-session-storage.ts - (Optional) Add error patterns to
src/main/parsers/error-patterns.ts
See AGENT_SUPPORT.md for comprehensive integration documentation.