Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.
Multi-agent plugin bundle for Claude Code and Gemini CLI
Maestro installs a shared orchestration layer that works across Claude Code, Codex, Gemini CLI, and Qwen Code. It chooses a workflow, assigns specialist agents, runs quality gates, and stores session state so you can resume work instead of starting over.
Builders who want their coding agent to coordinate specialists, keep state, and run review and safety checks.
You can hand a task to an installed agent system that plans the work, delegates it, and checks the result.
What it does
Express and standard workflows
It offers a short Express path for simple tasks and a 4-phase Standard workflow for medium and complex tasks.
Specialist agent routing
It ships 39 specialist agents such as reviewer, debugger, security, SEO, accessibility, compliance, and design roles.
Persistent session state
It archives session output under `docs/maestro/` by default so work can be resumed later.
Built-in quality gates
It includes review, debug, security, performance, SEO, accessibility, and compliance entrypoints.
Cross-runtime packaging
It generates runtime-specific surfaces for Gemini CLI, Claude Code, Codex, and Qwen Code from one canonical `src/` tree.
Hooks and MCP support
It includes hook runners, git hook scripts, and an MCP server entrypoint for tool integrations.
How to get it
- 1Run
gemini extensions install https://github.com/josstei/maestro-orchestrate
- 2Local development
git clone https://github.com/josstei/maestro-orchestrate cd maestro-orchestrate gemini extensions link .
- 3Marketplace install
claude plugin marketplace add josstei/maestro-orchestrate claude plugin install maestro@maestro-orchestrator --scope user
- 4Development / temporary loading
git clone https://github.com/josstei/maestro-orchestrate claude --plugin-dir /path/to/maestro-orchestrate/claude
- 5Register the marketplace
codex plugin marketplace add josstei/maestro-orchestrate
- 6Local development (path must start with ./, ../, /, or ~/ — Codex otherwise treats bare…
git clone https://github.com/josstei/maestro-orchestrate codex plugin marketplace add /absolute/path/to/maestro-orchestrate # then: start Codex, run `/plugins`, select Maestro → Install
README
Maestro
Maestro is a multi-agent development orchestration platform with 39 specialists, an Express path for simple work, a 4-phase standard workflow for medium and complex work, persistent session state, and standalone review/debug/security/perf/seo/accessibility/compliance entrypoints. It runs from one canonical src/ tree across Gemini CLI, Claude Code, Codex, and Qwen Code.
Runtime Targets
| Runtime | Location | Public Surface | Notes |
|---|---|---|---|
| Gemini CLI | repo root | /maestro:* | Snake-case agents, TOML commands, hooks, TOML shell policies |
| Claude Code | claude/ | /orchestrate, /review-code, ... | Kebab-case agents with maestro: subagent names |
| Codex | plugins/maestro/ | $maestro:* | Plugin skills, spawn_agent, no runtime hooks |
| Qwen Code | qwen/ | /maestro:* | Gemini-CLI-compatible extension, QWEN.md context file, SubagentStart/SubagentStop hooks |
Getting Started
Prerequisites
- One supported runtime: Gemini CLI, Claude Code, Codex, or Qwen Code
- Node.js 20+ for the MCP server and helper scripts
- Gemini CLI and Qwen Code only: enable experimental subagents in
~/.gemini/settings.json(Gemini) or~/.qwen/settings.json(Qwen)
{
"experimental": {
"enableAgents": true
}
}
Maestro does not edit ~/.gemini/settings.json or ~/.qwen/settings.json for you.
Installation
Gemini CLI
gemini extensions install https://github.com/josstei/maestro-orchestrate
Local development:
git clone https://github.com/josstei/maestro-orchestrate
cd maestro-orchestrate
gemini extensions link .
Verify with gemini extensions list.
Claude Code
Marketplace install:
claude plugin marketplace add josstei/maestro-orchestrate
claude plugin install maestro@maestro-orchestrator --scope user
Development / temporary loading:
git clone https://github.com/josstei/maestro-orchestrate
claude --plugin-dir /path/to/maestro-orchestrate/claude
More Claude-specific setup and plugin management lives in claude/README.md.
Codex
Register the marketplace:
codex plugin marketplace add josstei/maestro-orchestrate
Then start Codex, run /plugins to browse, select Maestro, and choose Install.
Local development (path must start with ./, ../, /, or ~/ — Codex otherwise treats bare owner/repo as a GitHub source):
git clone https://github.com/josstei/maestro-orchestrate
codex plugin marketplace add /absolute/path/to/maestro-orchestrate
# then: start Codex, run `/plugins`, select Maestro → Install
More Codex-specific setup and runtime details live in plugins/maestro/README.md and docs/runtime-codex.md.
Qwen Code
qwen extensions install https://github.com/josstei/maestro-orchestrate
Local development:
git clone https://github.com/josstei/maestro-orchestrate
cd maestro-orchestrate
qwen extensions link .
Verify with qwen extensions list. Qwen Code uses the same /maestro:* command surface as Gemini CLI and reads QWEN.md as its context file.
Quick Start
Start a full orchestration with the runtime-specific entrypoint:
| Runtime | Example |
|---|---|
| Gemini CLI | /maestro:orchestrate Build a REST API for a task management system with user authentication |
| Claude Code | /orchestrate Build a REST API for a task management system with user authentication |
| Codex | $maestro:orchestrate Build a REST API for a task management system with user authentication |
| Qwen Code | /maestro:orchestrate Build a REST API for a task management system with user authentication |
Maestro classifies the task, chooses Express or Standard workflow, asks the required design questions, produces an implementation plan when needed, delegates execution to specialists, runs a quality gate, and archives the session state in docs/maestro/.
Examples
Usage examples: EXAMPLES.md. Gemini/Qwen forms shown:
- Full orchestration:
/maestro:orchestrate Build a REST API for a task management system with user authentication - Standalone review:
/maestro:review Review the staged changes for correctness, regressions, security, maintainability risk, and missing tests - Security audit:
/maestro:security-audit Audit authentication, authorization, data exposure, secret handling, and exploitability risks
Configuration
Defaults work; these settings tune behavior:
| Setting | Default | Purpose |
|---|---|---|
MAESTRO_STATE_DIR | docs/maestro | Session, plan, and archive output path |
MAESTRO_EXECUTION_MODE | ask | Choose parallel, sequential, or prompt |
MAESTRO_AUTO_ARCHIVE | true | Archive successful sessions automatically |
MAESTRO_MAX_RETRIES | 2 | Retry limit for failed phases |
MAESTRO_MAX_CONCURRENT | 0 | Parallel-agent cap, where 0 means no Maestro cap |
MAESTRO_DISABLED_AGENTS | unset | Specialists to exclude from assignment |
Commands
| Capability | Gemini CLI | Claude Code | Codex | Qwen Code |
|---|---|---|---|---|
| Orchestrate | /maestro:orchestrate | /orchestrate | $maestro:orchestrate | /maestro:orchestrate |
| Execute | /maestro:execute | /execute | $maestro:execute | /maestro:execute |
| Resume | /maestro:resume | /resume-session | $maestro:resume-session | /maestro:resume |
| Status | /maestro:status | /status | $maestro:status | /maestro:status |
| Archive | /maestro:archive | /archive | $maestro:archive | /maestro:archive |
| Review | /maestro:review | /review-code | $maestro:review-code | /maestro:review |
| Debug | /maestro:debug | /debug-workflow | $maestro:debug-workflow | /maestro:debug |
| Security Audit | /maestro:security-audit | /security-audit | $maestro:security-audit | /maestro:security-audit |
| Performance Check | /maestro:perf-check | /perf-check | $maestro:perf-check | /maestro:perf-check |
| SEO Audit | /maestro:seo-audit | /seo-audit | $maestro:seo-audit | /maestro:seo-audit |
| Accessibility Audit | /maestro:a11y-audit | /a11y-audit | $maestro:a11y-audit | /maestro:a11y-audit |
| Compliance Check | /maestro:compliance-check | /compliance-check | $maestro:compliance-check | /maestro:compliance-check |
For Claude Code and Codex, Maestro intentionally avoids bare skill names that collide with host commands. Use /review-code, /debug-workflow, and /resume-session in Claude Code, and $maestro:review-code, $maestro:debug-workflow, and $maestro:resume-session in Codex, so built-in /review, /debug, and /resume commands keep working.
Qwen Code uses the same /maestro:* command surface as Gemini CLI.
Workflow
- Express: For simple work. Maestro asks 1-2 clarifying questions, proposes a brief, delegates to one specialist, runs code review, and archives without a design doc or implementation plan.
- Standard: For medium and complex work. Maestro runs Design, Plan, Execute, and Complete phases with explicit approval gates, phased execution, and final review blocking on unresolved Critical or Major findings.
Outputs and Success Criteria
Maestro writes orchestration outputs under MAESTRO_STATE_DIR, usually docs/maestro/. Standard workflow outputs include active session state, design documents, implementation plans, phase reports, validation output, and archived records.
A successful run must have an approved plan when Standard workflow is used, completed phase reports, validation results for the changed surface, and no unresolved Critical or Major review findings. If a phase cannot complete, Maestro records the blocker and the next required action instead of silently continuing.
Security and Permissions
Maestro follows the host runtime's tool permissions, sandboxing, and confirmation model. It does not require committed secrets or long-lived credentials, and orchestration session state stays inside MAESTRO_STATE_DIR unless configured otherwise. Use MAESTRO_DISABLED_AGENTS to restrict specialists in sensitive repositories, and run $maestro:security-audit or the equivalent runtime command before adopting changes that touch authentication, authorization, secrets, or data exposure paths.
Documentation
- EXAMPLES.md for copyable usage scenarios across all runtimes
- docs/overview.md for the project model and generated structure
- docs/architecture.md for orchestration internals and architecture layout
- docs/usage.md for development workflow, settings, and command surfaces
- docs/flow.md for the orchestration workflow steps and hard gates
- docs/cicd.md for CI/CD pipeline workflows, release process, and Mermaid diagrams
- docs/runtime-gemini.md for Gemini runtime specifics
- docs/runtime-claude.md for Claude runtime specifics
- docs/runtime-codex.md for Codex runtime specifics
- docs/runtime-qwen.md for Qwen runtime specifics
Development and Release Validation
Canonical source lives under src/. Runtime files in agents/, commands/, hooks/, mcp/, policies/, claude/, plugins/maestro/, and qwen/ are generated; update src/ first, then regenerate.
npm ci
node scripts/generate.js
git diff --exit-code --name-only
node --test tests/unit/*.test.js tests/transforms/*.test.js tests/integration/*.test.js
npm run pack:verify
npm run release:artifacts
npm run release:verify-artifacts
Release validation creates dist/release/maestro-vX.Y.Z-extension.tar.gz. The archive is intentionally generic: it unpacks with gemini-extension.json, qwen-extension.json, .claude-plugin/marketplace.json, and .agents/plugins/marketplace.json at the root, plus the runtime payload needed by Gemini CLI, Qwen Code, Claude Code, and Codex.
Stable releases publish three aligned outputs:
- Git tag
vX.Y.Z - npm package
@josstei/maestro@X.Y.Z - GitHub Release asset
maestro-vX.Y.Z-extension.tar.gz
Codex plugin releases launch the MCP server through the matching npm package version. Hook installation is explicit via npm run install-hooks; package, pack, and publish flows do not install git hooks.
License
Apache-2.0
Files in the repo
- .agents
- .claude-plugin
- .githooks
- .github
- agents
- bin
- claude
- commands
- docs
- hooks
- mcp
- plugins
- policies
- qwen
- scripts
- src
- tests
- .codex
- .geminiignore
- .gitignore
- .npmignore
- .npmrc
- ARCHITECTURE.md
- CHANGELOG.md
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- EXAMPLES.md
- gemini-extension.json
- GEMINI.md
- justfile
- LICENSE
- OVERVIEW.md
- package-lock.json
- package.json
- qwen-extension.json
- QWEN.md
- README.md
- SECURITY.md
- USAGE.md
Discussion (0)
Ask about usage, or say what you built with itSign in to join the discussion.
No comments yet. Be the first to say what this is good for.
More plugins

Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.
Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Opinionated Oxlint rules for rejecting low-evidence TypeScript and JavaScript patterns
Teams-first Multi-agent orchestration for Claude Code