Skip to content

Slash commands

There is no single, shared command set — the TUI, the Web UI’s typed chat, and IM channels each recognize a different list, because each surface has different session semantics (the TUI’s session is the process; an IM chat can be re-bound to a different session entirely).

Command Syntax Behavior
/help /help Prints the command list and key hints
/model /model <name> Switches the model in place — same provider, refreshed toolset for that model
/thinking /thinking off|low|medium|high|xhigh|max Sets reasoning effort; rebuilds the sender, since the thinking budget is set at construction time
/compact /compact Compacts history now; refused while a turn is running
/clear /clear Wipes history and saves immediately; refused mid-turn. Keeps the same session file — for a brand-new one, see /new below (IM only)
/goal see Run long-horizon goals /goal edit here is prefill-only — see the note on that page
/skills /skills Lists discovered skills with their source and description
/mcp /mcp Lists connected MCP servers — tool/resource/prompt counts, server instructions
/workflows /workflows Lists named workflows (embedded, user, and project); run one by describing the task, not by slash-invoking it
/memory /memory Lists files under the memory directory with sizes
/init /init Runs a full tool-enabled turn that generates or updates .octorules
/save /save Saves the session now, prints the file path
/sessions /sessions Lists the 10 most recent sessions
/exit, /quit Quits (same as Ctrl-C / Ctrl-D)
/<skill-name> /<name> [args] Any discovered skill not shadowed by a reserved command above inlines that skill as the next turn

Anything starting with / that isn’t recognized is sent to the model as plain text — handy for paths or regexes that happen to start with a slash.

Only three commands are parsed from typed chat text; everything else round-trips to the model as plain text (model/skill/workflow switching in the Web UI happens through dedicated buttons and a /-triggered picker menu, not through parsed command text):

Command Behavior
/clear Wipes the session’s messages, saves, drops the cached agent and memory latch, broadcasts a history reload
/compact Compacts in the background (registered so a stop/interrupt can cancel it)
/goal [...] Same shared implementation IM uses — /goal edit <text> works inline here

The composer’s own / autocomplete is a picker for skills, workflows, and MCP tools/servers — not a fixed command list. Selecting an entry just fills /<name> into the box, which then triggers the same server-side skill dispatch the TUI uses.

IM sessions can be re-bound between chats, so this surface has commands the others don’t:

Command Syntax Behavior
/bind /bind [--force] <number|id> Attaches this chat to an existing session, by the index shown in /list or a short/full session id. History is preserved. --force steals a binding held by another chat past its lease
/unbind /unbind Detaches this chat from its session without deleting anything
/new /new Creates a brand-new session and binds this chat to it — the one way to start fresh without touching an existing session’s history
/clear /clear Wipes history but keeps the current binding
/compact /compact Compacts now, out-of-band so it doesn’t block the chat
/goal [...] Same shared implementation as Web — /goal edit <text> works inline
/stop /stop Interrupts the in-flight turn
/status /status Reports how long this chat has been bound, plus input/output token counts
/list /list Lists up to 20 saved sessions, numbered for /bind

/bind, /unbind, /clear, and /new all drop the chat’s remembered-permission cache and memory injector state, since those are scoped to the conversation that’s being replaced — see Permissions.

Command TUI Web IM
/help
/model
/thinking
/compact
/clear
/goal ...
/skills /mcp /workflows /memory /save /sessions /init
/exit /quit
/<skill-name> ✓ (via picker)
/bind /unbind /new /stop /status /list

Next: session binding and re-binding is covered in more depth in Bridge to chat apps.