Neo CLI command reference
The always-true inventory of neo commands, generated from code. The hand-written ../user/cli.md keeps the prose, examples, and walkthroughs; THIS file is the mechanical command list that can never drift from the registry.
Framework commands (registry-routed)
Introspected live from cliRegistry. Every command below also accepts the global flags --json, --quiet/-q, --verbose, --no-color, and --help/-h.
| Command | Usage | Flags | Summary |
|---|---|---|---|
neo auth status | neo auth status | — | Show per-provider auth status (logged in? method? store?) — no secrets. |
neo channels logs | neo channels logs <channel> [flags] | --tail | Show one channel's lines from the daemon log (filtered view). |
neo channels restart | neo channels restart <channel> | — | NOT SUPPORTED — see description. |
neo channels status | neo channels status | — | Show per-channel connector state, pid, restarts, and uptime. |
neo completion | neo completion <shell> | — | Emit a tab-completion script (bash|zsh|fish|powershell). |
neo config get | neo config get <key> | — | Get one resolved setting by dotted key. |
neo config list | neo config list [flags] | --defaults | List resolved settings as dotted key/value pairs. |
neo config set | neo config set <key> <value> | — | Set one setting (schema-validated write to settings.json). |
neo config unset | neo config unset <key> | — | Remove a key from settings.json (falls back to default). |
neo config validate | neo config validate | — | Validate settings.json, providers.json, and mcp.json. |
neo cron create | neo cron create [flags] | --schedule, --interval, --prompt, --name, --one-shot, --permanent | Schedule a new durable cron task. |
neo cron delete | neo cron delete <id> [flags] | --yes | Cancel a scheduled cron task. |
neo cron history | neo cron history [flags] | --last | Show recent cron fire history. |
neo cron list | neo cron list | — | List all durable scheduled cron tasks. |
neo cron show | neo cron show <id> | — | Show full details for one scheduled cron task. |
neo cron trigger | neo cron trigger <id> | — | NOT SUPPORTED — see description. |
neo daemon audit | neo daemon audit [flags] | --last | Show recent entries from the daemon audit log. |
neo daemon budget | neo daemon budget | — | Show today's daemon token budget (spent, reserved, remaining). |
neo daemon logs | neo daemon logs [flags] | --tail, --follow | Read (or tail/follow) the daemon log file. |
neo daemon status | neo daemon status | — | Show daemon health, owner, version, budget, channels, and log/audit paths. |
neo daemon trigger | neo daemon trigger <job> | — | Ask the running daemon to run a system job now. |
neo doctor | neo doctor [flags] | --fix | Diagnose Neo's settings, auth, channels, daemon, and platform health. |
neo efficiency attest | neo efficiency attest | — | Refresh each lever's monitoring attestation from observed telemetry. |
neo efficiency audit | neo efficiency audit | — | Measure the per-session context tax and rank reduction suggestions. |
neo efficiency demote | neo efficiency demote <lever> [flags] | --reason | Automatically demote a lever one step down: on→limited→shadow→off. |
neo efficiency kill | neo efficiency kill <lever> | — | Emergency-stop a lever straight to off, clearing its owner grant. |
neo efficiency promote | neo efficiency promote <lever> | — | Owner-approve a lever one step up: off→shadow→limited→on. |
neo efficiency status | neo efficiency status | — | Show every efficiency lever with its current governance stage. |
neo egress allow | neo egress allow [<path>] | — | Record the one-time egress acknowledgement for a workspace. |
neo egress status | neo egress status [<path>] | — | Show the egress-gate consent state for a workspace. |
neo export | neo export [flags] | --all | Bundle sessions, memory, and config settings into a portable snapshot. |
neo mcp add | neo mcp add [<preset>] | — | Add a server from the bundled starter-preset catalogue to mcp.json. |
neo mcp list | neo mcp list | — | List MCP servers configured in mcp.json. |
neo mcp remove | neo mcp remove <name> | — | Remove a server from mcp.json. |
neo mcp show | neo mcp show <name> | — | Show one configured MCP server's (redacted) config detail. |
neo memory dream | neo memory dream [flags] | --now | Run the memory dream pass (Phase 5.3) right now. |
neo memory forget | neo memory forget <name-or-id> [flags] | --global, --project, --yes | Delete one memory entry (file + its MEMORY.md index line). |
neo memory list | neo memory list [flags] | --global, --project, --auto | List memory entries from the MEMORY.md index. |
neo memory show | neo memory show [flags] | --global, --project | Print the active MEMORY.md index. |
neo memory write | neo memory write <name-or-id> [flags] | --global, --project, --content, --file | Create or overwrite a memory file's body (headless memory editor). |
neo model set | neo model set <model-id> | — | Persist a new default model id to providers.json. |
neo model show | neo model show | — | Show the default provider + model from providers.json. |
neo onboard | neo onboard [flags] | --defaults | Guided first-run setup: provider auth, channels, allowlist, daemon, doctor, tour. |
neo permissions allow | neo permissions allow <pattern> | — | Add a "allow" rule to the user-scope permissions file. |
neo permissions deny | neo permissions deny <pattern> | — | Add a "deny" rule to the user-scope permissions file. |
neo permissions explain | neo permissions explain <tool-name> [flags] | --input | Show what the effective policy would decide for a synthetic tool call. |
neo permissions list | neo permissions list | — | List the effective permission mode and rules (user + project + local). |
neo permissions remove | neo permissions remove <behavior> <pattern> | — | Remove a rule from the user-scope permissions file (any behavior). |
neo plugins disable | neo plugins disable <name> | — | Disable a plugin (removes from settings.enabledPlugins). |
neo plugins enable | neo plugins enable <name> [flags] | --trust | Enable an installed plugin (adds to settings.enabledPlugins). |
neo plugins install | neo plugins install [<name>] [flags] | --force, --trust, --from | Install a bundled plugin template, or a GitHub-hosted plugin via --from. |
neo plugins list | neo plugins list | — | List installed plugins (scanned from ~/.neo/plugins/). |
neo plugins show | neo plugins show <name> | — | Show one installed plugin's full detail. |
neo plugins uninstall | neo plugins uninstall <name> | — | Remove a plugin: directory (minus declared persistentData paths) + enabledPlugins + trust store. |
neo providers list | neo providers list | — | List configured providers, storage location, and status. |
neo providers remove | neo providers remove <provider-id> | — | Remove a provider's stored API key. |
neo providers set | neo providers set <provider-id> [flags] | --key | Store an API key for a provider (stdin, or --key for API callers). |
neo providers show | neo providers show <provider-id> | — | Show one provider's config detail (redacted). |
neo sessions delete | neo sessions delete <id> [flags] | --yes | Delete a session's stored state. |
neo sessions export | neo sessions export <id> [flags] | --out | Export a session's full messages + metadata as JSON. |
neo sessions list | neo sessions list [flags] | --limit, --all | List sessions, most recently active first. |
neo sessions show | neo sessions show <id> | — | Show a session's metadata and a preview of its most recent turns. |
neo skills active | neo skills active | — | List live skills currently loaded into the agent (user/project/plugin), with disabled state. |
neo skills approve | neo skills approve <name> [flags] | --yes | Move a candidate into ~/.neo/skills/<name>/ so it becomes a live skill. |
neo skills disable | neo skills disable <name> | — | Disable a live skill (reversible) — its description is no longer sent to the model. |
neo skills enable | neo skills enable <name> | — | Re-enable a previously disabled live skill. |
neo skills list | neo skills list | — | List skill candidates waiting for review (dreaming-pass drafts), with provenance. |
neo skills reject | neo skills reject <name> | — | Permanently delete a skill candidate. |
neo skills remove | neo skills remove <name> [flags] | --yes | Permanently delete a live USER-scope skill directory (~/.neo/skills/<name>/). |
neo skills show | neo skills show <name> | — | Print a candidate's full SKILL.md (frontmatter + body) for review. |
neo stats | neo stats [flags] | --errors, --tools | Usage/cost summary from local telemetry + today's token budget. |
neo status | neo status | — | Show system status: daemon, budget, channels, provider. |
neo tasks create | neo tasks create <title> [flags] | --description | Create a new task. |
neo tasks delete | neo tasks delete <id> [flags] | --yes | Soft-delete a task (kept on disk for audit). |
neo tasks list | neo tasks list [flags] | --status | List tasks on the CLI's task list. |
neo tasks show | neo tasks show <id> | — | Show one task's full details. |
neo tasks update | neo tasks update <id> [flags] | --status, --title | Update a task's status and/or title. |
neo teams list | neo teams list | — | List every team on disk (name, member count, created). |
neo teams show | neo teams show <name> | — | Show a team's roster and per-member mailbox summary. |
neo tools disable | neo tools disable <name> [flags] | --dry-run, --yes | Disable a tool globally (reversible) — its schema is no longer sent to the model. |
neo tools enable | neo tools enable <name> | — | Re-enable a previously globally-disabled tool. |
neo tools list | neo tools list | — | List statically-enumerable tools with global disabled state and approximate per-turn token weight. |
neo ui | neo ui [flags] | --port, --no-open, --token-only | Open the Neo control-plane dashboard (starts a standalone host if no daemon is running). |
neo ui show | neo ui show [flags] | --path | Print the resolved ui.json config (or the built-in default) and its source. |
neo ui validate | neo ui validate [flags] | --path | Validate ui.json against the declarative UI-config schema. |
neo uninstall | neo uninstall [flags] | --dry-run, --yes | Remove Neo's OS integrations (daemon autostart, keychain secrets) and show what remains. |
neo update | neo update [flags] | --check | Check for and apply the latest Neo release. |
neo workflows approvals | neo workflows approvals | — | List pending workflow approvals awaiting a decision. |
neo workflows approve | neo workflows approve <id> | — | Approve a pending workflow approval (resumes the run). |
neo workflows list | neo workflows list | — | List workflow definitions (id, kind, trigger, enabled). |
neo workflows reject | neo workflows reject <id> | — | Reject a pending workflow approval (resumes the run with a reject decision). |
neo workflows runs | neo workflows runs [flags] | --last | List recent workflow runs, newest first. |
neo workflows trigger | neo workflows trigger <name> | — | Ask the running daemon to dispatch a workflow now. |
Legacy hand-routed commands
These still live in the src/bin/neo.ts if-chain (not the framework registry) and are hand-listed in the generator until each migrates. Many have a newer framework-routed spelling noted alongside.
| Command | Summary |
|---|---|
neo [message] | Start the interactive TUI (default); a message seeds the first turn. |
neo -p, --print <message> | One-shot: print the response and exit (no TUI). |
neo --json | Speak the line-delimited JSON control protocol on stdio (see docs/user/agent-cli.md). |
neo daemon <run|stop|install|uninstall> | Manage the always-on Matrix daemon lifecycle (status/logs/audit/budget/trigger are framework-routed). |
neo workflows status <runId> | Legacy workflow-run inspection (framework: workflows list/runs/approvals/approve/reject/trigger). |
neo workflows list-pending-approvals | Legacy spelling of neo workflows approvals. |
neo skills review [show|approve|reject <name>] | Review skill candidates distilled from experience (framework: skills list/show/approve/reject). |
neo channels <login|list|logout|remove|rm|pair> | Manage channel connector credentials + WhatsApp device pairing (framework: channels status/logs/restart). |
neo providers <rm|login|logout> | Legacy provider-credential spellings (framework: providers list/show/set/remove). |
neo login | Interactive provider + method picker (OAuth or API key). |
neo logout <provider> | Clear stored credentials for one provider. |
neo attach [message] | Connect this terminal to the shared daemon engine over IPC (ADR-0002). |
neo live-queue | Mine saved telemetry from real usage into a tuning queue. |
neo dream [--now] | DEPRECATED alias for neo memory dream — runs a manual dreaming pass. |
neo profile <show|regenerate> | Inspect or force-rebuild the synthesised user profile. |
neo contacts <add|list|remove> | Manage the outbound-send contact allowlist (owner-only surface). |