CommandoCommando
Reference

CLI Reference

Every cmdo subcommand and flag in v0.2.4-beta.

CLI Reference

cmdo is a Commander-based CLI. The default action takes a free-text prompt; the rest are reserved subcommand names.

Synopsis

cmdo [subcommand]
cmdo <prompt...> [--sui | --walrus | --site-builder]

Global options

OptionDescription
-v, --versionPrint the installed version (e.g. 0.2.4-beta).
-h, --helpPrint help.

Subcommands

cmdo init

Interactively configure the LLM provider, API key, and model.

cmdo init

Prompts:

  1. Provider — openai or openrouter.
  2. API key — pasted at the prompt; stored in ~/.commando/config.json.
  3. Model — picked from a curated dropdown (or accept the default).

Re-run any time to switch providers or models. Env vars (OPENAI_API_KEY, OPENROUTER_API_KEY, OPENAI_MODEL, OPENROUTER_MODEL) override the stored config when present.

cmdo doctor

Print environment status and verify installed binaries. Read-only — does not download or modify anything.

cmdo doctor

Output includes Node version, platform, install root, PATH membership, per-binary status, and LLM provider configuration. See Troubleshooting for what to do when checks fail.

Exit code: 0 if all checks pass, 1 otherwise.

cmdo bootstrap

Download binaries, patch PATH, bootstrap external CLI configs, and (re)generate skills. Idempotent — safe to re-run.

cmdo bootstrap

Use this after a partial install (network drop), after upgrading the package, or to recover from a stale state. To force a full re-download, delete ~/.commando/bin/ first.

cmdo update-skills

Regenerate ~/.commando/skills/AGENT.md from the currently installed binaries' --help output.

cmdo update-skills

Run this after any of the upstream binaries change versions — the LLM planner is constrained to the contract in AGENT.md, so a stale contract means stale plans.

cmdo <prompt...>

The default action. Anything that isn't a known subcommand is treated as a natural-language prompt.

cmdo "show sui client active address"
cmdo "deploy static site in ./dist to walrus-sites" --site-builder
cmdo create new sui address     # quotes are optional for simple prompts

Routing flags

If multiple are passed, the first one wins.

FlagForces
--suiPlan against the sui binary skill section only.
--walrusPlan against the walrus binary skill section only.
--site-builderPlan against the site-builder binary skill section only.

When no flag is passed, the router infers the target from prompt keywords. Always pass the explicit flag in scripts and demos for predictability.

Exit codes

CodeMeaning
0Plan succeeded, executed, and exited 0.
1Generic failure (LLM error, validation failure, spawn failure, exec non-zero).
>1Underlying binary's exit code is propagated.

Examples

Wallet

cmdo "create new sui address"
cmdo "show sui client active address" --sui
cmdo "switch to testnet" --sui
cmdo "give me testnet sui from faucet"

Move

cmdo "build my move package"
cmdo "test my move package"
cmdo "publish my move package to testnet"

Walrus

cmdo "show walrus info" --walrus
cmdo "get wal" --walrus
cmdo "list my blobs" --walrus

Walrus Sites

cmdo "deploy static site in ./dist to walrus-sites" --site-builder
cmdo "run site-builder deploy --epochs 1 ./dist" --site-builder
cmdo "show sitemap for site 0x..." --site-builder

Where the binary lives

OSPath
Windows%APPDATA%\npm\cmdo.cmd (npm global bin) → %USERPROFILE%\.commando\bin\ for upstream binaries
Linux / macOS$(npm bin -g)/cmdo~/.commando/bin/ for upstream binaries

How is this guide?

On this page