CLI Agent Orchestrator

Coordinate coding CLIs in isolated tmux sessions so a supervisor can delegate work in parallel or sequence.

Stars
★ 1.5k
Last updated
today
License
Apache-2.0
Primary language
Python

At a glance

How it runs
CLISelf-hosted serviceWeb app
Works with
Universal · cross-platformCodex · Claude Code
Cost
Free software; you pay for model usage
Setup effort
Medium · a few setup steps
You'll need
Python 3.10 or latertmux 3.3 or lateruvan authenticated supported provider CLIShell / CLILocal filesystemMCP Server
Typical use
A developer using several authenticated coding CLIs who wants a supervisor to distribute independent coding tasks to worker agents in one project.
Not a fit if
  • Solo developers who want one coding CLI, not multi-agent orchestration
  • Teams unwilling to install Python, tmux, uv and manage local sessions
Source review
65/100 · Some gaps

What does this agent do, and when should you use it?

CLI Agent Orchestrator (CAO) is a locally run coordinator for multiple coding CLIs. It starts a local cao-server and runs provider CLIs in isolated terminal sessions, while each agent retains its native authentication and capabilities. A supervisor agent uses CAO tools to coordinate worker agents on parallel or sequential work. Sessions can be observed from the attached launch terminal, the Web UI, or tmux, and controlled through the shell CLI, operations MCP server, or plugins. It fits development teams that already use coding CLIs and want to organize specialist-agent work within a project directory.

You start cao-server as the local service, then run cao launch --agents code_supervisor from the project directory to start a supervisor. CAO starts authenticated provider CLIs—including Kiro CLI, Claude Code, Codex CLI, Antigravity CLI, Hermes, Kimi CLI, GitHub Copilot CLI, OpenCode CLI, and Cursor CLI—in isolated terminal sessions. The supervisor delegates work to workers through CAO coordination tools and can run that work in parallel or sequence. Operators can observe sessions in the launch terminal, tmux, or the Web UI at http://localhost:9889, then stop one session with cao shutdown --session {session-name} or every CAO session with cao shutdown --all.

  1. A developer using several authenticated coding CLIs who wants a supervisor to distribute independent coding tasks to worker agents in one project.
  2. An engineering team coordinating parallel AI-DLC intents across repositories and isolated worktrees.
  3. A team that wants to preserve its existing Claude Code or Codex CLI authentication and native capabilities while adding a multi-agent coordination layer.
  4. A technical lead who needs to inspect and operate coding-agent sessions through a local Web UI, tmux, or an operations MCP server.

How do you install or deploy this agent?

Prerequisites: Python 3.10 or later, tmux 3.3 or later, uv, and at least one supported provider CLI authenticated before CAO is launched. Install the current main branch:

uv tool install git+https://github.com/awslabs/cli-agent-orchestrator.git@main --upgrade
cao --help

For a first run, install the built-in supervisor profile:

cao install code_supervisor

How do you use this agent?

In terminal A, start the local service:

cao-server

In terminal B, enter the project to be worked on and launch the supervisor:

cd /path/to/your/project
cao launch --agents code_supervisor

Without a provider override, this uses CAO's default Kiro CLI provider; other providers require their documented provider override. Open http://localhost:9889 for the Web UI. To end a named session:

cao shutdown --session {session-name}

What are this agent's strengths and limitations?

Pros
  • Uses a local cao-server and isolated tmux sessions while preserving each provider CLI as a native, authenticated process.
  • Explicitly supports multiple coding CLIs, including Claude Code, Codex CLI, Kiro CLI, GitHub Copilot CLI, OpenCode CLI, and Cursor CLI.
  • Offers several control planes: the launch terminal, Web UI, shell CLI, operations MCP server, and plugins.
Limitations
  • It requires Python, tmux, uv, and at least one supported provider CLI that has already been authenticated.
  • The default launch flow uses Kiro CLI; using another provider requires its provider-specific override.
  • It manages local terminal sessions, so operators must run cao-server and explicitly shut sessions down when work is complete.

