maestro-orchestrate

jossteiApache-2.0活跃维护

多智能体编排平台,把 Gemini CLI、Claude Code、Codex 等编码助手组织成 39 个专职子代理并行干活,内置代码审查、调试、安全与合规检查。

Multi-agent orchestration platform for Gemini CLI, Claude Code, Codex, and Qwen Code — 39 specialists, parallel subagents, persistent sessions, and built-in code review, debugging, security, SEO, accessibility, and compliance tools

v1.6.4发布于 2026-04-30 06:25 UTC488star +2 / 7 天38fork同步于 2026-11-10 17:59 UTC

怎么上手

由 README 提炼,执行前请确认
agy plugin install https://github.com/josstei/maestro-orchestrate/tree/main/antigravity
claude plugin marketplace add josstei/maestro-orchestrate
硬件要求按 README 说明

README 未说明硬件要求,仅要求 Node.js 20+ 用于 MCP 服务器和辅助脚本,并需先安装一个受支持的运行时(Antigravity、Claude Code、Codex 或 Qwen Code)

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

面向 Gemini CLI、Claude Code、Codex 和 Qwen Code 的多智能体开发编排平台,用 39 个专家智能体分工执行任务

多智能体编排平台,把 Gemini CLI、Claude Code、Codex 等编码助手组织成 39 个专职子代理并行干活,内置代码审查、调试、安全与合规检查。

核心能力

  • 内置 39 个专家智能体,按任务类型自动分配
  • Express 与四阶段 Standard 两套工作流,按复杂度自动选择
  • 支持并行子智能体与持久化会话状态,可断点续跑
  • 内置代码审查、调试、安全、性能、SEO、无障碍与合规检查入口
  • 同一份 src/ 源码生成 Antigravity、Claude Code、Codex、Qwen Code 四套运行时

容易踩的坑

安装插件后必须重启 agy,否则 Antigravity 不会发现新插件;Codex 本地开发时路径必须以 ./、../、/ 或 ~/ 开头,否则会被当作 GitHub 仓库;Claude Code 和 Codex 下审查、调试、续跑命令改名为 /review-code、/debug-workflow、/resume-session,避免与宿主内置命令冲突

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v1.6.4
  1. v1.6.4最新正式版2026-04-30 · 2026-04-30 06:25 UTC

    Added

    • Maestro cheatsheet: added an English quick-reference guide covering supported runtimes, common commands, workflow concepts, and suggested reading order.

    Changed

    • npm package identity: renamed the planned npm package to @josstei/maestro, added [email protected] to public author metadata, and moved the stable release publish path into GitHub Actions with npm token authentication.

    Fixed

    • Stable npm release recovery: Release now uses NPM_TOKEN for stable publishes, uses verified Git tag lookups, supports manual recovery from an existing vX.Y.Z tag and target SHA, and enforces a stable-only latest dist-tag through the idempotent npm publish helper. Prerelease publishes defer stale latest repair when no stable version exists instead of attempting to delete npm's latest tag.
    • Codex plugin MCP server fails to start: corrected npx args in plugins/maestro/.mcp.json — added -p/--package flag so maestro-mcp-server is resolved as the binary name rather than an argument to the package's default binary.
    • Release metadata drift: runtime manifests, marketplace entries, detached payload versions, and Codex MCP package specs are now generated from package.json so stable and prerelease packages stay self-consistent.
  2. v1.6.32026-04-21 · 2026-04-21 23:45 UTC
    查看更新说明

    Added

    • 5 new MCP tools (Session pack 5 → 10; total pack count 12 → 17):
      • enter_design_gate, record_design_approval, get_design_gate_status — server-side design-gate lifecycle; create_session now enforces approval before session creation
      • scan_phase_changes, reconcile_phase — post-hoc phase reconciliation when an agent's actual file manifest diverges from the plan
    • 17 additional specialist agents — Expanded the roster from 22 to 39 specialists:
      • ML / AI: ml-engineer, mlops-engineer, prompt-engineer
      • Ops / reliability: site-reliability-engineer, observability-engineer, release-manager
      • Platform: cloud-architect, platform-engineer, solutions-architect, integration-engineer
      • Data / mobile: database-administrator, mobile-engineer
      • Mainframe / legacy: cobol-engineer, db2-dba, zos-sysprog, hlasm-assembler-specialist, ibm-i-specialist
    • maestro-mcp-server bin (bin/maestro-mcp-server.js) — Thin Node entrypoint declared in package.json bin; sets MAESTRO_RUNTIME=codex and MAESTRO_EXTENSION_PATH, then delegates to src/mcp/maestro-server.js. Invoked by Codex via npx.
    • Root-level Codex marketplace manifest (.agents/plugins/marketplace.json) — Makes the repo a valid marketplace target for codex marketplace add.
    • Declarative requiresWorkspace tool contract — Tool schemas carry requiresWorkspace: true when they depend on an initialized workspace; the registry captures the metadata and the dispatcher enforces it before handler invocation, returning a typed WORKSPACE_NOT_INITIALIZED error that names initialize_workspace in the recovery message.
    • Workspace marker file module — initialize_workspace now writes a canonical marker and requireExplicitWorkspaceRoot rejects extension-cache paths.
    • Content variant for design-gate and implementation-plan submission — record_design_approval accepts design_document_content + design_document_filename; create_session accepts implementation_plan_content + implementation_plan_filename. Bytes are materialized atomically into <state_dir>/plans/ by the server. Motivation: Gemini Plan Mode resolves relative paths against ~/.gemini/tmp/<uuid>/, so a path the model hands back to MCP never resolves to the same file the server sees — the content variant bypasses runtime-specific path resolution.
    • Shared plan-phase schema contract (src/mcp/contracts/plan-schema.js) — Single source of truth for phase shape consumed by both validate_plan and create_session. phase.files is recognized as the planning-time canonical file manifest and is checked by file_overlap and agent_capability_mismatch validators.
    • downstream-context contract module (src/mcp/contracts/downstream-context.js) — Canonical handoff shape: accepts string or array, handles 'none'/'n/a'/empty-string sentinels, and embeds a human-readable shape description in the HANDOFF_INCOMPLETE error.
    • Runtime delegation.constraints object — Per-runtime machine-readable constraints exposed via get_runtime_context. Codex declares deferred results and fork-incompatibility with agent_type/model/reasoning_effort; Claude, Gemini, and Qwen declare synchronous dispatch.
    • Blocker parser for child-agent question surfacing — Agents emit a Blockers: section in their handoff report; the orchestrator surfaces unresolved blockers back to the user.
    • workspace_suggestion in get_runtime_context — Server surfaces a recommended workspace path for runtimes that cannot auto-resolve one.
    • Per-entry runtimeNames — Each entry-point registry entry owns its per-runtime rename declaratively; replaces the centralized ENTRY_POINT_NAME_OVERRIDES map.
    • Host-reserved command protection extended to Claude — Entry-point generation now rejects names that would shadow Claude's built-in slash commands (review, debug, resume). Previously only Codex was guarded.
  3. v1.6.22026-04-15 · 2026-04-15 05:57 UTC
    查看更新说明

    Added

    • Qwen Code runtime support (#26) — Fourth runtime target with hook adapter, extension manifest (qwen-extension.json), context file (QWEN.md), 22 agent stubs, and hooks.json for SubagentStart/SubagentStop lifecycle events
    • getExitCode(result) adapter contract (#42) — Each hook adapter now owns its exit code semantics; shared exit-codes.js constants (EXIT_SUCCESS, EXIT_BLOCK) verified against Gemini CLI, Claude Code, and Codex CLI source
    • npm publishing workflows — Nightly (cron), preview (PR label), RC (release PR), and stable release pipelines with NPM_TOKEN gating
    • Community standards — Code of Conduct (Contributor Covenant v2.1), Contributing Guide, Security Policy, issue/PR templates
    • CI/CD pipeline documentation (docs/cicd.md) — Mermaid workflow diagrams, job breakdowns, release pipeline chain, and cross-references from existing docs
    • lib/ foundation layer — 6 shared modules (errors, io, naming, frontmatter, validation, discovery) extracted from duplicated implementations across the codebase
    • Exhaustive test coverage — 121 tests across 22 files wired into CI; previously only transforms and integration tests ran in CI
    • Build-time auto-discovered registries — agent-registry.json, resource-registry.json, hook-registry.json scanned at generate time, replacing hardcoded allowlists

    Changed

    • Thin multi-runtime entrypoints — Replaced generated canonical-source.js, MCP entrypoint, hook-runner, and adapter copies with hand-authored wrappers that default MAESTRO_RUNTIME per runtime and use bounded repo-first / bundled-fallback resolution for detached Claude and Codex installs
    • Generator architecture (src/manifest.js, scripts/generate.js) — Simplified the manifest to 2 discovery rules, reduced the generation-time transform registry from 10 entries to 4, and added an explicit detached-payload pack step for claude/src/ and plugins/maestro/src/
    • Generator decomposed — 807-line monolith split into focused modules: file-writer, manifest-expander, stale-pruner, payload-builder, registry-scanner, entry-point-expander
    • Codex plugin packaging — Removed unused plugins/maestro/agents/ stubs; Codex now relies on skills, MCP tools, and get_agent for methodology instead of plugin-level agent files
    • Centralized policy rules — Claude policy-enforcer imports from canonical src/core/policy-rules.js with bundled fallback; deduplicated readBoundedStdin into core/stdin-reader.js
    • Lazy-loaded runtime configs — Runtime configs loaded on demand with per-runtime detached payload filtering
    • Minimum Node.js version — Raised to 20 (Node 18 EOL); engines field declared in package.json
    • Package renamed — From @maestro-orchestrator/gemini-extension to @maestro-orchestrator/maestro
    • Runtime documentation — Updated Gemini, Claude, and Codex runtime docs to describe thin entrypoints plus detached payloads rather than generated helper copies
    • Documentation aligned — All docs updated to match post-consolidation codebase state

    Fixed

    • Codex public skill naming collisions — Renamed the public Codex skills to $maestro:review-code, $maestro:debug-workflow, and $maestro:resume-session so installing Maestro does not shadow or break Codex's built-in /review, /debug, and /resume commands
    • LLM string-to-integer coercion — Phase IDs sent as strings by LLMs in transition_phase now parsed correctly before phase lookups
  4. v1.6.12026-04-10 · 2026-04-10 06:14 UTC
    查看更新说明

    Added

    • Self-contained Claude runtime payload (src/manifest.js) — Added 'claude' to the self-contained runtime payload manifest rule (already used by Codex) so the full src/ tree is bundled into claude/src/; canonical-source resolution now succeeds from plugin caches outside the repo tree
    • withIsolatedClaudePlugin test helper (tests/integration/helpers.js) — Copies the generated claude/ directory into an isolated temp directory for testing plugin behavior outside the repo tree; mirrors the existing withIsolatedCodexPlugin helper
    • Isolated Claude bundle integration tests — Hook entrypoint boot test, MCP server startup test, MCP tool listing and content serving tests, all running against an isolated plugin bundle

    Fixed

    • Claude plugin canonical-source resolution from plugin cache — requireFromCanonicalSrc(__dirname) in hook scripts (session-start.js, before-agent.js, session-end.js) and MCP entry-point walked up from ~/.claude/plugins/cache/ looking for src/mcp/maestro-server.js but never found it because the Claude runtime did not bundle src/; resolved by the self-contained payload rule above
  5. v1.6.02026-04-10 · 2026-04-10 05:51 UTC
    查看更新说明

    Added

    • Codex runtime target (plugins/maestro/) — Complete third runtime for OpenAI Codex with plugin manifest, 22 agent stubs, 19 skills, MCP entry-point, and runtime guide; agents use kebab-case names and spawn_agent(...) delegation
    • Canonical source architecture — Single src/ tree serves all three runtimes (Gemini, Claude, Codex) via requireFromCanonicalSrc() dynamic resolution, eliminating verbatim lib copies and runtime-specific source directories
    • get_agent MCP tool — Returns agent methodology content by name, enabling runtime access to agent definitions without filesystem reads
    • get_runtime_context MCP tool — Returns runtime-specific configuration (delegation patterns, tool mappings, environment variables) for the active platform
    • Entry-point generation system (src/entry-points/) — Registry of 9 entry-point commands with 3 per-runtime templates (Gemini TOML, Claude SKILL.md, Codex SKILL.md); entry-point commands are now generated rather than hand-maintained
    • 4 new transforms — agent-stub (generates lightweight stubs that load methodology via MCP), inline-runtime (injects runtime-specific content blocks), skill-discovery-stub (generates skill stubs that load content via MCP), copy (verbatim file copy)
    • canonical-source.js utility (src/core/) — requireFromCanonicalSrc() resolves the canonical src/ directory from any runtime entry-point by walking parent directories; deployed as thin shims in each runtime's mcp/ and scripts/ directories
    • project-root-resolver.js rewrite (src/core/) — Multi-strategy workspace resolution supporting all three runtimes: env vars (MAESTRO_WORKSPACE_PATH, CLAUDE_PROJECT_DIR), git root detection, and cwd fallback
    • Justfile — Development commands: just test, just check, just test-transforms, just test-integration; replaces ad-hoc npm scripts
    • Documentation suite (docs/) — 7 focused docs replacing old plans/specs: overview.md, architecture.md, flow.md, usage.md, runtime-gemini.md, runtime-claude.md, runtime-codex.md
    • 27 new test files — MCP handler tests (content provider, runtime context, kernel, session pack, workspace pack, content pack, pack composition), transform tests (copy, index, project-root-resolver), integration tests (entry-point templates, hook entry-points, glob manifest, source of truth, MCP server bundle behavior, MCP server entry-point, MCP stdio client helper)
    • CI release workflow (.github/workflows/release.yml) — Automated GitHub releases from version tags using CHANGELOG.md content

    Changed

    • MCP server decomposed — Monolithic ~38k-line bundles (mcp/maestro-server.js, claude/mcp/maestro-server.js) replaced by ~14-line entry-points delegating to modular src/mcp/ tree: 8 handlers, 3 tool-packs (workspace, session, content), core modules (server creation, tool registry, recovery hints), and utilities (extension root resolution)
    • Generator rewrite (scripts/generate.js) — Updated to support manifest expansion with glob patterns, transform pipeline across three runtimes, entry-point rendering from templates, platform file mapping, and stale file pruning
    • src/manifest.js expanded — Glob patterns, per-runtime platform file mappings, entry-point generation rules, and self-contained Codex src/ payload rules
    • Codex skill names — Dropped maestro- prefix from all skill names; skills use plugin namespace directly ($maestro:orchestrate instead of $maestro:maestro-orchestrate)
    • Shared skills restructured — All 7 methodology skills (delegation, design-dialogue, execution, implementation-planning, session-management, code-review, validation) updated to load protocols and references via get_skill_content MCP tool instead of filesystem reads
    • Agent methodologies — All 22 agents updated with explicit tool access declarations in frontmatter; Claude and Codex runtimes serve methodology content via MCP at runtime ra

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Maestro

    Version License Antigravity Claude Code Codex Qwen Code

    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 Antigravity, Claude Code, Codex, and Qwen Code.

    Runtime Targets

    RuntimeLocationPublic SurfaceNotes
    Antigravityantigravity//maestro:*Plugin skills, kebab-case subagents run with invoke_subagent, SessionStart and run_command policy hooks
    Claude Codeclaude//orchestrate, /review-code, ...Kebab-case agents with maestro: subagent names
    Codexplugins/maestro/$maestro:*Plugin skills, spawn_agent, no runtime hooks
    Qwen Coderepo root + qwen/hooks.json/maestro:*Snake-case agents, TOML commands, QWEN.md context file, SubagentStart/SubagentStop hooks

    Getting Started

    Prerequisites

    • One supported runtime: Antigravity (the agy CLI or the Antigravity app), Claude Code, Codex, or Qwen Code
    • Node.js 20+ for the MCP server and helper scripts

    Installation

    Antigravity
    agy plugin install https://github.com/josstei/maestro-orchestrate/tree/main/antigravity
    

    Restart agy afterwards: Antigravity discovers a newly installed plugin only on startup. Verify with agy plugin list.

    Local development (link the plugin directory, then restart agy; a linked plugin loads but is not listed by agy plugin list):

    git clone https://github.com/josstei/maestro-orchestrate
    mkdir -p ~/.gemini/config/plugins
    ln -s "$PWD/maestro-orchestrate/antigravity" ~/.gemini/config/plugins/maestro
    

    More Antigravity-specific setup and runtime details live in antigravity/README.md and docs/runtime-antigravity.md.

    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 reads QWEN.md as its context file and loads the /maestro:* commands from commands/maestro/*.toml.

    Quick Start

    Start a full orchestration with the runtime-specific entrypoint:

    RuntimeExample
    Antigravity/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. Qwen Code 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:

    SettingDefaultPurpose
    MAESTRO_STATE_DIRdocs/maestroSession, plan, and archive output path
    MAESTRO_EXECUTION_MODEaskChoose parallel, sequential, or prompt
    MAESTRO_VALIDATION_STRICTNESSnormalPost-phase validation strictness (strict, normal, or lenient)
    MAESTRO_AUTO_ARCHIVEtrueArchive successful sessions automatically
    MAESTRO_MAX_RETRIES2Retry limit for failed phases
    MAESTRO_MAX_CONCURRENT0Parallel-agent cap, where 0 means no Maestro cap
    MAESTRO_DISABLED_AGENTSunsetSpecialists to exclude from assignment

    Commands

    CapabilityAntigravityClaude CodeCodexQwen Code
    Orchestrate/maestro:orchestrate/orchestrate$maestro:orchestrate/maestro:orchestrate
    Execute/maestro:execute/execute$maestro:execute/maestro:execute
    Resume/maestro:resume-session/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-code/review-code$maestro:review-code/maestro:review
    Debug/maestro:debug-workflow/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.

    Antigravity has a built-in /resume, so it uses the same remapped names under its plugin namespace: /maestro:review-code, /maestro:debug-workflow, and /maestro:resume-session.

    Qwen Code does not remap any entry point; it keeps /maestro:review, /maestro:debug, and /maestro:resume.

    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

    Development and Release Validation

    Canonical source lives under src/. The generator writes the agent stubs, commands, skills, manifests, hook registrations, policy pack, and detached src/ payloads under agents/, commands/, policies/, antigravity/, claude/, plugins/maestro/, and qwen/; update src/ first, then regenerate. A few runtime files are maintained by hand, mainly the thin MCP-server and hook-runner shims, the READMEs, and QWEN.md (CONTRIBUTING.md lists them).

    npm ci
    node scripts/generate.js
    git diff --exit-code --name-only
    npm test
    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 qwen-extension.json, .claude-plugin/marketplace.json, and .agents/plugins/marketplace.json at the root, plus the runtime payloads needed by Antigravity (antigravity/), Claude Code, Codex, and Qwen Code.

    Stable releases publish three aligned outputs:

    • Git tag vX.Y.Z
    • npm package @josstei/[email protected]
    • GitHub Release asset maestro-vX.Y.Z-extension.tar.gz

    Codex plugin releases launch the MCP server through the matching npm package version. The Antigravity plugin is self-contained: an installed copy runs the MCP server and hooks from its bundled antigravity/src/. Hook installation is explicit via npm run install-hooks; package, pack, and publish flows do not install git hooks.

    License

    Apache-2.0