Reference

The muon CLI

Everything the desktop app and TUI do is reachable from muon. The CLI auto-starts the embedded local brain on first use — there is nothing to boot by hand. Run muon <command> --help for the full, current option list.

Global flags

--api-base <url> overrides the local brain's API base; --api-token <token> (or MUON_API_TOKEN) supplies a bearer token. Leave both unset for the normal local flow — the CLI discovers a running brain itself, or spawns one.

Set up and sign in

muon setup [--vendors <list>] [--all] [--repair] [--observer] [--check] [--yes] [--json] [--prompt] [--attach] [--force] [--no-interactive]

Sign in, register MUON's MCP server into your agent CLIs, and start the brain. With no flags in a terminal it runs the guided flow; --yes takes safe defaults without prompts and never installs software or attaches a seat. --check is a read-only prerequisite, registration and brain check; --repair re-applies the agent CLIs you already chose; --observer registers the read-only toolset; --prompt prints the agent setup prompt. MUON remembers your choice so a drifted config can be repaired without re-learning it.

muon login / muon logout

Sign in to (or out of) MUON. A distributed build verifies your account before most commands will run; a checkout of this repo is never gated.

muon onboard

Guided first run: per-vendor installed/authenticated readiness plus the exact fix for any gap.

muon quickstart [--workspace <dir>]

Seed and dispatch a tiny, safe, additive sample task.

Chat with the orchestrator

muon chat [--workspace <dir>] [--chat-id <id>] [--message <text>] [--model <id>]

Talk to the super-orchestrator: it plans, dispatches the fleet and reports — gates stay yours. With no --message it opens an interactive REPL (/quit to exit); with one it sends and exits, so it scripts cleanly. --archive soft-archives the chat (history and audit trail survive); --cancel stops every queued or running job in the chat.

Dispatch control

muon dispatch --task-id <id> --vendor <vendor> --brief <text> [--model <id>] [--role <role>] [--json]

Send one agent to work on an existing task. It runs in that task's own worktree and prints the job id with the muon dispatch status --job-id <id> line to follow it; --json prints the raw job record instead. With no --model, MUON picks its model for the role unless the agent's settings or the task's harness name one; a task that a routine runs uses only its routine's model, or none if the routine pins none. --model default skips MUON's pick: the model named in the agent's settings or the task's harness applies, and if neither names one, the agent's own default does.

muon dispatch status [--job-id <id>] [--chat-id <id>] [--json]

One job's status plus its crew budget, or the list of active jobs.

muon dispatch wait --job-id <id> [--timeout <s>] [--interval <s>] [--json]

Block until one job finishes, polling its status every --interval seconds (default 1) for at most --timeout seconds (default 300). The wait never exceeds --timeout; a status read still in flight at the deadline is abandoned. Prints the job's final report; --json prints the job record instead, or nothing if no status was read before the deadline. Exits 0 when the job is done, 1 when it failed or was interrupted, and 124 on timeout, so it scripts cleanly.

muon dispatch interrupt --job-id <id>

The crew's kill switch — interrupt one running job without killing the runner.

muon dispatch steer --job-id <id> --message <text>

Send a steer message to a running dispatched job.

muon dispatch raise --job-id <id> --pool-ms <ms>

Raise a mission's descendant wall-clock pool — the operator's recourse when a crew exhausts its budget.

Fleet and agents

The five crew lanes are claude-code, codex, cursor, opencode and kiro. Grok Build connects through MCP and cannot be dispatched as a worker.

muon agents [--json] [--refresh]

Discovery table: name, vendor handle, stable id, readiness — then the exact next command for the first actionable row.

muon fleet [--json]

Current fleet counts per vendor and each agent's live status.

muon fleet set --claude-code <n> --codex <n> --cursor <n> --opencode <n> --kiro <n>

Resize the fleet per vendor, 0–3 instances each. A resize never kills a working agent.

muon fleet agents [--json]

List fleet agent instances with live status.

Memory

Decisions, constraints, conventions, attempts and questions — every read is fenced to the invoking workspace by default (--workspace <path> to target another).

muon memory add --kind <decision|constraint|convention|attempt|question> --text <text>

