README.md

July 29, 2026 · View on GitHub

MCO — ten agent paths converging through a monumental M beneath a starry sky

MCO

Orchestrate AI coding agents. Compare perspectives. Act with confidence.

npm version npm downloads GitHub stars MIT License Python 3.10+

English · 简体中文

MCO is a lightweight, CLI-first orchestration layer for AI coding agents. Give one task to the agents and models you choose, run them in parallel, and compare their raw answers before you act.

Use MCO for code review, implementation, architecture analysis, CI checks, and any workflow where one model's blind spots matter.

It works from a terminal or from another coding agent such as Claude Code, Codex, Cursor, Copilot, Pi, or OpenClaw.

MCO is actively maintained. For a browser workbench with persistent agent identity and a shared task graph, see Hive.

Quick start

Install the CLI and its bundled mco-cli Skill:

npx @tt-a1i/mco@latest install

Check the agents available on your machine:

mco doctor --json

Run a read-only multi-agent review:

mco review \
  --repo . \
  --prompt "Review this repository for high-risk bugs." \
  --providers claude,codex,pi

Run a coding task with workspace write access:

mco run \
  --repo . \
  --prompt "Implement the requested change and run the relevant tests." \
  --providers codex,pi \
  --execution-mode write

MCO never infers a provider/model team from detected binaries. If neither --providers nor --agent is supplied, a top-level providers config entry is used as the saved default; without one, the team must be selected explicitly. A calling agent should still show and confirm the resolved provider/model team with the user before dispatch.

Why MCO

One agent gives you one perspective. MCO turns selected agents into a review or execution team:

  1. Choose — explicitly select the agents for the task.
  2. Dispatch — run them in parallel, chain their work, or divide the scope.
  3. Compare — retain each invocation's complete raw answer and operational status.
  4. Decide — inspect evidence, disagreements, and failures before acting.

MCO keeps answer text opaque. It does not turn natural-language output into findings, severity, confidence, consensus, or an automatic decision.

For explicit review coordination, --perspectives-json adds a Provider-specific prompt focus. --divide files excludes ignored/local/build directories and round-robins the remaining sorted repository files without overlap, while --divide dimensions rotates review lenses in declaration order without changing target paths. These choices are visible in dry-run and arrange only the prompt or scope; the returned invocation answers remain raw.

Built-in providers

ProviderCLIProvider ID
Claude Codeclaudeclaude
Codex CLIcodexcodex
Gemini CLIgeminigemini
OpenCodeopencodeopencode
Qwen Codeqwenqwen
GitHub Copilot CLIcopilotcopilot
Hermeshermeshermes
Pipipi
Grok Buildgrokgrok
Cursor CLIcursor / agentcursor

Each provider CLI remains responsible for its own installation, authentication, model access, and native sandbox behavior.

Common workflows

GoalCommand
General multi-agent taskmco run --providers claude,codex --prompt "..."
Thin raw-answer code reviewmco review --providers claude,codex --prompt "..."
Compare multiple modelsmco run --agent fast=pi:model-a --agent careful=pi:model-b --prompt "..."
Preview without executionmco review --providers claude,pi --dry-run --json
Live terminal progressmco review --providers claude,codex --stream live
Machine-readable eventsmco review --providers claude,codex --stream jsonl
File-backed chainmco run --agent first=pi:model-a --agent next=pi:model-b --chain --result-mode artifact
Debate and synthesismco review --providers claude,codex --debate --synthesize --result-mode both
Discover provider modelsmco agent models --providers codex,pi --json

Pin models for one run without changing provider CLI defaults:

mco review \
  --providers codex,pi \
  --provider-models-json '{"codex":"gpt-5.4","pi":{"provider":"seal","model":"deepseek-v4-pro"}}' \
  --prompt "Review this repository for bugs."

Permissions and safety

MCO translates one execution profile into each provider's native flags:

ModeIntended useDefault
read_onlyInspect and review without workspace mutationmco review
writeCreate and edit workspace filesmco run
yoloUse the provider's broadest bypass profileExplicit opt-in only

Important boundaries:

  • --allow-paths validates MCO's requested scope; it is not an operating-system sandbox.
  • Provider sandbox strength depends on the underlying CLI.
  • Hermes oneshot bypasses approvals and therefore requires explicit --execution-mode yolo.
  • ACP terminal access is a trusted-agent capability. Use isolation for untrusted agents or prompts.
  • MCO does not create or manage worktrees. If the user selects parallel writers, partition ownership with non-overlapping --target-paths and warn about edit conflicts.

See Provider and permission reference for the complete mapping.

Use MCO from another agent

MCO's CLI is self-describing. A calling agent can read mco -h, resolve saved defaults, confirm the provider/model team with the user, preview the policy, and then execute.

“Use MCO to run a security review with Claude and Codex, and an architecture review with Pi.”

The installer and runtime use two different selections:

  • Installer --agent chooses which calling agents receive the MCO Skill.
  • Runtime --providers, saved providers config, or runtime --agent declarations choose the task invocations.
npx @tt-a1i/mco@latest install --agent codex --agent claude-code --yes
mco doctor --skill-health --json

How it works

You or a calling agent


  mco run / review

        ├── Claude ──┐
        ├── Codex    │
        ├── Gemini   ├──► raw answers / file-backed stages ──► output
        ├── Pi       │
        └── ...   ───┘

                       text · JSON · JSONL · Markdown artifacts

Provider processes are isolated behind a shared adapter contract: detect, run, poll, cancel, and transport decode. One invocation failure does not discard successful provider answers.

Documentation

TopicGuide
Installation, first run, and common workflowsWorkflow guide
Providers, models, and permission mappingsProvider reference
CLI flags, outputs, artifacts, and exit codesCLI reference
Config files and custom agentsConfiguration reference
Machine-readable error contractError contract
Invocation and artifact contractInvocation contract
Provider permission contractPermission contract
Release processRELEASING.md
Release historyCHANGELOG.md

Run mco <command> --help for the authoritative option list installed with your version.

Development

git clone https://github.com/mco-org/mco.git
cd mco
python3 -m pip install -e .
python3 -m unittest discover -s tests -p 'test_*.py'
npm test

License

MIT — see LICENSE.