CLI Agent Orchestrator is a tool that coordinates multiple AI coding command-line programs by running them as separate workers in isolated terminal sessions. A supervisor uses it to delegate software tasks to specialist agents in parallel or in sequence while the workers retain their normal command-line capabilities. The catalogue skills operate this orchestration workflow.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add awslabs/cli-agent-orchestrator --skill cao-supervisor-protocolsgit clone --depth 1 https://github.com/awslabs/cli-agent-orchestratorWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/awslabs/cli-agent-orchestrator/cao-supervisor-protocols)<a href="https://agentmods.dev/skills/awslabs/cli-agent-orchestrator/cao-supervisor-protocols"><img src="https://agentmods.dev/badge/skills/awslabs/cli-agent-orchestrator/cao-supervisor-protocols/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/awslabs/cli-agent-orchestrator/cao-supervisor-protocols"><img src="https://agentmods.dev/badge/skills/awslabs/cli-agent-orchestrator/cao-supervisor-protocols.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00099 | $0.01528 |
| Opus 5.5 | $0.00040 | $0.00611 |
| Sonnet 5.5 | $0.00020 | $0.00306 |
| Haiku 4.5 | $0.00010 | $0.00153 |
Grade A, and why
cao-supervisor-protocols scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CAO Supervisor Protocols
Use this skill when supervising worker agents through CLI Agent Orchestrator.
This skill covers how supervisors should dispatch work, decide between assign and handoff, and receive worker results without blocking inbox delivery.
Core MCP Tools
From cao-mcp-server, supervisors orchestrate work with:
assign(agent_profile, message)for asynchronous work that returns immediatelyhandoff(agent_profile, message)for synchronous work that blocks until the worker finishessend_message(message, receiver_id=None)for direct messages —receiver_iddefaults to the terminal that created yours via handoff/assignanswer_user_prompt(terminal_id, answer)for answering a Hermes worker that reportswaiting_user_answer
Your own terminal ID is available in the CAO_TERMINAL_ID environment variable. CAO appends it to assigned task messages and records it on worker terminals automatically, so you rarely need to handle it yourself.
Do It Directly or Delegate
Delegating has a fixed cost: routing the message, starting a worker, and the worker's own verification. Choose by the shape of the task:
- Do a small, fully specified change yourself when you can run its checks. Example: a one-line dependency floor plus a relock.
- Delegate when parallel work saves wall-clock time, when the task needs a specialist profile, or when an independent review is worth the wait.
Your agent profile's rules take priority over this heuristic: code_supervisor, for instance, always delegates coding and never writes code itself.
Measured on #1119: the same dependency-floor change took 1m 18s done directly and about 2m 57s routed through a conductor to a developer seat. Both produced byte-identical lockfiles. The delegated result had the better code comment, which is the value an independent pass adds.
Gotchas
| Mistake | Fix |
|---|---|
Keeping the terminal busy after assign — polling in a loop, or running sleep/echo to wait. |
Inbox messages are delivered when your terminal goes idle. Dispatch everything first, then end the turn. |
Answering a Hermes worker that reports waiting_user_answer with assign, handoff or send_message. |
Use answer_user_prompt(terminal_id, answer) with the exact selection to submit, such as 1 or o. |
| Doing a small coding task yourself because the do-or-delegate heuristic allows it, on a profile that forbids it. | Your agent profile's rules win. code_supervisor, for instance, always delegates coding. |
Treating a send_message callback as proof the work landed, when the worker wrote files. |
Ask workers for the deliverable up front, and for absolute paths in the callback message. |
| Assuming you must hand-write callback instructions into every assigned message. | CAO appends your terminal ID and records you as the worker's caller automatically. An explicit callback ID is optional emphasis; it is required only when CAO_ENABLE_SENDER_ID_INJECTION=false. |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago Changed · +22 lines · +74 tokens per session 05052533f05f
- 2mo ago First seen · 91 lines · 25 tokens per session scan A 27fea276b2c5
cao-supervisor-protocols is a skill published in the GitHub repository awslabs/cli-agent-orchestrator (1,526 stars, last pushed today), licensed Apache-2.0. It adds 99 tokens to every session and 1,528 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
cao-supervisor-protocols compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| cao-supervisor-protocolsawslabs/cli-agent-orchestrator | Skill | 1.5k | today | Apache-2.0 | A | 99 | Claude Code |
| tool-selectionlakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 53 | Claude Code |
| reviewlakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 18 | Claude Code |
| session-sendlakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 15 | Claude Code |
| review-handlinglakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 38 | Claude Code |
| runlakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 19 | Claude Code |
| session-logslakpriya1s/agent-rack | Skill | 2 | 3mo ago | MIT | A | 19 | Claude Code |