Skip to main content
Every command and option below comes from reversi <command> --help; that output is the authority if a later version differs.

Shared options

These four are accepted by every command that reads runs, approvals or the ledger (-m by most of them, not by verify, export, bundle or approvals). See storage. --json gives machine-readable output where listed.

Exit codes

Set up and check

validate, lint, test, doctor, plan and suggest-manifest accept a manifest file, a folder of files or a versioned registry folder (index.json plus tools/); for a registry they check the current non-draft version of each tool.

Manifest registry and policy versions

A registry keeps every version of every manifest, with author, approver, checksum and an optional signature. The same idea applies to the policy. See GitOps for the whole workflow. --registry and --dir default to the manifests: and policy: settings of the project file. Policy versions are not signed; manifest versions are when you pass --key.

reversi apply <dir>

Layout, local versus server mode and a CI example are in GitOps.

Run the gateway and console

Inspect

Undo

Approvals, delegation, break-glass

Over files storage the CLI and a running server share approvals.json; for several machines use SQLite on a shared volume or PostgreSQL. See approvals.

Kill switches

What-if and simulation

capture, simulate and replay need capture turned on (capture: { enabled: true } in the project file, or REVERSI_CAPTURE=1 with optional REVERSI_CAPTURE_TTL_DAYS). speculate and impact do not.

Data lifecycle

See retention.

Evidence

The compensation call

Pass idempotency_key to the downstream API so a retried compensation does nothing twice.