How does this agent compare with similar options?

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
CLI Agent Orchestrator This agent 65 · Some gaps CLIFree + model costs ★ 1.5k today Python Codex · Claude Code
ClawCodex 51 · Major gaps CLIFree + model costs ★ 927 1d ago TypeScript ChatGPT · OpenAI API · Claude API
agentglass 72 · Some gaps Desktop appFree + model costs ★ 347 1d ago TypeScript Codex · Claude Code
Codemini CLI 71 · Some gaps CLIFree + model costs ★ 31 1d ago JavaScript OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
65/ 100 5-point scale 3.3 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 4 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 18/29
Reliability 9/14
Adaptability 12/18
Convention 12/18
Effectiveness 9/13
Verifiability 5/8
Why each dimension lost points
Trust18 / 29 · 3.1/5

Evidence shows role-based defaults, tool restrictions, user confirmation prompts, data flow documentation, sensitive file protection, dependency security scanning, external effect controls, rollback mechanisms, and source attribution. Deductions: rollback only mentions update command without detail; source attribution relies on repo metadata without verified publisher identity.

Reliability9 / 14 · 3.2/5

Evidence shows self-consistent documentation, dependency locking, and error handling. Deductions: dependency availability not fully verified; failure messages lack concrete examples.

Adaptability12 / 18 · 3.3/5

Evidence shows developer audience, multiple scenarios, clear capability boundaries, precise triggers, and detailed environment requirements. Deductions: no specific examples or FAQ.

Convention12 / 18 · 3.3/5

Evidence shows clear documentation structure, install instructions, naming stability, examples and FAQ, known limitations, license, versioning, and maintenance responsibility. Deductions: versioning lacks changelog; maintenance responsibility not explicit.

Effectiveness9 / 13 · 3.5/5

Evidence shows usable output, high marginal value, and reasonable cost-benefit. Deductions: no specific cost data.

Verifiability5 / 8 · 3.1/5

Evidence shows traceable claims, cross-source corroboration, and separation of facts and inferences. Deductions: no specific verification methods.

Risks and how to mitigate them
  • Publisher identity unverified; proceed with caution.
  • Rollback mechanism unclear; backup before updating.
  • Dependency security relies on CI; run scans locally.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 38527f47515d New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v2.5.3
    Release notes excerpt
    > Note: v2.5.1 and v2.5.2 were tagged on GitHub but never published to PyPI, because the package version was not bumped for them. 2.5.3 is the first PyPI release since 2.5.0, so the changes below cover everything since v2.5.0. What's Changed * fix(kiro): drop --legacy-ui, which silently disables every MCP tool by @gutosantos82 in https://github.com/awslabs/cli-agent-orchestrator/pull/691 * test: centralize contributor suite selection by @vinhnguyenthanhdn in https://github.com/awslabs/cli-agent-orchestrator/pull/687 …
    View on GitHub ↗
  2. v2.5.2
    Release notes excerpt
    What's Changed * fix(mcp): enforce a profile's tools allowlist for assign and handoff by @harshitwandhare in https://github.com/awslabs/cli-agent-orchestrator/pull/769 * cao fleet and cao worker: operate a remote CAO cluster from the CLI by @guojing1217 in https://github.com/awslabs/cli-agent-orchestrator/pull/770 * fix(grok): classify the weekly-limit picker as ERROR instead of stale PROCESSING by @mastash3ff in https://github.com/awslabs/cli-agent-orchestrator/pull/764 …
    View on GitHub ↗
  3. v2.5.1
    Release notes excerpt
    What's Changed * fix(kiro): drop --legacy-ui, which silently disables every MCP tool by @gutosantos82 in https://github.com/awslabs/cli-agent-orchestrator/pull/691 * test: centralize contributor suite selection by @vinhnguyenthanhdn in https://github.com/awslabs/cli-agent-orchestrator/pull/687 * fix(sessions): batch the list_sessions terminal read and specify its ownership order (#629) by @tedswinyar in https://github.com/awslabs/cli-agent-orchestrator/pull/703 …
    View on GitHub ↗

FAQ

Must I use Kiro CLI?
No. Unqualified commands default to Kiro CLI, but CAO also lists Claude Code, Codex CLI, and other supported providers.
Does CAO replace provider CLI authentication?
No. A provider CLI must be authenticated before CAO is launched, and agents continue to run as native CLI processes.
How can I observe active agents?
Use the attached launch terminal, the Web UI at http://localhost:9889, or attach to the session through tmux.
How do I stop a run?
Use cao shutdown --session {session-name} for one named session, or cao shutdown --all for every CAO session.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents