Commands
Every command below prints this text for flywheel <command> --help. The page is generated from the code at build time.
flywheel acp
usage: flywheel acp [-h] [--limits] {run,verify} ...
acp_cli.py -- delegate a turn to an ACP agent and keep the record of it.
positional arguments:
{run,verify}
run send one prompt to an ACP agent
verify recheck a run's log offline
options:
-h, --help show this help message and exit
--limits print what an ACP run record does not prove.
flywheel anchor
usage: flywheel anchor [-h] {head,verify} ...
anchor_cli.py -- `flywheel anchor`: witness a head with parties the author
does not control.
positional arguments:
{head,verify}
head log a head in Rekor (and optionally OpenTimestamps)
verify recheck the anchors of a head
options:
-h, --help show this help message and exit
flywheel behavior-check
usage: flywheel behavior-check [-h] [--scenario NAME] [--scenarios FILE]
[--jobs JOBS] [--python PYTHON] [--work DIR]
[--json] [--receipt PATH]
a b
Replay fixed scripted sessions with `flywheel code -p` on two Flywheel source
trees against a scripted model, compare model requests, stream events,
workspace files, exit code and ledger kinds, and report MATCH or DRIFT with
the first diverging event.
positional arguments:
a build A: a Flywheel source tree
b build B: a Flywheel source tree
options:
-h, --help show this help message and exit
--scenario NAME run only this scenario (repeatable)
--scenarios FILE a scenarios file (default: the one shipped with Flywheel)
--jobs JOBS sessions run at once (default 2)
--python PYTHON interpreter that runs both builds (default: this one)
--work DIR parent folder for the per-run folders (default: system
temp)
--json print the report as JSON
--receipt PATH also write the report as a sealed receipt
flywheel bulletin-identity
usage: flywheel bulletin-identity [-h] {prepare} ...
Prepare a Bulletin Ed25519 identity under native custody.
positional arguments:
{prepare}
prepare validate a key file, check the board, and optionally
store/register
options:
-h, --help show this help message and exit
flywheel check-output
usage: -c [-h] --contract CONTRACT --answer ANSWER [--allow-commands]
[--base-dir BASE_DIR] [--out OUT] [--report REPORT] [--lean LEAN]
[--verify-lean] [--lean-bin LEAN_BIN] [--ledger LEDGER]
[--scope {,task,goal,session}] [--subject SUBJECT] [--strict]
[--json]
output_check_cli.py -- check an answer against the sources that decide it.
options:
-h, --help show this help message and exit
--contract CONTRACT
--answer ANSWER
--allow-commands let command authorities run. Without it they are
unchecked rather than confirmed, which is the safe
direction and not a passing one.
--base-dir BASE_DIR where relative authority paths resolve from. Defaults
to the contract's own directory, so a task and its
checkers travel together.
--out OUT write the report as JSON here.
--report REPORT write the report in the format this path asks for:
.txt, .md, .tex, .pdf or .json. A PDF carries the
answer as an attachment, so the page and the values it
vouches for travel together.
--lean LEAN write the check as a Lean 4 file.
--verify-lean run `lean` on that file. Without it the file is
written and not checked, which is unverified rather
than confirmed.
--lean-bin LEAN_BIN which lean to run. Defaults to the one on PATH.
--ledger LEDGER append this check to a validation ledger, so the goal
and session scopes can read it later. Defaults to the
shared ledger under FLYWHEEL_HOME when --scope or
--subject is given.
--scope {,task,goal,session}
which scope this check belongs to.
--subject SUBJECT what was checked: a task id, a goal, a session.
--strict exit non-zero on any release short of RELEASE, so a
caveat stops a pipeline that cannot carry one.
--json
flywheel code
usage: flywheel code [-h] [-p REQUEST] [--root ROOT]
[--mode {plan,ask,edit,auto}] [--backend BACKEND]
[--model MODEL] [--providers PROVIDERS] [--local-only]
[--max-steps MAX_STEPS] [--max-tokens MAX_TOKENS]
[--test-cmd TEST_CMD] [--compact-budget COMPACT_BUDGET]
[--no-instructions] [-c] [--resume ID] [--sessions]
[--no-save] [--no-mcp] [--trust-project-mcp]
[--trust-project-hooks] [--worktree NAME] [--plain]
[--acp] [--output-format {text,json,stream-json}]
`flywheel code`: an interactive coding session in the current folder.
options:
-h, --help show this help message and exit
-p REQUEST, --print REQUEST
run one request, print the answer and exit; with no
one to ask, calls that would ask are refused, so pass
--mode edit or auto
--root ROOT project folder (default: current folder)
--mode {plan,ask,edit,auto}
permission mode (default: ask)
--backend BACKEND pin a backend by name
--model MODEL model id for the chosen backend
--providers PROVIDERS
comma list of hosted providers to consider (default:
all with keys)
--local-only never call a hosted provider
--max-steps MAX_STEPS
--max-tokens MAX_TOKENS
--test-cmd TEST_CMD tests a turn must pass before it is done
--compact-budget COMPACT_BUDGET
fold the conversation past about this many estimated
tokens; 0 is off
--no-instructions do not read AGENTS.md, CLAUDE.md or FLYWHEEL.md
-c, --continue resume the newest saved session for this folder
--resume ID resume a saved session
--sessions list saved sessions for this folder and exit
--no-save do not save this session
--no-mcp start no MCP servers
--trust-project-mcp start the project's MCP servers without asking
--trust-project-hooks
run the project's hooks without asking
--worktree NAME work in a git worktree on branch flywheel/NAME,
carrying your uncommitted changes; your checkout is
not touched
--plain screen-reader friendly output: words, not symbols
(also FLYWHEEL_SCREEN_READER=1)
--acp serve the Agent Client Protocol on stdin and stdout
for an editor
--output-format {text,json,stream-json}
with -p: text, one JSON result, or one JSON object per
event
flywheel corpus-export
usage: flywheel corpus-export <envelopes_dir> <out.jsonl> [verdict_filter]
flywheel cross-harness-execute
usage: flywheel cross-harness-execute [-h] --manifest MANIFEST
--runtime-matrix RUNTIME_MATRIX
--artifact-root ARTIFACT_ROOT --roles
ROLES --source-commit SOURCE_COMMIT
--source-root SOURCE_ROOT --phase PHASE
--run-id RUN_ID --tasks TASKS --cache
CACHE --repetitions REPETITIONS
--timeout TIMEOUT
[--endpoint-gate ENDPOINT_GATE]
[--gate-run-id GATE_RUN_ID]
[--admission-receipt ADMISSION_RECEIPT]
[--max-gate-age MAX_GATE_AGE]
[--compact-budget COMPACT_BUDGET]
[--strict-exit]
Execute admitted cross-harness benchmark rows.
options:
-h, --help show this help message and exit
--manifest MANIFEST
--runtime-matrix RUNTIME_MATRIX
--artifact-root ARTIFACT_ROOT
--roles ROLES
--source-commit SOURCE_COMMIT
--source-root SOURCE_ROOT
--phase PHASE
--run-id RUN_ID
--tasks TASKS, --task-selectors TASKS
--cache CACHE, --cache-state CACHE
--repetitions REPETITIONS
--timeout TIMEOUT, --timeout-seconds TIMEOUT
--endpoint-gate ENDPOINT_GATE
--gate-run-id GATE_RUN_ID
--admission-receipt ADMISSION_RECEIPT
--max-gate-age MAX_GATE_AGE, --max-gate-age-seconds MAX_GATE_AGE
--compact-budget COMPACT_BUDGET
--strict-exit
flywheel dap
usage: flywheel dap [-h] [--limits] {run,verify} ...
dap_cli.py -- debug a program under an adapter, and keep the record of it.
positional arguments:
{run,verify}
run debug a program to its first stop
verify recheck a run's log offline
options:
-h, --help show this help message and exit
--limits print what a DAP run record does not prove.
flywheel doctor
usage: flywheel doctor [-h] [--json]
doctor_cli.py -- `flywheel doctor`: is this install ready to work?
options:
-h, --help show this help message and exit
--json print the checks as JSON
flywheel down
usage: flywheel down
How to stop a gateway started by `flywheel up`.
flywheel e2e-journey
usage: e2e-journey [-h] {validate,run,list} ...
Validate and run product E2E journeys.
positional arguments:
{validate,run,list}
options:
-h, --help show this help message and exit
flywheel endpoint-gate
usage: -c [-h] --profile-artifact PROFILE_ARTIFACT [--models MODELS]
[--backends BACKENDS] [--profile-id PROFILE_ID]
[--max-generation-calls MAX_GENERATION_CALLS] [--prompt PROMPT]
[--timeout-seconds TIMEOUT_SECONDS] [--max-tokens MAX_TOKENS]
[--seed SEED] [--out OUT] [--markdown-out MARKDOWN_OUT]
[--store-root STORE_ROOT] [--run-id RUN_ID] [--strict-exit]
Run bounded live gates against local model endpoint profiles.
options:
-h, --help show this help message and exit
--profile-artifact PROFILE_ARTIFACT
--models MODELS
--backends BACKENDS
--profile-id PROFILE_ID
Select exactly one case-sensitive profile ID;
duplicates fail.
--max-generation-calls MAX_GENERATION_CALLS
Refuse the whole plan before I/O if it exceeds this
cap.
--prompt PROMPT
--timeout-seconds TIMEOUT_SECONDS
--max-tokens MAX_TOKENS
--seed SEED
--out OUT
--markdown-out MARKDOWN_OUT
--store-root STORE_ROOT
--run-id RUN_ID
--strict-exit
flywheel evidence
usage: flywheel journey [-h] {start,project,check,export,recheck} ...
Start, project, check, export, and recheck evidence journeys.
positional arguments:
{start,project,check,export,recheck}
options:
-h, --help show this help message and exit
flywheel gate
usage: flywheel gate [OUT_DIR]
Collect, verify, seal and re-witness one result with no model; exit 0 only on MATCH.
flywheel gov
unknown command: --help
usage: flywheel gov <command>
eim-witness ROOT PATH [PATH ...] build witness entries for a manifest
eim-recheck MANIFEST.json ROOT recompute the witness (MATCH/DRIFT/UNVERIFIABLE)
ced MANIFEST.json scan for coercive primitives
ncec-issue MANIFEST.json [PROP ...] issue a non-coercive certificate
ncec-verify CERT.json MANIFEST.json re-derive a certificate
erg MANIFEST.json LOG.json reward gap: high reward without declared intent
igap MANIFEST.json LOG.json internalization gap: complies when watched, not when unwatched
smp CLAIM.json OBSERVED.json served-model provenance: did you get the model you were promised
icp MANIFEST.json LOG.json internal consistency: does the internal honesty signal track behavior
dpp DATASET.json OBSERVED.json dataset provenance: do the shards match their declared origin
iae MANIFEST.json LOG.json intervention ablation: does an intervention reduce misalignment
far MANIFEST.json TRIALS.json attribution false-accept rate over known-null controls
flywheel grant
usage: flywheel grant [-h] {prepare,approve-once} ...
positional arguments:
{prepare,approve-once}
options:
-h, --help show this help message and exit
flywheel import-inspect
usage: flywheel import-inspect [-h] [--expected-sha256 EXPECTED_SHA256]
[--unit-contract UNIT_CONTRACT]
source
Import Inspect JSON evidence locally; scorer claims are not independent proof.
positional arguments:
source local Inspect JSON log or inspect log dump export
options:
-h, --help show this help message and exit
--expected-sha256 EXPECTED_SHA256
reject bytes that differ from this digest
--unit-contract UNIT_CONTRACT
optional flywheel.inspect-scorer-unit-contract/v1
sidecar JSON
flywheel import-norvane
usage: -c [-h] --source-manifest SOURCE_MANIFEST
[--expected-manifest-sha256 EXPECTED_MANIFEST_SHA256]
capture_root
Read one offline capture and emit a content-minimized Journey review on
stdout.
positional arguments:
capture_root
options:
-h, --help show this help message and exit
--source-manifest SOURCE_MANIFEST
--expected-manifest-sha256 EXPECTED_MANIFEST_SHA256
flywheel incident-sim
usage: flywheel incident-sim [-h] [--task TASK] [--trace TRACE]
[--expected-task-sha256 EXPECTED_TASK_SHA256]
[--expected-trace-sha256 EXPECTED_TRACE_SHA256]
[--institutional-access INSTITUTIONAL_ACCESS]
[--institutional-access-scope INSTITUTIONAL_ACCESS_SCOPE]
[--gateway-effect-component GATEWAY_EFFECT_COMPONENT]
[--gateway-terminal-result GATEWAY_TERMINAL_RESULT]
[--gateway-lifecycle-history GATEWAY_LIFECYCLE_HISTORY]
[--gateway-trace-records GATEWAY_TRACE_RECORDS]
[--verify-packet VERIFY_PACKET]
[--expected-gateway-terminal-result-sha256 EXPECTED_GATEWAY_TERMINAL_RESULT_SHA256]
[--expected-gateway-lifecycle-history-sha256 EXPECTED_GATEWAY_LIFECYCLE_HISTORY_SHA256]
[--expected-gateway-trace-records-sha256 EXPECTED_GATEWAY_TRACE_RECORDS_SHA256]
Check a submitted synthetic incident trace and emit a local process audit.
options:
-h, --help show this help message and exit
--task TASK local frozen incident task JSON
--trace TRACE local submitted trace JSON
--expected-task-sha256 EXPECTED_TASK_SHA256
--expected-trace-sha256 EXPECTED_TRACE_SHA256
--institutional-access INSTITUTIONAL_ACCESS
declared institutional access record JSON
--institutional-access-scope INSTITUTIONAL_ACCESS_SCOPE
institutional access scope JSON
--gateway-effect-component GATEWAY_EFFECT_COMPONENT
typed gateway_effect component JSON
--gateway-terminal-result GATEWAY_TERMINAL_RESULT
--gateway-lifecycle-history GATEWAY_LIFECYCLE_HISTORY
--gateway-trace-records GATEWAY_TRACE_RECORDS
--verify-packet VERIFY_PACKET
offline recheck of emitted process-audit packet JSON
--expected-gateway-terminal-result-sha256 EXPECTED_GATEWAY_TERMINAL_RESULT_SHA256
--expected-gateway-lifecycle-history-sha256 EXPECTED_GATEWAY_LIFECYCLE_HISTORY_SHA256
--expected-gateway-trace-records-sha256 EXPECTED_GATEWAY_TRACE_RECORDS_SHA256
flywheel journey
usage: flywheel journey [-h]
{create,append,check,cancel,export,list,resume} ...
Durable actions plus legacy evidence start, project, and recheck.
positional arguments:
{create,append,check,cancel,export,list,resume}
options:
-h, --help show this help message and exit
flywheel lanes
usage: flywheel lanes [--probe]
List every lane and whether it is installed; --probe checks each MCP server.
flywheel loop-status
usage: flywheel loop-status
Measure the closed loop's handoffs in a scratch folder.
flywheel lsp
usage: flywheel lsp [-h] [--limits] {ask,diagnostics,verify} ...
lsp_cli.py -- ask a language server about a file, and keep the record of it.
positional arguments:
{ask,diagnostics,verify}
ask ask about one position in one file
diagnostics what the server says is wrong with a file
verify recheck a run's log offline
options:
-h, --help show this help message and exit
--limits print what an LSP run record does not prove.
flywheel mcp
usage: flywheel mcp [-h] {list,add,remove,login,logout} ...
`flywheel mcp`: list, add and remove the MCP servers `flywheel code` starts.
positional arguments:
{list,add,remove,login,logout}
list every configured server and where it comes from
add add a server
remove remove a server
login sign in to an HTTP server with OAuth
logout forget the stored token
options:
-h, --help show this help message and exit
flywheel monitor
usage: flywheel monitor [-h]
{coverage,pending,approve,reject,verify,install,owner,witness,import-ocsf,sandbox,outcome,overrides,gate,gate-verify}
...
positional arguments:
{coverage,pending,approve,reject,verify,install,owner,witness,import-ocsf,sandbox,outcome,overrides,gate,gate-verify}
gate admission gate for a text monitor
gate-verify re-derive and check a gate result
options:
-h, --help show this help message and exit
flywheel packs
usage: -c [-h] [--json] [name]
packs_cli.py -- what each domain pack declares, and what it refuses to decide.
positional arguments:
name one of: finance, law, medicine, or the path to a pack
declaration
options:
-h, --help show this help message and exit
--json
flywheel plugin
usage: flywheel plugin [-h] {install,list,remove,marketplace,search} ...
`flywheel plugin`: install, list and remove plugins for `flywheel code`.
positional arguments:
{install,list,remove,marketplace,search}
install install from a folder or a git URL
list installed plugins
remove remove an installed plugin
marketplace add or list plugin marketplaces
search search the added marketplaces
options:
-h, --help show this help message and exit
flywheel rederive
usage: flywheel rederive [-h] run
Re-check a claimed improvement on the gate's seeds (preview).
positional arguments:
run JSON with gate.seeds, claim, baseline, treated, replay
options:
-h, --help show this help message and exit
flywheel report
usage: flywheel report [-h] {scope} ...
Reports built from saved records.
positional arguments:
{scope}
scope calls that reached past what was allowed
options:
-h, --help show this help message and exit
flywheel setup
usage: flywheel setup [-h]
[--provider {anthropic,deepseek,gemini,openai,openrouter}]
setup_cli.py -- `flywheel setup`: connect a model in one step.
options:
-h, --help show this help message and exit
--provider {anthropic,deepseek,gemini,openai,openrouter}
store this provider's API key
flywheel traces
usage: flywheel traces [-h]
{status,doctor,delete,verify-gone,export,verify-export,retention,presence,capture,import,encrypt,hooks}
...
See, keep, move, prove and destroy the traces your agents leave.
positional arguments:
{status,doctor,delete,verify-gone,export,verify-export,retention,presence,capture,import,encrypt,hooks}
status every trace store, its protection and its gaps
doctor check hook mounts, the capture channel and custody
delete plan, then apply, a deletion with its closure
verify-gone search custody files for a phrase you deleted
export write a verifiable plaintext copy of your traces
verify-export verify an export folder or zip
retention how long custody keeps traces
presence the owner-presence method for custody operations
capture what the capture hooks send and keep
import copy client transcripts into custody (encrypted where
an OS key store is available)
encrypt encrypt traces written before encryption at rest
hooks hook mount lines for Claude Code and Codex
options:
-h, --help show this help message and exit
flywheel up
usage: flywheel up [--port 8799] [--probe] [gateway options]
List the lanes, then start the local gateway and browser shell.
flywheel update
usage: flywheel update [-h] [--check] [--json] [--apply] [--auto {on,off}]
update_cli.py -- `flywheel update`: is a newer Flywheel out, and how to get
it.
options:
-h, --help show this help message and exit
--check same as no flag: check and print
--json
--apply upgrade now (pip installs)
--auto {on,off} a weekly check when flywheel code starts; it never installs
flywheel verify-share
usage: flywheel verify-share [-h] [--github] [--json]
[--family-from {repo,prefix}]
items
positional arguments:
items
options:
-h, --help show this help message and exit
--github
--json
--family-from {repo,prefix}
flywheel why
usage: flywheel why <receipt.json | dir> [claim-digest-prefix]
flywheel workstream
usage: flywheel workstream [-h] [--json] [--reference PATH]
{run,settle,audit,example} [declaration]
workstream_cli.py -- settle a dependency graph of obligations from the shell.
positional arguments:
{run,settle,audit,example}
declaration
options:
-h, --help show this help message and exit
--json emit the receipt instead of the rendering
--reference PATH a flywheel.mhs.reference/v1 driver file, repeatable;
an instrument obligation with no reference for its
device settles unverifiable
flywheel writing
usage: flywheel writing [-h]
{status,doctor,init,proposal,section,revision,diagnose,card,candidate,decision,review,export}
...
positional arguments:
{status,doctor,init,proposal,section,revision,diagnose,card,candidate,decision,review,export}
options:
-h, --help show this help message and exit