--- name: using-ao description: "Catalog of the AO (Agent Orchestrator) `ao` CLI: spawning workers, managing sessions and projects, creating reusable Cues, sending messages, controlling the shared browser, previewing pages, and daemon control. Use when using the ao CLI, creating Cues, spawning workers, or managing AO sessions in an AO workspace." trigger: "Using the ao CLI in an AO workspace: creating Cues, spawning workers, managing sessions/projects, sending messages, controlling or previewing pages." --- # AO CLI Catalog `ao` is a thin CLI over the local AO daemon. Every command is `ao --help` for the authoritative flag list. | Command | What it does | When to use | Details | |---|---|---|---| | `spawn` | Spawn a project worker, orchestrator, or projectless standalone worker | Starting a new task or issue | [commands/spawn.md](commands/spawn.md) | | `session` | Manage agent sessions (list, kill, rename, restore, etc.) | Inspecting or controlling running/terminated sessions | [commands/session.md](commands/session.md) | | `agent` | Inspect installed harnesses and launch readiness | Choosing or diagnosing an agent harness | `ao agent ls --refresh` | | `pr` | Merge a PR or resolve its review threads | Completing a reviewed change | `ao pr merge` / `ao pr resolve-comments` | | `project` | Register, inspect, configure, or remove projects | Setting up or managing repos AO knows about | [commands/project.md](commands/project.md) | | `automation` | Manage durable recurring session automations | Creating, editing, disabling, deleting, and inspecting scheduled runs | [commands/automation.md](commands/automation.md) | | `cue` | Create or list reusable project Cues | Saving a repetitive command or agent task at the user's request | [commands/cue.md](commands/cue.md) | | `orchestrator` | List orchestrator sessions | Viewing which sessions are orchestrators | [commands/orchestrator.md](commands/orchestrator.md) | | `review` | Start, list, cancel, or submit AO's native reviewer for a worker's PR (default: this session) | Getting an adversarial review of an AO session's PR; never spawn a worker to review | [commands/review.md](commands/review.md) | | `send` | Send a message to a running agent session | Correcting or directing a live agent | [commands/send.md](commands/send.md) | | `report` | Persist a meaningful worker report | Checkpoints, blockers, decisions, outputs, and completion | [commands/report.md](commands/report.md) | | `preview` | Start a session-owned app or open an exact URL/file | Running and showing the worker's relevant app, Markdown, HTML, PDF, or image | [commands/preview.md](commands/preview.md) | | `browser` | Inspect and control the session's shared live browser | Verifying a web app through snapshots, interactions, waits, screenshots, console, and errors | [commands/browser.md](commands/browser.md) | | `start` | Fetch (if needed) and open the AO desktop app | Launching the app | [commands/start.md](commands/start.md) | | `stop` | Stop the AO daemon | Shutting down AO | [commands/stop.md](commands/stop.md) | | `status` | Show daemon status | Verifying the daemon is up and healthy | [commands/status.md](commands/status.md) | | `doctor` | Run local health checks | Diagnosing AO setup problems | [commands/doctor.md](commands/doctor.md) | | `import` | Import projects from a legacy AO install | Migrating from the old flat-file store | [commands/import.md](commands/import.md) | | `version` | Print version information | Checking installed version | - | | `completion` | Generate shell completion scripts | Setting up tab completion | - | ## Conventions - Most read commands accept `--json` for machine-readable output. - `-p / --project` scopes session subcommand lookups to one project. - Session and project ids are shown by `ao session ls` and `ao project ls`. - To refer to a session in AO Chat or the AO terminal, use the canonical in-app link `ao://sessions/{project-id}/{session-id}`. Read [commands/session.md](commands/session.md) for identity, encoding, and safety rules before constructing one. - When the user asks to save a repeatable task as a Cue, use `ao cue list --json` to check existing definitions, then `ao cue create`. An agent Cue stores a reusable instruction; a command Cue stores an exact shell command. This agent-facing command can create and read Cues, but cannot edit or delete them. Direct the user to project settings for changes to existing Cues. - `--agent` is an alias for `--harness` on `ao spawn`. - Every command accepts `-h / --help` for the full flag list. - For frontend launch, preview selection, or artifact handoff, read [commands/preview.md](commands/preview.md) before acting. Its static-file, project-runtime, and automatic-handoff rules are load-bearing. - For page inspection, interaction, or request diagnosis, read [commands/browser.md](commands/browser.md). It defines shared-tab behavior and the opt-in network policy. Use [references.md](references.md) only when a natural-language request does not map clearly to a command above.