Overview
Maestro supports multiple AI providers, each with unique capabilities and strengths. You can run different providers side-by-side, switch between them for different tasks, or coordinate them in Group Chat.Supported Providers
Maestro currently supports:| Provider | ID | Binary | Status |
|---|---|---|---|
| Claude Code | claude-code | claude | Active |
| OpenCode | opencode | opencode | Active |
| Codex (OpenAI) | codex | codex | Active |
| Factory Droid | factory-droid | droid | Active |
| Terminal | terminal | (shell) | Internal |
Provider Detection
Maestro automatically detects installed providers on startup:Capability discovery
Each detected provider’s capabilities are loaded:
- Session resume support
- Image input support
- Cost tracking
- Slash commands
- Read-only mode
Installing Providers
Claude Code
OpenCode
Codex (OpenAI)
Configuring Providers
Provider Settings
Access provider configuration in Settings → Providers:Open provider settings
- Press
Cmd+,(Mac) orCtrl+,(Windows/Linux) - Navigate to Providers tab (if available) or use General tab
- Each detected provider has a configuration section
Configure custom paths
If a provider is not in your PATH:
- Click Set Custom Path for the provider
- Browse to the binary location
- Click Save
- Maestro will use this path instead of searching PATH
Add custom arguments
Provider-specific CLI arguments are appended to all invocations:Claude Code example:OpenCode example:Codex example:
Global vs Provider-Specific Variables
Maestro merges environment variables in this priority order:- Session-level overrides (highest priority)
- Global environment variables (Settings → General → Shell Configuration)
- Provider-specific variables (Settings → Providers → [Provider] → Environment Variables)
- System environment (lowest priority)
- Set
ANTHROPIC_API_KEYglobally for all Claude-based providers - Override with provider-specific keys for different accounts
- Override again at session level for testing
Provider Capabilities
Claude Code
- Full slash command support in batch mode
- Comprehensive cost tracking
- Session browsing and resume
- MCP server integration
- Rich thinking/reasoning display
- Model selection via Anthropic account (not CLI flag)
- No mid-turn input in batch mode
OpenCode
- Model selection via CLI flag
- Per-step cost tracking
- Fast execution
- Image support on resume
- No native slash commands
- No session browser
Codex (OpenAI)
- Model selection via
-mflag - Reasoning tokens display (o3/o4-mini)
- OpenAI ecosystem integration
- Image input only on new sessions (not resume)
- No cost tracking (only token counts)
- Slash commands only in TUI mode
Creating Agents with Different Providers
Select provider
- In the agent creation dialog, choose Agent Type
- Only installed providers appear in the dropdown
- Each provider shows an availability indicator
Configure agent
Set agent-specific options:
- Working directory: Project path
- Model: Provider-specific model selection (if supported)
- Environment variables: Agent-level overrides
- Read-only mode: Plan/preview mode (if supported)
Switching Between Providers
You cannot change a session’s provider after creation, but you can:Create parallel agents
Transfer context between providers
Use the Context Transfer feature:- Select messages in the source agent
- Right-click → Transfer to Another Session
- Choose target agent (can be different provider)
- Context is exported and imported
Multi-Provider Group Chat
Coordinate agents from different providers in Group Chat:SSH Remote Providers
Run providers on remote machines via SSH:Configure SSH remote
Settings → SSH Hosts → Add SSH Remote
- Hostname/IP
- Port (default: 22)
- Username
- Private key path
- Auto Run playbooks
- Group Chat participation
- Context operations
- Worktree integration
Provider-Specific Workflows
Claude Code: MCP-Powered Development
OpenCode: Multi-Model Experimentation
Codex: OpenAI Reasoning Models
Troubleshooting
Provider not detected
Check PATH
Check PATH
Refresh detection
Refresh detection
Settings → General → Check for Updates or restart Maestro to re-detect providers.
Custom path not working
Custom path not working
Ensure:
- Path points to the binary itself (not a directory)
- Binary has execute permissions:
chmod +x /path/to/binary - Path is absolute (not relative)
Provider-specific errors
Authentication errors
Authentication errors
Each provider has different auth requirements:
- Claude Code:
claude configto set API key - OpenCode:
ANTHROPIC_API_KEYenvironment variable - Codex:
codex loginto authenticate
Model not available
Model not available
Verify model name matches provider’s expected format:
- Claude Code: Configured via Anthropic account
- OpenCode:
--model provider/model-name - Codex:
-m model-name
Features not working
Features not working
Some features are provider-specific. Check Provider Notes for limitations.
Best Practices
Use the right provider for the task:
- Claude Code - MCP integration, full slash commands, cost tracking
- OpenCode - Model flexibility, fast execution, simple workflows
- Codex - OpenAI models, reasoning tokens, OpenAI-specific features
Related Documentation
- Provider Notes - Feature comparison matrix
- Configuration - Settings management
- SSH Remote Execution - Remote provider setup
- Group Chat - Multi-provider coordination
- AGENT_SUPPORT.md - Developer integration guide