The opencues CLI manages installs, config, keys, and diagnostics for every host from one place. The repo's own reference starts with a five-command core, and that ordering is honest: most days you only need install, run, set-key, doctor, and update.
The 5 you'll actually use
| Command | What it does |
|---|---|
opencues install <host> | One-time setup for an editor/host |
opencues run <host> | Launch it |
opencues set-key <provider> <key> | Add an LLM API key |
opencues doctor | Something's wrong; diagnostics |
opencues update | Pull latest and rebuild everything |
Several of these have their own deep pages: run (and its self-healing rebuild check), set-key, and doctor.
Setup and config
install covers every host from one entry point (claude-code, opencode, gemini-cli, chrome, shell, or --all), and uninstall <host> rolls an install back. seed-configs owns the ~/.cues/ tree (first-time seeding, script sync, self-heal); update-configs is its thin wrapper for pulling new shipped defaults. config list / get / set reads and writes the OPENCUES.md settings, validated against the feature registry. check-keys verifies stored keys against each provider's lightest endpoint.
Authoring
init scaffolds a project's .cues/; new <kind> <name> scaffolds one cue or blank. validate lints every config across the search paths (--json, --strict for CI). import <source> installs a community config pack from a gist, GitHub repo, URL, or local path, and review <source> runs a security review over a third-party pack before you trust it.
Running and inspecting
sync <host> pushes configs into hosts that can't read the filesystem (Chrome). which prints every relevant path with exists/missing markers; version prints CLI and per-integration versions. list enumerates every discovered cue and blank, show <name> dumps one entry's resolved config, and edit <file> opens a config in $EDITOR. identity manages your IDENTITY.md fields, and context inspects every context source reaching the LLM. For debugging: logs (add --tail to follow live), debug on|off, and cleanup for orphaned host processes. statusline manages the Claude Code status-line integration, and completion <shell> emits bash/zsh/fish completions.
Conventions
Running bare opencues opens an interactive launcher that walks you to the right command. Every subcommand takes --help. Exit codes are conventional: 0 success, 1 error, 2 usage error, which is what makes validate and doctor --strict CI-friendly; a team shipping project-level configs can gate merges on both. Machine-readable output is a flag away where it matters (validate --json, identity list --json, context list --json), and completion bash|zsh|fish wires up tab completion.
The full per-command reference lives at docs/guides/cli-reference.md in the repo, with a frequency-sorted cheat sheet beside it for the "what was that flag" moments.
Related: opencues doctor · How to see logs · The documentation map · GitHub repo