Add a note, optionally anchored with --task-id, --lane-id, --module, --symbol or --topic.

muon memory search <query...> [--filter <json>]

Lexical search over notes in the fenced workspace.

muon memory library [--q] [--status] [--confirmed] [--kind] [--trust]

Browse the governed memory library with filters.

muon memory recall [--task-id] [--lane-id] [--module] [--topic]

Recall notes by task, lane, module or topic.

muon memory review [--auto] [--from-pack]

The review queue: notes still unvouched and awaiting a human confirm or reject.

muon memory confirm --note-id <id> / muon memory reject --note-id <id>

Operator-only governance acts — mark a note human-confirmed, or reject it (kept for traceability, hidden from recall).

muon memory pack export --out <dir> | import <store> | sync <store>

Team memory sync over plain files — no MUON cloud. Import stages a teammate's pack as unconfirmed proposals in your review queue. Operator-tier only.

MCP server registration

muon mcp install <claude|codex|cursor|opencode|kiro|grok> [--scope user|project] [--mode base|observer] [--chat <id>] [--dry-run] [--force] [--json]

Register MUON's MCP server with your own CLI's config. See the MCP page for what it does and does not grant. Grok is attach-only (not a crew lane) — see the Grok Build page. Kiro registration uses user scope: its managed lane refuses a workspace .kiro/settings/mcp.json. For Kiro, install runs the setup check first and refuses on a blocking problem; --force installs anyway.

muon kiro doctor [--workspace <dir>] [--json]

The guided Kiro setup check: binary and version, --agent-engine v2, API key or login, IAM Identity Center profile, models, the folder's .kiro files, and Kiro seats. Each problem comes with the exact fix. Runs without starting MUON. See Set up Kiro.

muon mcp status [vendor] [--scope <scope>] [--json]

Explain the tier a hand-started session would get, and every reason it could be wrong.

muon mcp probe [vendor] [--mode <mode>] [--timeout <ms>] [--json]

Ask the installed server what it actually serves and compare it to this build, so a drifted or stale registration is caught before a session relies on it.

muon mcp uninstall <vendor>

Remove exactly the entry MUON wrote; every other server and key stays untouched.

muon mcp attach <claude|codex|cursor|opencode|kiro|grok> / muon mcp detach <vendor>

Mint (or revoke) a governed dispatch seat for a coordinator CLI you run yourself. Every installable lane can hold the seat, plus Grok Build; the seat is per (vendor, workspace) and never prints the capability token.

Diagnostics and lifecycle

muon doctor [--json] [--verbose] [--fix] (alias: muon status)

Backend connectivity, lane health, and whether MUON is still registered where you asked.--fix re-registers MUON in the agent CLIs you already chose; --verbose prints the full diagnostic JSON. It exits 1 when anything needs attention and 0 only when everything is ready.

muon version

App version, the indexed code-graph commit, the workspace's actual HEAD, and whether the two disagree (a stale index).

muon update [--check] [--dry-run] [--cli-only] [--desktop-only]

Update MUON from the signed download host. --check reports available updates without changing anything; --dry-run prints what would run.

muon graph reindex [--workspace <dir>]

Rebuild the local code graph for a workspace, and report its freshness.

muon github

Connect and inspect the GitHub integration from the terminal.

muon consent

Read and manage the brain-owned standing-consent record that lets governed jobs proceed while you are away.

muon watch

Hold the standing-approver lease and decide pending gates inline, without touching standing consent.

muon questions

List and answer the blocking questions a crew files when it cannot resolve something on its own.

muon telemetry

Read or change the machine-wide, consent-gated telemetry opt-out (brain-exempt).

muon context <target> [--view-proposal <noteId>]

The pre-edit gate for the terminal: blast-radius fused with governed memory, prior decisions, live cross-agent activity and pending proposals.

muon approve list | review --approval-id <id> | resolve --approval-id <id> --status approved|rejected

The approval queue from the terminal, including the exact artifact digest and REVIEW BLIND file list for merge gates.

muon start / muon runtime / muon shutdown

Start the embedded brain and runner; manage the standalone brain + runner runtime; or stop the persistent local brain and runner that CLI commands auto-start.

muon uninstall

Remove MUON's registrations and local state from this machine.