Skip to main content
The octop CLI is a single command installed alongside the server binary. Most commands work offline — reading and writing ~/.octop/ directly — so you can manage agents, users, channels, and cron jobs without a running server. A small number of commands (such as chats repl, channel test, and skills enable) require either an active octop run process or start an embedded server instance automatically.

Global Options

Pass these flags before any subcommand to control output format and default targeting:

Transport Modes

Every octop command selects one of three transports automatically based on what the operation requires:

Offline

Reads and writes ~/.octop/ directly. No running server is needed. Used by init, backup, plugin, agent list, user *, admin overview/audit, and most CRUD commands.

Attach

Connects to a running octop run process over HTTP. Requires octop user login first. Used by chats send/repl (when not using embedded), channel test, models ollama-*, skills enable/disable, and provider test.

Embedded

Starts a temporary in-process server for a single command, then exits. No separate octop run needed. Used by octop acp, octop chats repl, octop chats send, and octop agent create/from-expert/start/stop/reload.

Command Reference

Run octop --json with any list command to get machine-readable JSON output — ideal for scripting and CI pipelines.

CLI State File

The file ~/.octop/cli_state.json stores your CLI session state:
Delete this file to log out the CLI without contacting the server. The web UI and HTTP API clients manage their own tokens separately and do not share this file.
Override the location of ~/.octop/ by setting the OCTOP_HOME environment variable before running any octop command.