Skip to Content

AI Chat

cmdop chat (and bare cmdop) opens an interactive AI chat. Same Go core as the desktop. You can target a specific machine, anchor work to a Board issue, debug the rendered system prompt, or resume a previous session.

Start a chat

Bare cmdop opens chat. In a TTY: Bubble Tea TUI. With a pipe: line-based output. Force one or the other with flags:

cmdop # bare = chat (TUI in TTY) cmdop chat cmdop chat --plain # force line-based output cmdop chat --tui # force TUI even outside a TTY

Example session:

cmdop> list large files in /var/log on vps-audi Finding large files on vps-audi:/var/log... Found 3 files over 100MB: - /var/log/syslog.1 (234 MB) - /var/log/kern.log (156 MB) - /var/log/auth.log.1 (112 MB) cmdop> archive the oldest one to /backup Archived /var/log/auth.log.1 → /backup/auth.log.1.gz

Slash commands inside chat

Inside chatWhat it does
/exit, /quitLeave
/clearClear screen
/historyShow prompt history
/helpHelp registry
/model <id>Switch model mid-session
/style <preset>Switch personality preset
@vps-audi <prompt>Re-target the current turn at a specific machine

—machine — target a specific host

cmdop chat --machine vps-audi enters chat where the agent’s context is biased toward that machine. The agent will reach for ask_agent vps-audi and connect exec vps-audi instead of touching the local filesystem.

cmdop chat --machine vps-audi cmdop chat --machine prod-server

Two execution paths exist depending on surface: desktop pipes the prompt directly to the remote agent; CLI runs the LLM locally but only allows tools that target the remote machine.

—issue — anchor to a Board issue

Pass --issue CMD-42 to anchor todo_write and delegate_task outputs under a specific Board issue. Subagent results land under the same issue. Use this for long-running multi-turn investigations.

cmdop chat --issue CMD-42 cmdop chat --machine vps-audi --issue CMD-42

See ./issue for the Board CLI surface.

—debug-prompt — see the rendered system prompt

Prints the rendered system prompt — every section: identity, env, target machine, critical tools, etc. — to stderr, then continues. Useful for debugging “why did the agent answer wrong?” or for screenshotting.

cmdop chat --debug-prompt 2> /tmp/sysprompt.txt

—resume — continue a previous session

Sessions persist to SQLite (cmdop.db). Resume with --resume <session-id>. List sessions with cmdop session list. The flag is a root flag — cmdop --resume <id> works without the chat keyword.

cmdop --resume 0193e2c1-7a8f-7b33-8c01 cmdop chat --resume 0193e2c1-7a8f-7b33-8c01

Adjacent verbs

Cross-link to the dedicated pages. Quick reference:

VerbWhat it does
cmdop run <skill> [prompt...]Single-shot skill execution
cmdop skills listList installed skills
cmdop instructions listSystem prompt presets
cmdop modelsList available models
cmdop style listPersonality presets
cmdop highlight <file>Syntax-highlighted file display

See ./skills, ./instructions, ./models, ./style, ./highlight.

Custom LLM providers

You can route chat through any OpenAI-compatible provider (Z.AI, MiniMax, DeepSeek, Ollama, etc.) instead of the default SDKRouter:

cmdop provider # interactive manager cmdop provider add cmdop provider set <id> # activate cmdop provider default # reset to SDKRouter

When a custom provider is active, chat completions route through your provider; SDKRouter aliases (@code, @balanced) are substituted with the provider’s default model. Search, vision, and CDN stay on SDKRouter. See ./provider.

Safety & permissions

The local CLI chat bypasses the permission gate — the operator is driving their own agent, an extra modal would be friction. Permissions only apply to incoming remote-agent calls on this daemon.

If you run cmdop chat --machine vps-audi, the target machine’s permission rules apply to any tool call dispatched there. Local chat on this machine is unguarded; remote calls hit the remote gate.

See ./permissions for the gate’s CLI.

Last updated on