CLI Reference — Registered Commands and Options
Verified against source commit 34fdcb80543903b054a982cc48bb302ae6871682.
The inventory below comes from the actual Commander tree returned by
createProgram(), not a grep of command
strings or an installed CLI from a different commit.
There are 90 top-level registrations, 410 registered command objects
below rig (including groups and the hidden restore apply command), and
1,304 explicitly registered option objects, including the root version
option. Aliases do not add command objects; short/long spellings of one
option do not add option objects. Commander-generated help is additional.
These are counts for that source snapshot, not a claim about a deployed release. The provider-switch and set-runtime rows include the later account-home options; those additions are not included in the snapshot counts. The environment section and the host edit, host remove and terminal attach rows were added later from source at 522d635c, and aren't in the snapshot counts either. With environment, main registers 91 top-level commands.
Reading this reference
Each table row lists one registered command, its positional arguments,
command aliases, and its own declared options. <value> denotes a
required positional/option value; [value] is optional; ... is variadic.
An option marked required was registered with Commander's mandatory
option setting. An option marked (repeatable) collects every value when it is
given more than once. Conditional requirements enforced by an action are not
encoded by this inventory.
Use rig <command> --help for descriptions, choices, defaults, and examples.
Defaults may depend on the current directory, configuration, or action code;
they are not fixed by the flags table. Parent command options are listed on
the parent row, not repeated on every child. The root declares -V, --version;
Commander also provides -h, --help and applicable help [command] handling.
The only explicit command alias at this pin is rig host ls for host list.
An option named --json selects the command's JSON mode; it does not imply
that every verb shares one response schema. The handler and its daemon
route remain the source for result/error shape and side effects.
Entry points and practical routes
Bare rig opens the TUI, the status dashboard rather than an agent conversation, when both
stdin and stdout are terminals. Arguments,
pipes, and redirected streams follow normal CLI parsing.
runFrontDoor and openMissionControl
own the entry behavior; tuiCommand
owns explicit TUI options; rig terminal open saved:kernel --window opens a terminal view
of the OpenRig TUI, the operator and the advisor (in a new tab or window, or the current
Herdr session), and rig tui --shared is the dashboard-only fallback when that view cannot open. A daemon-down transport result can still open the
recovery cockpit; it is not automatically a reason to exit before rendering.
| Need | Start here |
|---|---|
| Install, upgrade, or make a first project | Getting started, then rig setup --help and rig doctor --help. |
| Inspect live state and diagnose failures | rig ps, rig health, rig doctor; health diagnosis. |
| Define/start rigs and seats | rig spec, rig agent, rig up, rig create, rig grow, rig seat continue; RigSpec and AgentSpec. |
| Snapshot, restore, or hand over | rig snapshot, rig restore, rig restore-check, rig restore-packet, rig handover; lifecycle source map. |
| Find owned work or communicate | rig queue, rig send, rig stream, rig chatroom, rig walk; coordination source map. |
| Work with projects, missions, slices, and proof | rig scope, rig proof, rig workflow; project workspace and SDLC conventions. |
| Read/project context and skills | rig context, rig skill, rig package; context source map. |
| Connect another host or human channel | rig host, rig gateway, rig slack; Slack setup. |
| Check, share, or start a rig bundle | rig bundle check, rig bundle, rig up <GitHub folder link>; packaging source map. |
| Find a specialist seat across rigs and hosts | rig roster (read-only). |
| Read event, queue-transition, and tenure telemetry | rig telemetry. |
Do not confuse rig project's coordination/classification surface with
rig scope's project and work-tree commands. Likewise, rig spec manages
rig specifications, rig specs browses the spec library, and
rig workflow specs lists workflow specifications. The tree below preserves
those distinct registrations.
A successful read, queue admission, terminal delivery, proof judgment, and publication are different operations. Consult the relevant command handler and workflow runtime when deciding what a result establishes. This reference does not turn an inventory entry into permission to perform that operation.
Reproducing the registration inventory
In a development checkout at the stamped commit, after installing its locked dependencies and building the daemon and CLI, this import walks the registered tree without parsing arguments or invoking command actions:
node --input-type=module <<'JS'
import { createProgram } from './packages/cli/dist/index.js';
const root = createProgram();
const rows = [];
function walk(command, prefix = '') {
const path = prefix ? `${prefix} ${command.name()}` : command.name();
rows.push({
path,
aliases: command.aliases(),
arguments: command.registeredArguments.map(a => ({
name: a.name(), required: a.required, variadic: a.variadic,
})),
options: command.options.map(o => ({
flags: o.flags, required: Boolean(o.mandatory),
})),
});
for (const child of command.commands) walk(child, path);
}
walk(root);
console.log(JSON.stringify({
topLevel: root.commands.length,
registeredCommands: rows.length - 1,
declaredOptions: rows.reduce((n, row) => n + row.options.length, 0),
rows,
}, null, 2));
JS
This inspects registration, not action semantics or availability of a running
daemon. index.ts imports the command
factories; their implementations live in
packages/cli/src/commands/.
The tables below retain registration order. Only the command/argument/alias/
option cells are mechanically transcribed; the explanations above are authored.
Registered command tree
Root: rig; declared option: -V, --version.
start
| Invocation | Aliases | Declared options |
|---|---|---|
rig start |
— | --last--all--rigs <names...>--json |
daemon
| Invocation | Aliases | Declared options |
|---|---|---|
rig daemon |
— | — |
rig daemon start |
— | --port <port>--host <host>--db <path>--allow-db-conflict--no-kernel--wait-for-kernel--wait-for-kernel-ms <ms> |
rig daemon stop |
— | — |
rig daemon status |
— | — |
rig daemon logs |
— | --follow |
status
| Invocation | Aliases | Declared options |
|---|---|---|
rig status |
— | --json |
rig status --json prints one object: daemon, kernel, workspaceRoot, rigs and cmux.
daemon.reachable has three values. true: the daemon answered its health probe (it may still
report healthy: false, and may carry a reason and eventLoop evidence). false: positively down
(state is stopped or stale). null: not confirmed (state is unverified, or running
with reason: "unresponsive" because /healthz did not answer). When reachable is not true,
the sections that were not read are null.
snapshot
| Invocation | Aliases | Declared options |
|---|---|---|
rig snapshot <rig> |
— | --intended-seats <ids> |
rig snapshot list <rig> |
— | — |
restore
| Invocation | Aliases | Declared options |
|---|---|---|
rig restore |
— | — |
rig restore apply <snapshotId> (hidden) |
— | --rig <rig> required |
rig restore status <attemptId> |
— | --rig <rig> required--json |
crash-cart
| Invocation | Aliases | Declared options |
|---|---|---|
rig crash-cart |
— | --json |
gateway
| Invocation | Aliases | Declared options |
|---|---|---|
rig gateway |
— | — |
rig gateway human |
— | — |
rig gateway human add <entityId> |
— | --display-name <name> required--binding <kind:connectorRef:secretsRef:role[:handle=<id>]> required (repeatable)--delivery-class <A|B|C|D> required--away--replace--reason <reason>--actor <actor>--organization <id>--group <id> (repeatable)--policy <text>--policy-file <path>--default |
rig gateway human list |
— | --json |
rig gateway human quiet |
— | — |
rig gateway human quiet set <entityId> |
— | --daily <window>--until <time>--tz <zone>--actor <actor>--json |
rig gateway human quiet end <entityId> |
— | --actor <actor>--json |
rig gateway human quiet clear <entityId> |
— | --actor <actor>--json |
rig gateway human quiet show <entityId> |
— | --json |
rig gateway human mode |
— | — |
rig gateway human mode save <entityId> <name> |
— | --availability <value>--expected-back <when>--decision-room <words>--exclude <item...>--quiet <rule>--tz <zone>--account <where>--actor <actor>--json |
rig gateway human mode saved <entityId> [name] |
— | --json |
rig gateway human mode apply <entityId> <name> |
— | --until <time>--tz <zone>--actor <actor>--json |
rig gateway human mode current <entityId> |
— | --json |
rig gateway human mode end <entityId> |
— | --scheduled--actor <actor>--json |
rig gateway human mode account <entityId> <applicationId> |
— | --json |
rig gateway human mode room <entityId> |
— | --json |
rig gateway human mode decide <qitemId> |
— | --application <id> required--choose <question=option...>--reason <why> required--reversible--irreversible--actor <actor>--json |
rig gateway human mode decisions <entityId> <applicationId> |
— | --json |
rig gateway human show <entityId> |
— | --json |
rig gateway human set <entityId> <field> <value> |
— | --reason <reason>--actor <actor> |
rig gateway human remove <entityId> |
— | --force |
rig gateway channel |
— | — |
rig gateway channel add <id> |
— | --display-name <name> required--binding <slack:connectorRef:secretsRef:channelId> required--organization <id>--group <id> (repeatable)--policy <text>--policy-file <path>--replace |
rig gateway channel remove <id> |
— | --force |
rig gateway org |
— | — |
rig gateway org set <id> |
— | --name <name>--policy <text>--policy-file <path> |
rig gateway group |
— | — |
rig gateway group set <id> |
— | --organization <id>--name <name>--policy <text>--policy-file <path> |
rig gateway participants |
— | --organization <id>--json |
rig gateway default [entityId] |
— | --clear |
- Several people may be registered. Organizations, groups, readable policy, shared channels and the default person are
kept in
$OPENRIG_HOME/gateway/participants.yaml, never in a person's fragment, so an older daemon still loads every person after a rollback.human set <entityId> organization|groups|policy <value>writes there (unsetclears;@<path>reads a policy file).participants --jsoncarries each participant'skind,address,organization,groups,defaultandpolicy(a list of{ source, text }, organization first), plusdefault,organizations,groups,warningsandparticipantFile.defaultwith no argument prints the current default and its source (chosenoronly-person), ornullwith the reason. Seedocs/reference/gateway-participants.md. human set <entityId> slack-subscription <value>— sets the person's Slack subscription:every-ask(the default) posts every ask to them to Slack;urgent-onlyposts only asks created with--alert, and other asks wait on Steering and the TUI;unsetremoves the authored subscription so the default applies.human showprints the value with its origin,authoredordefault(slack-subscription: every-ask (default));--jsoncarries it asrecord.slackSubscription{ value, source }.
parked
| Invocation | Aliases | Declared options |
|---|---|---|
rig parked [seat] |
— | --rig <rig>--json |
export
| Invocation | Aliases | Declared options |
|---|---|---|
rig export <rig> |
— | -o, --output <path> |
import
| Invocation | Aliases | Declared options |
|---|---|---|
rig import <path> |
— | --instantiate--materialize-only--workspace-only--preflight--target-rig <rigId>--rig-root <root>--cwd <path> |
ui
| Invocation | Aliases | Declared options |
|---|---|---|
rig ui |
— | — |
rig ui open |
— | — |
tui
| Invocation | Aliases | Declared options |
|---|---|---|
rig tui |
— | --shared |
rig tui commands |
— | --json |
package
| Invocation | Aliases | Declared options |
|---|---|---|
rig package |
— | — |
rig package validate <path> |
— | — |
rig package plan <path> |
— | --target <dir>--runtime <runtime>--role <name> |
rig package install <path> |
— | --target <dir>--runtime <runtime>--role <name>--allow-merge |
rig package rollback <installId> |
— | — |
rig package list |
— | — |
bootstrap
| Invocation | Aliases | Declared options |
|---|---|---|
rig bootstrap <spec> |
— | --plan--yes--cwd <path>--target <path>--skip-version-check--force--json |
requirements
| Invocation | Aliases | Declared options |
|---|---|---|
rig requirements <spec> |
— | --json |
discover
| Invocation | Aliases | Declared options |
|---|---|---|
rig discover |
— | --json--draft |
attach
| Invocation | Aliases | Declared options |
|---|---|---|
rig attach |
— | --self required--rig <rigId> required--node <logicalId>--pod <namespace>--member <name>--runtime <runtime>--cwd <path>--display-name <name>--print-env--json |
bind
| Invocation | Aliases | Declared options |
|---|---|---|
rig bind <discoveredId> |
— | --rig <rigId> required--node <logicalId>--pod <namespace>--member <name> |
adopt
| Invocation | Aliases | Declared options |
|---|---|---|
rig adopt <path> |
— | --bind <logicalId=tmuxSessionOrDiscoveryId> (repeatable)--bindings-file <path>--target-rig <rigId>--rig-root <root>--json |
bundle
| Invocation | Aliases | Declared options |
|---|---|---|
rig bundle |
— | — |
rig bundle create <spec> |
— | -o, --output <path> required--name <name>--bundle-version <ver>--include-login-files--include-packages <refs...>--rig-root <root>--context-pack <dir> (repeatable)--project-dir <dir>--preset <name>--seat <member=runtime> (repeatable)--notes <text>--min-daemon-version <ver>--min-cli-version <ver>--allow-drift--json |
rig bundle configurations <spec> |
— | --json |
rig bundle inspect <path> |
— | --preset <name>--seat <member=runtime> (repeatable)--json |
rig bundle install <path> |
— | --preset <name>--seat <member=runtime> (repeatable)--non-interruptive--no-non-interruptive--plan--yes--target <root>--cwd <path>--skip-version-check--force--json |
rig bundle check <folder> |
— | --json |
rig bundle history |
— | --rig <name>--since <iso>--json |
up
| Invocation | Aliases | Declared options |
|---|---|---|
rig up <source> |
— | --non-interruptive--no-non-interruptive--plan--yes--cwd <path>--env <KEY=VALUE> (repeatable)--name <rig>--target <root>--preset <name>--seat <member=runtime> (repeatable)--existing--fresh <seats...>--json--host <id> |
down
| Invocation | Aliases | Declared options |
|---|---|---|
rig down <rig> |
— | --delete--force--snapshot--yes--json--host <id> |
archive
| Invocation | Aliases | Declared options |
|---|---|---|
rig archive <rig> |
— | --force--json |
unarchive
| Invocation | Aliases | Declared options |
|---|---|---|
rig unarchive <rig> |
— | --json |
host
| Invocation | Aliases | Declared options |
|---|---|---|
rig host |
— | — |
rig host add |
— | --id <id> required--transport <transport> required--target <target>--user <user>--url <url>--bearer-env <name>--bearer-file <path>--notes <text>--json |
rig host select <id> |
— | --json |
rig host rename <name> |
— | --json |
rig host edit <id> |
— | --target <target>--user <user>--url <url>--notes <text>--json |
rig host remove <id> |
— | --json |
rig host pair <url> |
— | --id <id>--timeout <seconds>--human <address>--json |
rig host list |
ls |
--json |
rig host doctor <id> |
— | --posture <profile>--public-addr <ip>--json |
rig host pair needs the target daemon to run with OPENRIG_AUTH_BEARER_TOKEN set,
even when it is bound to a tailnet address and so starts without one: pairing hands
over that token. Without it, the target's POST /api/hosts/pair-request answers 409
pair_target_no_bearer; it answers 409 pair_human_required when no single
registered person can approve (none, or several with no default; name one with
--human) (packages/daemon/src/routes/hosts.ts:167-186).
Registration makes a host visible in topology; remote FEED attention remains opt-in.
The human-readable success output of host add and host pair now includes the FEED
next step alongside the existing host doctor suggestion. For an HTTP entry named
laptop, run this on the local instance to include its attention items:
rig config set feed.subscriptions.laptop.enabled true
The key uses the registry id, including any dots, and defaults to false. Registration
does not change that setting. SSH entries instead explain that FEED needs an HTTP entry;
ids reserved by feed settings (such as progress) get a different-id suggestion rather
than an invalid command. --json keeps its single JSON result without these hints.
The host CLI tests execute the advertised command against an isolated config and cover
registration, reserved names and JSON output; pairing responses are simulated, so they
do not establish connectivity to a live peer.
ps
| Invocation | Aliases | Declared options |
|---|---|---|
rig ps |
— | --json--no-cleanup--resources--nodes--full--verbose--limit <n>--fields <list>--summary--filter <key=value>--active--running-A, --all-rigs--rig <name>--session <name>--include-archived--host <id>--all-hosts--hosts <ids> |
--nodes --json— each seat carries the daemon's servedneedsAttentionflag; the CLI doesn't re-derive it, and it is absent when an older daemon doesn't serve it.arbitratedNeedsInputandneedsInputEvidence({ rung, observedAt }or null) come with--full, or by name through--fields.startedWithoutRequiredlists the required startup files a handover's successor started without, and the compact read keeps it.
roster
| Invocation | Aliases | Declared options |
|---|---|---|
rig roster |
— | — |
rig roster list |
— | --folder <path>--json |
rig roster show <id> |
— | --folder <path>--json |
rig roster find <query> |
— | --folder <path>--json |
mcp
| Invocation | Aliases | Declared options |
|---|---|---|
rig mcp |
— | — |
rig mcp serve |
— | --port <port>--http--bind <host:port>--grant-service <url>--grant-service-header-file <path>--oauth-resource <url>--oauth-issuer <url> |
rig mcp token |
— | — |
rig mcp token add <name> |
— | --seat <session> required--rig <name...>--root <name...>--workspace--owner |
rig mcp token list |
— | --json |
rig mcp token revoke <name> |
— | — |
acp
| Invocation | Aliases | Declared options |
|---|---|---|
rig acp |
— | — |
rig acp run <qitemId> <agent...> |
— | --cwd <dir>--permissions-to <session>--load-session <id>--poll-seconds <n> |
rig acp cancel <runId> |
— | — |
rig acp stop <runId> [stopCommand...] |
— | — |
exec
| Invocation | Aliases | Declared options |
|---|---|---|
rig exec |
— | — |
rig exec harnesses |
— | --json |
rig exec run <qitemId> |
— | --harness <name> required--cwd <dir>--permissions-to <session>--load-session <id>--wait--plan--again--poll-seconds <n> |
rig exec status <runIdOrQitemId> |
— | --json |
rig exec cancel <runId> |
— | — |
rig exec connector <runId> (hidden) |
— | — |
agent
| Invocation | Aliases | Declared options |
|---|---|---|
rig agent |
— | — |
rig agent validate <path> |
— | --json |
spec
| Invocation | Aliases | Declared options |
|---|---|---|
rig spec |
— | — |
rig spec show <rig-id> |
— | --json--as-template |
rig spec audit <path> |
— | --json |
rig spec validate <path> |
— | --json |
rig spec preflight <path> |
— | --rig-root <root>--json |
transcript
| Invocation | Aliases | Declared options |
|---|---|---|
rig transcript <session> |
— | --tail <lines>--grep <pattern>--host <id>--json |
send
| Invocation | Aliases | Declared options |
|---|---|---|
rig send [session] [text] |
— | --to <sessions> (repeatable)--pod <name>--rig <name>--verify--force--wait-for-idle <seconds>--raw--dangerously-interact--type-without-checking--reason <text>--urgent--host <id>--from <session>--context <ref>--json |
stream
| Invocation | Aliases | Declared options |
|---|---|---|
rig stream |
— | — |
rig stream emit |
— | --source <session> required--body <text> required--hint-destination <session>--hint-type <type>--hint-urgency <urgency>--hint-tags <tags>--format <fmt>--interrupt--id <streamItemId>--json |
rig stream list |
— | --source <session>--hint-destination <session>--tag <tag>--since <iso>--until <iso>--limit <n>--after <sortKey>--include-archived--json |
rig stream watch |
— | --json |
rig stream show <streamItemId> |
— | --json |
rig stream archive <streamItemId> |
— | --json |
rig stream subscribe <readerSession> |
— | --tags <tags>--type <hintType>--actor <session>--json |
rig stream unsubscribe <readerSession> |
— | --json |
rig stream subscriptions |
— | --json |
rig stream read |
— | --limit <n>--reader <session>--json |
rig stream act <streamItemId> |
— | --work <qitemId>--decline <reason>--duplicate <id>--reader <session>--json |
Stream intake: the stream.intake setting (default queue.worker, or a canonical <seat>@<rig>) receives each emitted item.
It opens an intake row for that seat, which wakes it, or adds a note to that seat's intake row still pending; a critical
or interrupting item makes the row urgent. rig config set stream.intake off keeps emits passive. A runner's
default-permit record (tag runner-permission-permit) opens no row.
queue
| Invocation | Aliases | Declared options |
|---|---|---|
rig queue |
— | — |
rig queue create |
— | --source <session>--destination <session> required--body <text>--body-file <path>--body-context <ref>--mission <id>--slice <id>--gate <role>--priority <priority>--tier <tier>--tags <tags>--expires-at <iso>--id <qitemId>--target-repo <name>--summary <text>--human-intent <intent>--alert--human-detail-file <path>--reply-to <qitemId>--human-questions-file <path>--evidence-ref <path>--host <id>--no-nudge--verify--full--json |
rig queue claim <qitemId> |
— | --destination <session>--full--json |
rig queue unclaim <qitemId> |
— | --destination <session>--reason <text>--full--json |
rig queue update <qitemId> |
— | --actor <session>--state <state>--reopen--closure-reason <reason>--closure-target <target>--closure-required-at <iso>--resolution <text>--blocked-on <blocker>--wake-watchdog <jobId>--wake-after <duration>--summary <text>--evidence-ref <path>--note <text>--full--json |
rig queue block <qitemId> |
— | --on <blocker> required--actor <session>--summary <text>--evidence-ref <path>--note <text>--continuation <text>--wake-watchdog <jobId>--wake-after <duration>--full--json |
rig queue resolve <qitemId> |
— | --decision <text> required--actor <session>--bearer <token>--no-notify--json |
rig queue handoff <qitemId> |
— | --from <session>--to <session> required--body <text>--body-file <path>--note <text>--priority <priority>--tier <tier>--tags <tags>--gate <role>--target-repo <name>--summary <text>--evidence-ref <path>--alert--host <id>--no-nudge--full--json |
rig queue handoff-and-complete <qitemId> |
— | --from <session>--to <session> required--body <text>--body-file <path>--note <text>--priority <priority>--tier <tier>--tags <tags>--gate <role>--target-repo <name>--summary <text>--evidence-ref <path>--alert--host <id>--no-nudge--full--json |
rig queue whoami |
— | --session <session>--recent-limit <n>--work-candidates--json |
rig queue fallback <qitemId> |
— | --destination <session> required--reason <text>--json |
rig queue show <qitemId> |
— | --full--json |
rig queue transitions <qitemId> |
— | --json--full |
rig queue list |
— | -a, --all-A, --all-rigs--full--owned--mine-o <format>--destination <session>--source <session>--state <state>--target-repo <name>--limit <n>--json |
rig queue overdue |
— | --rig <name>-A, --all-rigs--full--limit <n>--json |
rig queue undelivered |
— | --rig <name>-A, --all-rigs--full--limit <n>--json |
rig queue inbox-drop <destinationSession> |
— | --sender <session>--body <text>--body-file <path>--tags <tags>--urgency <urgency>--audit <pointer>--id <inboxId>--json |
rig queue inbox-absorb <inboxId> |
— | --receiver <session> required--json |
rig queue inbox-deny <inboxId> |
— | --receiver <session> required--reason <text> required--json |
rig queue inbox-pending <destinationSession> |
— | --json |
rig queue outbox-record |
— | --sender <session>--destination <session> required--body <text>--body-file <path>--tags <tags>--urgency <urgency>--audit <pointer>--id <outboxId>--json |
rig queue outbox-list <senderSession> |
— | --limit <n>--json |
slack
| Invocation | Aliases | Declared options |
|---|---|---|
rig slack |
— | — |
rig slack setup |
— | --channel <id>--inbound-destination <session>--minimum-level-that-posts <level>--minimum-level-that-interrupts <level>--source-label <label>--secrets-env-file <path>--required-scopes <csv>--reactions <mode>--reason <reason>--actor <actor> |
rig slack status |
— | --json |
rig slack manifest |
— | --url--json |
rig slack verify |
— | --json |
rig slack channel-map |
— | — |
rig slack channel-map list |
— | --json |
rig slack channel-map set <match> <channel> |
— | --inbound <seat>--reason <reason>--actor <actor> |
rig slack channel-map remove <match> |
— | --reason <reason>--actor <actor> |
rig slack enable |
— | --reason <reason>--actor <actor> |
rig slack disable |
— | --reason <reason> required--actor <actor> |
rig slack post-open-asks |
— | --reason <reason>--wait <seconds>--actor <actor>--json |
rig slack outbound |
— | --json |
rig slack inbound |
— | — |
project
| Invocation | Aliases | Declared options |
|---|---|---|
rig project |
— | — |
rig project experimental |
— | — |
rig project experimental enable |
— | --config <file> required--max-requests <n>--timeout-ms <n>--json |
rig project experimental disable |
— | --config <file> required--max-requests <n>--timeout-ms <n>--json |
rig project experimental status |
— | --config <file> required--max-requests <n>--timeout-ms <n>--json |
rig project experimental capture |
— | --config <file> required--input <file> required--output <file> required--json |
rig project decisions |
— | — |
rig project decisions status |
— | --json |
rig project candidates |
— | --project <id> required--taxonomy <file> required--classifier-version <version> required--evidence-epoch <epoch> required--decisions <file>--experiment <file>--decide--limit <count>--json |
rig project wake |
— | --project <id> required--taxonomy <file> required--classifier-version <version> required--evidence-epoch <epoch> required--decisions <file>--experiment <file>--decide--limit <count>--json |
rig project shadow-status |
— | — |
rig project shadow-drain |
— | --actor <name> |
rig project shadow-stop |
— | --actor <name> |
rig project lease-acquire |
— | --session <session> required--evaluate-deadness-first--json |
rig project lease-heartbeat |
— | --lease-id <id> required--session <session> required--json |
rig project lease-show |
— | --json |
rig project reclaim-classifier |
— | --session <session> required--if-dead--reason <text>--json |
rig project classify <streamItemId> |
— | --session <session> required--lease-id <id> required--attempt-id <id>--execution-id <id>--type <type>--urgency <urgency>--maturity <maturity>--confidence <confidence>--destination <destination>--action <action>--area <area>--scope-ref <id>--duplicate-of <streamItemId>--needs-human <value>--classifier-version <v>--taxonomy-version <v>--candidate-set-version <v>--json |
rig project list |
— | --session <session>--destination <destination>--area <area>--scope-ref <id>--needs-human <value>--limit <n>--json |
rig project show <projectId> |
— | --json |
view
| Invocation | Aliases | Declared options |
|---|---|---|
rig view |
— | — |
rig view list |
— | --json |
rig view show <viewName> |
— | --rig <rig>--limit <n>--mission <id>--project <name>--json |
rig view register |
— | --name <name> required--definition <sql> required--session <session> required--json |
terminal
| Invocation | Aliases | Declared options |
|---|---|---|
rig terminal |
— | — |
rig terminal open <view> |
— | --provider <name>--session <name>--window--expected-plan <id>--json |
rig terminal views |
— | --json |
rig terminal status |
— | --provider <name>--session <name>--json |
rig terminal attach <session> |
— | --read-only |
See named terminal sessions to select a Herdr session per request, including session-bound previews and window reuse.
watchdog
| Invocation | Aliases | Declared options |
|---|---|---|
rig watchdog |
— | — |
rig watchdog register |
— | --spec <path>--policy <policy> required--target-session <session> required--interval-seconds <n> required--registered-by <session> required--threshold-bytes <n>--threshold-mb <n>--threshold-tokens <n>--threshold-percent <n>--watched-file <path>--requires-job <jobId>--message <text>--active-wake-interval-seconds <n>--scan-interval-seconds <n>--json |
rig watchdog list |
— | -a, --all--full--limit <n>--json |
rig watchdog show <jobId> |
— | --json |
rig watchdog status <jobId> |
— | --json |
rig watchdog stop <jobId> |
— | --reason <text>--json |
rig watchdog update <jobId> |
— | --interval-seconds <n>--message <text>--spec <path>--json |
workflow
| Invocation | Aliases | Declared options |
|---|---|---|
rig workflow |
— | — |
rig workflow validate <specPath> |
— | --json |
rig workflow compile <missionPath> |
— | --operation-key <key>--json |
rig workflow revise <instanceId> |
— | --apply--expected-version <number>--expected-digest <sha256>--operation-key <key>--actor-session <session>--reason <text>--json |
rig workflow operation <key> |
— | --json |
rig workflow instantiate-lifecycle <missionPath> |
— | --operation-key <key> required--root-objective <text> required--created-by <session> required--entry-owner <session>--rig <name>--json |
rig workflow instantiate <specPath> |
— | --root-objective <text> required--created-by <session> required--entry-owner <session>--rig <name>--project <id>--mission <id>--slice <id>--tags <tags>--json |
rig workflow project |
— | --instance <id> required--current-packet <qitem-id> required--exit <kind> required--actor-session <session> (only when the caller's session can't be derived)--result-note <text>--evidence-ref <ref>--wait-for-proof <scope>--blocked-on <ref>--next-owner <session>--acceptance-candidate <identity>--acceptance-verdict <verdict>--acceptance-evidence-ref <path>--json |
rig workflow list |
— | --status <s>--json |
rig workflow specs |
— | --json |
rig workflow guidance <instanceId> |
— | --packet <id>--component <id>--full--json |
rig workflow show <instanceId> |
— | --json |
rig workflow trace <instanceId> |
— | --json |
rig workflow continue <instanceId> |
— | --json |
rig workflow run <specPath> |
— | --root-objective <text> required--created-by <session> required--entry-owner <session>--rig <name>--project <id>--mission <id>--slice <id>--tags <tags>--json |
rig workflow watch <instanceId> |
— | --json |
rig workflow route <instanceId> |
— | --to <session> required--actor-session <session> (only when the caller's session can't be derived)--packet <qitem-id>--reason <text>--json |
rig workflow resume <instanceId> |
— | --actor-session <session> (only when the caller's session can't be derived)--occurrence <failed-qitem-id>--decision <text>--json |
rig workflow abort <instanceId> |
— | --reason <text> required--actor-session <session> (only when the caller's session can't be derived)--json |
rig workflow status |
— | --json |
capture
| Invocation | Aliases | Declared options |
|---|---|---|
rig capture [session] |
— | --rig <name>--pod <name>--lines <n>--history-plus-pane--readable--size <WxH>--host <id>--json |
broadcast
| Invocation | Aliases | Declared options |
|---|---|---|
rig broadcast [text] |
— | --rig <name>--pod <name>--force--host <id>--context <ref>--json |
walk
| Invocation | Aliases | Declared options |
|---|---|---|
rig walk <seat> |
— | --through <items...>--through-profile <ref>--situation <situation>--runtime <runtime>--profile <profile>--rig <rig>--seat-grant <seat>--mission <mission>--slice <slice>--budget <tokens>--pace <duration>--consume-timeout <duration>--consume-poll <duration>--turn-timeout <duration>--json |
ask
| Invocation | Aliases | Declared options |
|---|---|---|
rig ask <rig> <question> |
— | --json--seat <session-name>--session <token>--wake <target>--runtime <runtime>--wake-timeout <seconds> |
Wake seat targets must include the rig: member@rig or member@rig@N (1 = newest tenure).
Values without @ go unchanged to the runtime as a session ID or title; a bare member
name is not resolved within <rig>.
Only Claude and Codex tenures can be woken.
chatroom
| Invocation | Aliases | Declared options |
|---|---|---|
rig chatroom |
— | — |
rig chatroom send <rig> <message> |
— | --sender <name> |
rig chatroom history <rig> |
— | --topic <name>--after <id>--since <timestamp>--sender <name>--limit <n>--json |
rig chatroom watch <rig> |
— | --tmux |
rig chatroom topic <rig> <topic-name> |
— | --body <text>--sender <name> |
rig chatroom wait <rig> |
— | --after <id>--topic <name>--sender <name>--timeout <seconds>--json |
rig chatroom clear <rig> |
— | — |
specs
| Invocation | Aliases | Declared options |
|---|---|---|
rig specs |
— | — |
rig specs ls |
— | --kind <kind>--include-builtins--json |
rig specs show <name-or-id> |
— | --kind <kind>--json |
rig specs preview <name-or-id> |
— | --kind <kind>--json |
rig specs add <path> |
— | --json |
rig specs sync |
— | --json |
rig specs remove <name-or-id> |
— | --json |
rig specs rename <name-or-id> <new-name> |
— | --json |
context
| Invocation | Aliases | Declared options |
|---|---|---|
rig context |
— | — |
rig context work-install |
— | --project <id>--mission <id>--slice <id>--deliver--runtime <runtime>--cwd <path>--topology <ids>--apply-skills--json |
rig context trace |
— | --rig <rig> required--pod <pod>--seat <seat>--name <file> required--json |
rig context compose |
— | --out <ref> required--from <files...> required |
rig context list |
— | --json |
rig context show <name-or-ref> |
— | --json |
rig context preview <name-or-ref> |
— | --json |
rig context get <name-or-ref> |
— | --json |
rig context profile <name-or-ref> |
— | --situation <situation> required--runtime <runtime>--profile <profile>--budget <tokens>--rig <rig>--seat <seat>--mission <mission>--slice <slice>--json |
rig context recap-write |
— | --rig <rig> required--seat <seat> required--file <path> required |
rig context sync |
— | --json |
rig context add <source> |
— | --name <name>--git--checkout--pack <path>--json |
rig context source |
— | — |
rig context source inspect <ref> |
— | --json |
rig context source update <ref> |
— | --json |
rig context rm <ref> |
— | --json |
plugin
| Invocation | Aliases | Declared options |
|---|---|---|
rig plugin |
— | — |
rig plugin list |
— | --runtime <runtime>--source <source>--json |
rig plugin show <id> |
— | --json |
rig plugin used-by <id> |
— | --json |
rig plugin validate <path> |
— | --json |
skill
| Invocation | Aliases | Declared options |
|---|---|---|
rig skill |
— | — |
rig skill loadout |
— | --runtime <runtime> (folder mode; required there)--seat <session> (seat mode; self is this seat)--wait-for-idle <ms>--resend--cwd <path>--project-root <path>--topology <ids>--apply--json |
rig skill audit |
— | --json |
agent-image
| Invocation | Aliases | Declared options |
|---|---|---|
rig agent-image |
— | — |
rig agent-image list |
— | --runtime <runtime>--json |
rig agent-image show <name-or-id> |
— | --json |
rig agent-image preview <name-or-id> |
— | --json |
rig agent-image create <source-session> |
— | --name <name> required--image-version <version>--notes <text>--estimated-tokens <n>--lineage <names...>--json |
rig agent-image delete <name-or-id> |
— | --force--json |
rig agent-image pin <name-or-id> |
— | --json |
rig agent-image unpin <name-or-id> |
— | --json |
rig agent-image prune |
— | --dry-run--force--json |
rig agent-image sync |
— | --json |
community-harness
| Invocation | Aliases | Declared options |
|---|---|---|
rig community-harness |
— | — |
rig community-harness list |
— | --json |
environment
| Invocation | Aliases | Declared options |
|---|---|---|
rig environment |
— | — |
rig environment setup |
— | --directory <path> required--binding <id>--seat <address>--rig <name>--mcp-url <url>--guest-base-url <origin>--artifact-root <path>--json |
rig environment create <binding> |
— | --seat <address> required--node <id>--gateway <ref> required--workspace <ref> required--name <name> required--image <digest> required--provider <ref> required--policy <path> required--guest-base-url <origin> required--operation <id>--json |
rig environment attach <binding> |
— | --seat <address> required--node <id>--gateway <ref> required--workspace <ref> required--name <name> required--image <digest> required--provider <ref> required--policy <path> required--guest-base-url <origin> required--operation <id>--json--resource-id <id> required--fingerprint <value> |
rig environment inspect <binding> |
— | --live--json |
rig environment connect <binding> |
— | --generation <id> required |
rig environment export <binding> |
— | --request <path> required--json |
rig environment checkpoint <binding> |
— | --generation <id> required--operation <id> required--json |
rig environment recreate <binding> |
— | --request <path> required--json |
rig environment completion <binding> |
— | --request <path> required--json |
rig environment effect <binding> |
— | --effect <name> required--generation <id>--resource-id <id>--operation <id> required--engine-socket <path>--json |
It drives the maintained OpenShell reference; see the OpenShell example.
fork
| Invocation | Aliases | Declared options |
|---|---|---|
rig fork <source-session> |
— | --rig <rig> required--pod <pod-namespace> required--member <member-id> required--keep-image--image-name <name>--image-version <version>--rig-root <path>--json |
workspace
| Invocation | Aliases | Declared options |
|---|---|---|
rig workspace |
— | — |
rig workspace validate [root] |
— | --kind <kind>--no-recursive--require-frontmatter--max-files <n>--json |
rig workspace doctor |
— | --workspace <path>--json--strict |
mode
| Invocation | Aliases | Declared options |
|---|---|---|
rig mode |
— | — |
rig mode set <mode> |
— | --scope <scope>--qualifier <id>--autonomy-scope <v>--heartbeat-cadence <v>--inspection-depth <v>--update-detail <v>--escalation-threshold <v>--concurrency-limit <v>--permission-prompt-posture <v>--expiry-or-stale-rule <v>--evidence <citation>--confirm--bearer <token>--json |
rig mode show |
— | --json |
rig mode effective |
— | --rig <id>--project <id>--mission <id>--workstream <id>--qitem <id>--json |
rig mode cite |
— | --rig <id>--project <id>--mission <id>--workstream <id>--qitem <id> |
rig mode unset <scope> [qualifier] |
— | --bearer <token>--category <category>--json |
rig mode defaults |
— | --json |
policy
| Invocation | Aliases | Declared options |
|---|---|---|
rig policy |
— | — |
rig policy permissions |
— | — |
rig policy permissions list |
— | --spec <path>--json |
rig policy permissions show <nameOrRef> |
— | --spec <path>--json |
rig policy permissions current |
— | --spec <path> required--json |
rig policy permissions apply <name> |
— | --spec <path>--seat <seat>--reason <text>--operator <address>--json |
rig policy list |
— | --spec <path>--json |
rig policy show <nameOrRef> |
— | --spec <path>--json |
rig policy current |
— | --spec <path> required--json |
rig policy apply <name> |
— | --spec <path>--seat <seat>--reason <text>--operator <address>--json |
whoami
| Invocation | Aliases | Declared options |
|---|---|---|
rig whoami |
— | --node-id <id>--session <name>--host <id>--all-hosts--hosts <ids>--json--full--verbose--all-peers |
config
| Invocation | Aliases | Declared options |
|---|---|---|
rig config |
— | --json--with-source |
rig config get <key> |
— | --json--show-source |
rig config set <key> <value> |
— | — |
rig config reset [key] |
— | — |
rig config init-workspace |
— | --root <path>--force--dry-run--json |
init-workspace—rig config init-workspacecreates missingmissions/,exhaust/,SPEC.md,project.yaml,workspace.yaml, and.gitignoreentries at the configured workspace root (or--root <path>). Initialization is additive and preserves existing files; a complete six-entry scaffold is a no-op.--forceis deprecated compatibility and still preserves existing files.--dry-runreports planned additions without writing; incompatible path types are reported before any writes.
file
| Invocation | Aliases | Declared options |
|---|---|---|
rig file |
— | — |
rig file copy <src> <dst> |
— | --dry-run--json |
preflight
| Invocation | Aliases | Declared options |
|---|---|---|
rig preflight |
— | --json |
auth
| Invocation | Aliases | Declared options |
|---|---|---|
rig auth |
— | — |
rig auth status |
— | --runtime <runtime>--codex-home <dir>--host <id> |
rig auth list |
— | --runtime <runtime>--codex-home <dir>--host <id> |
rig auth save <profile> |
— | --runtime <runtime> |
rig auth switch <profile> |
— | --runtime <runtime>--codex-home <dir>--host <id> |
rig auth validate <profile> |
— | --runtime <runtime> |
rig auth seats |
— | — |
rig auth seats list |
— | --runtime <runtime> |
rig auth seats show <seat> |
— | --runtime <runtime> |
rig auth seats set |
— | --runtime <runtime>--seat <seat> required--rig <rig> required--cwd <cwd>--profile <profile> |
rig auth seats report |
— | --runtime <runtime> |
provider
| Invocation | Aliases | Declared options |
|---|---|---|
rig provider |
— | — |
rig provider status |
— | --json--refresh--provider <p>--claude-token-file <path>--credential-label <label>--all-hosts--hosts <ids> |
rig provider accounts |
— | --json--provider <p>--account <a> |
rig provider bindings |
— | --json--provider <p>--account <a> |
rig provider signals |
— | --json--provider <p>--account <a> |
rig provider precheck |
— | --seat <s> required--to-account <a>--token-file <path>--api-key-file <path>--stored-login--json |
rig provider switch |
— | --seat <s> required--to-account <a>--token-file <path>--api-key-file <path>--stored-login--force-unsafe--clear-account-home--account-home <path>--reason <text>--model <id>--codex-config-profile <name>--dry-run--json |
rig provider moves |
— | --seat <seat>--limit <n>--json |
rig provider moves report |
— | --file <path> required--to <seat> required--follows <qitemId>--evidence-ref <ref>--json |
usage
| Invocation | Aliases | Declared options |
|---|---|---|
rig usage |
— | — |
rig usage top |
— | --window <duration>--top <n>--json |
rig usage cost |
— | --seat <session>--json |
rig usage series |
— | --seat <session>--lane <lane>--since <iso>--until <iso>--limit <n>--json |
telemetry
| Invocation | Aliases | Declared options |
|---|---|---|
rig telemetry |
— | — |
rig telemetry events |
— | --cursor <token>--limit <n>--json--start <mode>--node <id>--rig <id> |
rig telemetry transitions |
— | --cursor <token>--limit <n>--json--start <mode>--qitem <id> |
rig telemetry tenures <node-id> |
— | --cursor <token>--limit <n>--json |
health
| Invocation | Aliases | Declared options |
|---|---|---|
rig health |
— | --self--seat <node-id>--rig <rig-id>--instance [instance-id]--severity <severity>--status <status>--limit <count>--json--actor <name> |
rig health explain <finding-id> |
— | --json |
rig health policy |
— | --file <path>--json |
rig health checkpoint |
— | --file <path>--json |
rig health diagnose |
— | --apply--json |
rig health diagnosis |
— | — |
rig health diagnosis list |
— | --json--full |
rig health diagnosis show <qitem-id> |
— | --json--full |
rig health diagnosis record <qitem-id> |
— | --file <path> required--json |
rig health diagnosis notify <qitem-id> |
— | --json |
doctor
| Invocation | Aliases | Declared options |
|---|---|---|
rig doctor |
— | --json--spec <path> |
expand
| Invocation | Aliases | Declared options |
|---|---|---|
rig expand <rig> <pod-fragment-path> |
— | --json--rig-root <path> |
add
| Invocation | Aliases | Declared options |
|---|---|---|
rig add <rig> <pod-namespace> <member-fragment-path> |
— | --json--rig-root <path> |
create
| Invocation | Aliases | Declared options |
|---|---|---|
rig create <name> |
— | --runtime <runtime>--cwd <path>--json |
grow
| Invocation | Aliases | Declared options |
|---|---|---|
rig grow <rig-id> <members...> |
— | --pod <pod>--new-pod <pod>--runtime <runtime>--cwd <path>--json |
edge
| Invocation | Aliases | Declared options |
|---|---|---|
rig edge |
— | — |
rig edge add <rig> [from] [to] |
— | --kind <kind>--plan--json |
rig edge remove <rig> <edge-id> |
— | --plan--json |
add requires from, to and --kind, and is idempotent: a repeat reports the
existing edge and writes nothing. remove deletes the edge with that ID; a repeat changes nothing and
returns edge_not_found (exit 1). See
changing edges on an existing rig
for input and receipt examples, rollback, and snapshot behavior.
reconcile-session
| Invocation | Aliases | Declared options |
|---|---|---|
rig reconcile-session <session> |
— | --rig <rigId>--node <logicalId>--no-launch--repair-missing-pane--json |
env
| Invocation | Aliases | Declared options |
|---|---|---|
rig env |
— | — |
rig env status <rig> |
— | --json |
rig env logs <rig> [service] |
— | --tail <n> |
rig env down <rig> |
— | --volumes |
unclaim
| Invocation | Aliases | Declared options |
|---|---|---|
rig unclaim <sessionRef> |
— | --json |
release
| Invocation | Aliases | Declared options |
|---|---|---|
rig release <rig> |
— | --delete--json |
launch
| Invocation | Aliases | Declared options |
|---|---|---|
rig launch <rig> [nodeRef] |
— | --seats <ids>--hold-reason <reason>--snapshot-id <id>--retry-startup-from <member-file>--rig-root <path>--plan--json--host <id> |
remove
| Invocation | Aliases | Declared options |
|---|---|---|
rig remove <rigId> <nodeRef> |
— | --fallback <live-seat>--json |
shrink
| Invocation | Aliases | Declared options |
|---|---|---|
rig shrink <rig> <podRef> |
— | --fallback <live-seat>--json |
destroy
| Invocation | Aliases | Declared options |
|---|---|---|
rig destroy |
— | --state--all--backup--yes--confirm <token> |
setup
| Invocation | Aliases | Declared options |
|---|---|---|
rig setup |
— | --dry-run--json--full--no-herdr--ghostty--no-ghostty--providers <list>--policy <name>--spec <path>--router-line <answer> |
restore-check
| Invocation | Aliases | Declared options |
|---|---|---|
rig restore-check |
— | --json--full--ready--rig <name>--no-queue--no-hooks |
restore-packet
| Invocation | Aliases | Declared options |
|---|---|---|
rig restore-packet |
— | — |
rig restore-packet write |
— | --source-session <session>--source-jsonl <path>--source-runtime <runtime>--target <dir> required--target-rig <rig>--target-runtime <runtime>--target-workspace-root <path>--default-target-repo <path>--role-pointer <path>--current-work-summary <text>--next-owner <name>--caveat <text> (repeatable)--authority-boundaries <text>--source-trust-ranking <csv>--generator-version <version>--source-session-id-override <id>--source-rig-override <rig> |
rig restore-packet read <packet-dir> |
— | --json |
rig restore-packet validate <packet-dir> |
— | --json |
compact-plan
| Invocation | Aliases | Declared options |
|---|---|---|
rig compact-plan |
— | --json--rig <name>--refresh--threshold-tokens <n>--threshold-percent <0-100> |
--threshold-tokensand--threshold-percentset the plan's own candidate thresholds (the percentage applies when a seat's context window size is missing). They are not the automatic compaction setting: the output labels them as the plan's own and showspolicies.claude_compaction(enabled,threshold_percent) separately, for comparison only, or says it couldn't be read.
compact
| Invocation | Aliases | Declared options |
|---|---|---|
rig compact <session> |
— | --json--skip-map--cancel--state |
heartbeat
| Invocation | Aliases | Declared options |
|---|---|---|
rig heartbeat |
— | --rig <name>--json--nudge--include-done |
seat
| Invocation | Aliases | Declared options |
|---|---|---|
rig seat |
— | — |
rig seat history |
— | --rig <id> required--node-id <id> required--snapshot-id <id>--history-session-id <id>--json |
rig seat set-typing-guard <seat> |
— | --enabled <boolean>--mode <mode>--reason <text> required--json |
rig seat held-messages <seat> |
— | --limit <n>--offset <n>--id <id>--json |
rig seat retire-held-message <seat> <id> |
— | --reason <text> required--json |
rig seat status <seat> |
— | --json |
rig seat handover <seat> |
— | --source <source>--reason <reason>--operator <address>--dry-run--json |
rig seat switch-client <seat> |
— | --to-window <n>--client <id>--json |
rig seat clear-attention <session> |
— | --reason <text>--json |
rig seat set-terminal-policy <seat> |
— | --preset <preset> required--helper <addresses...>--rig-default--reason <text> required--operator <address>--json--peer-compaction <decision>--peer-model <decision>--self-compaction <decision>--self-model <decision>--openrig-compaction <decision>--openrig-model <decision> |
rig seat set-permissions <seat> |
— | --mode <mode>--rules <file>--codex-permissions <file>--codex-profile <name>--reason <text> required--operator <address>--json |
rig seat set-effort <seat> |
— | --effort <level>--clear--reason <text> required--operator <address>--json |
rig seat set-permissions-to <seat> |
— | --to <person>--clear--deny--reason <text> required--operator <address>--json |
rig seat effort <seat> |
— | --json |
rig seat set-model <seat> |
— | --model <id> required--reason <text> required--operator <address>--json |
rig seat set-runtime <seat> |
— | --runtime <runtime>--reason <text>--model <id>--effort <level>--codex-config-profile <name>--clear-account-home--account-home <path>--token-file <path>--account-label <label>--permission-mode <mode>--confirm-timeout <seconds>--dry-run--confirm <switch-id>--note <text>--recover--json |
rig seat set-cwd <seat> |
— | --cwd <directory> required--reason <text> required--operator <address>--json |
rig seat launch <seat> |
— | --fresh required--reason <text>--plan--stop--operator <address>--json |
rig seat restart <seat> |
— | --keep-conversation required--reason <text>--plan--verify--expect-account <text>--operator <address>--host <id>--json |
rig seat continue <seat> |
— | --json |
rig seat stop <seat> |
— | --reason <text> required--operator <address>--json |
rig seat clean <seat> |
— | --reason <text> required--operator <address>--json |
rig seat set-resume-token <session> |
— | --token-stdin--reason <text> required--json |
A rig seat stop that successfully kills the current session records that it
was intentionally stopped. With other healthy members running, the rig's lifecycleState in
rig ps and the TUI stays running; the stopped member no longer makes it
degraded. Stopping every member
leaves the rig stopped. Node JSON exposes intentionallyStopped in compact,
--full, and --fields output.
Process counts still reflect reality: stopping one of two members leaves
nodeCount: 2, runningCount: 1, and process status: partial. Node lifecycle,
resume information, and attention diagnostics remain available. A crash or
attention condition on another member still affects the rig lifecycle.
Stop intent survives daemon restarts and audit retention. It applies only to the
latest exited session while the seat has no binding; a subsequent session status
change clears it, and a new session starts without it. Existing exits are not
backfilled as intentional stops. If the session disappears between the live
probe and the stop, its unexplained exit still affects rig health. The internal
stop in rig seat launch --fresh --stop does not record final stop intent, so a
refused replacement still degrades a rig with other healthy members running.
rig start --last and rig start --rigs <rig> use the full per-seat lifecycle
for restore selection. A partly running rig with an intentionally stopped member
still appears as a degraded candidate and reports rig_not_stopped (exit 1)
when restore is attempted. Launch scheduling and restore eligibility remain
unchanged.
See per-seat terminal delivery for off, draft-aware and hold modes, immediate refusal results and held-message inspection.
handover
| Invocation | Aliases | Declared options |
|---|---|---|
rig handover <seat> |
— | --source <source>--reason <reason>--operator <address>--dry-run--json |
startup-proof
| Invocation | Aliases | Declared options |
|---|---|---|
rig startup-proof |
— | — |
rig startup-proof submit |
— | --challenge-id <id> required--answer <answer> required--json |
scope
| Invocation | Aliases | Declared options |
|---|---|---|
rig scope |
— | --workspace <path> |
rig scope slice |
— | — |
rig scope slice ls |
— | --mission <name>--state <state>--json |
rig scope slice show <slice-path> |
— | --mission <name>--json |
rig scope slice create <mission> <slug> |
— | --template <kind>--title <text>--intent <text>--depends-on <dot-id...>--readme-only--json |
rig scope slice ship <slice-path> <release-mission> |
— | --mission <name>--json |
rig scope slice close <slice-path> |
— | --reason <reason> required--note <text>--mission <name>--json |
rig scope slice move <slice-path> <dest-mission> |
— | --mission <name>--json |
rig scope slice progress <slice-path> |
— | --mission <name>--add <text>--set <text>--section <heading>--status <status>--json |
rig scope slice repair <slice-path> |
— | --mission <name>--json |
rig scope slice stage <slice-path> <new-stage> |
— | --successor <id>--mission <name>--json |
rig scope slice verified <slice-path> |
— | --against <source>--mission <name>--json |
rig scope slice approve <slice-path> |
— | --mission <name>--scope <scope>--actor <session>--on-behalf-of <human>--re-approve--reason <why>--locked-artifacts <paths>--json |
rig scope mission |
— | — |
rig scope mission ls |
— | --json |
rig scope mission show <mission> |
— | --json |
rig scope mission create <name> |
— | --template <kind>--id <dot-id>--title <text>--intent <text>--depends-on <dot-id...>--no-notes--no-mission-notes--json |
rig scope mission graph <mission> |
— | --json |
rig scope mission progress <mission> |
— | --add <text>--set <text>--section <heading>--status <status>--json |
rig scope mission repair <mission> |
— | --json |
rig scope mission stage <mission> <new-stage> |
— | --successor <id>--json |
rig scope mission verified <mission> |
— | --against <source>--json |
rig scope mission approve <mission> |
— | --mission <name>--scope <scope>--actor <session>--on-behalf-of <human>--re-approve--reason <why>--locked-artifacts <paths>--json |
rig scope resolve-notes <absolute-work-node-dir> |
— | --json |
rig scope audit |
— | --mission <name> required--json |
proof
| Invocation | Aliases | Declared options |
|---|---|---|
rig proof |
— | --workspace <path> |
rig proof show [scope] |
— | --project <id>--json |
rig proof judge <scope-item> |
— | --project <id>--verdict <verdict> required--reason <text> required--evidence <ref> (repeatable)--subject <kind:ref>--comparison <ref>--revision <revision>--operation-id <id>--replace--json |
rig proof add <slice-path> |
— | --mission <name>--artifact-type <type> required--verdict <verdict> required--candidate-sha <sha> required--money-evidence <line> required--slice-id <dot-id>--file <path>--body <text>--name <filename>--replace--evidences <refs>--self-check <text>--media <refs>--json |