Skip to main content
rkat is realm-first. All commands accept global scope flags:
rkat [--realm <id>] [--instance <id>] [--realm-backend <redb|jsonl>] <command> ...

Common commands

CommandPurpose
initInitialize local project compatibility config (.rkat/config.toml)
runCreate and run a session
resumeContinue an existing session
sessions list/show/deleteInspect or remove sessions in active realm
config get/set/patchRead or mutate realm config
mcp ...Manage MCP server config
mob ...Manage mob lifecycle directly from CLI
capabilitiesShow resolved runtime capabilities

Realm behavior by command

Command surfaceDefault without --realm
run, resume, sessions ...Workspace-derived stable realm (ws-...)
rkat-rpcNew opaque realm (realm-...)
To share state between CLI and RPC, use the same explicit realm:
rkat --realm team-alpha run "Plan release"
rkat --realm team-alpha sessions list
rkat-rpc --realm team-alpha

run

rkat run [OPTIONS] <PROMPT>
Frequently used options:
  • --model <MODEL>
  • --provider <anthropic|openai|gemini>
  • --stream
  • --output <text|json>
  • --max-tokens <N>
  • --max-total-tokens <N>
  • --max-duration <DURATION>
  • --max-tool-calls <N>
  • --enable-builtins
  • --enable-shell (requires --enable-builtins)
  • --no-subagents
  • --hooks-override-json <JSON>
  • --hooks-override-file <FILE>
run always composes a CLI-local mob tool surface into the agent tool list (mob_create, mob_list, mob_status, mob_spawn, mob_retire, mob_wire, mob_unwire, mob_external_turn, mob_events, mob_list_meerkats, mob_stop, mob_resume, mob_complete, mob_destroy). These are available even when built-ins are disabled. If external MCP servers define a tool with the same name, the CLI-local mob tool wins. Comms options:
  • --comms-name <NAME>
  • --comms-listen-tcp <ADDR>
  • --no-comms
  • --host
  • --stdin

resume

rkat resume <SESSION_ID> <PROMPT>
Resumes a session from the active realm. Like run, resume composes the CLI-local mob_* tool surface.

mob

rkat mob prefabs
rkat mob create --prefab <NAME>
rkat mob create --definition <FILE.toml>
rkat mob list
rkat mob status <MOB_ID>
rkat mob spawn <MOB_ID> <PROFILE> <MEERKAT_ID>
rkat mob retire <MOB_ID> <MEERKAT_ID>
rkat mob wire <MOB_ID> <A> <B>
rkat mob unwire <MOB_ID> <A> <B>
rkat mob turn <MOB_ID> <MEERKAT_ID> <MESSAGE>
rkat mob stop <MOB_ID>
rkat mob resume <MOB_ID>
rkat mob complete <MOB_ID>
rkat mob destroy <MOB_ID>
CLI mob commands are the explicit lifecycle surface for persisted mob state in the local registry.

sessions

rkat sessions list [--limit N]
rkat sessions show <ID>
rkat sessions delete <ID>
These commands read/write through the same session service path used by run and resume.

config

rkat config get [--format toml|json]
rkat config set --file config.toml
rkat config set --json '{"agent":{"model":"gpt-5.2"}}'
rkat config patch --json '{"budget":{"max_tokens":50000}}'
Config operations are realm-scoped.

rkat-rpc

rkat-rpc [--realm <id>] [--isolated] [--instance <id>] [--realm-backend <redb|jsonl>] [--state-root <path>] [--context-root <path>] [--user-config-root <path>]
Starts JSON-RPC 2.0 over stdio. Pass --realm when you want deterministic shared state with other surfaces or processes:
rkat-rpc --realm team-alpha

mcp

rkat mcp add <NAME> -- <COMMAND> [ARGS...]
rkat mcp add <NAME> --url <URL>
rkat mcp list [--scope user|project] [--json]
rkat mcp get <NAME> [--scope user|project] [--json]
rkat mcp remove <NAME> [--scope user|project]
MCP config is stored in .rkat/mcp.toml (project) and ~/.rkat/mcp.toml (user).

capabilities

rkat capabilities
Shows status per capability (Available, DisabledByPolicy, NotCompiled, NotSupportedByProtocol).

See also