Skip to content
BitExactdocs
Documentation
On this page

Administration from the command line#

The viewer is where auditors and reviewers work: runs, verify, cases and reviews, evidence packs and the pack library, holds, redaction requests, replay, fork and regression suites. The acts below are done with the bitexact command instead. Each is there on purpose, and the reason is almost always the same: the act needs a secret, or runs a service, that has no business on the host serving a browser.

Needs a key the viewer must never hold#

ActCommandWhy not in the browser
Create the recorder keybitexact keygen, bitexact recorder-keyThe private key is generated where it will sign, or inside an HSM or KMS; it never crosses a web request.
Sign an export or an evidence packbitexact export --sign, bitexact evidence-pack --signThe viewer exports unsigned bundles; a signature binds an identity, and that key belongs with the operator who vouches for it.
Sign attestation receiptsbitexact receipts RUN --key --org; bitexact verify-receipts checks themEach receipt is signed; the receipt key stays with the operator (see Attestation receipts in the integrations guide).
Set what the evidence keeps of each fieldbitexact capture (policy show, test, keygen)The capture policy is a file on the host and the capture key must be kept apart from the evidence; the viewer shows the policy in force, read-only, under Settings › Capture policy.
Test a value against a hash-only fieldbitexact verify RUN --open 4:on_behalf_of --candidate-file FILE, bitexact verify RUN --open-withheld 9 --candidate-file FILE (a step and a field path, or a gap's step; with --by)It needs the capture key, which never crosses a web request; every test is recorded on the run's custody chain.
Define custom rolesbitexact rolesEvery role event is signed with the recorder key, so an unsigned grant cannot pass as one. The viewer shows the roles, read-only.
Run the PKIbitexact pki (init, issue, revoke, crl)The CA's private key signs every host's identity.
Sign the transparency logbitexact log checkpoint, bitexact log backfillSigned with the recorder key; witnesses cosign.
Anchor run headsbitexact anchorSigns, and talks to your WORM store or time-stamping authority.

Runs a service, not a page#

ActCommand
The recording proxybitexact serve
The MCP relay, recording every tools/call between an MCP client and serverbitexact mcp-proxy (wrapping a stdio server, or --listen for Streamable HTTP)
A host collectorbitexact collector
The recorderbitexact recorder (with --health-port for probes and metrics)
A witness, run by a third partybitexact witness
The viewer itselfbitexact view

Changes the store wholesale#

ActCommandWhy
Retention, archiving and purgebitexact retention, bitexact archive, bitexact purgeThey act on many runs at once on a schedule; they belong in a reviewed job, not a button. Purge refuses held runs, and leaves a purge record signed with the recorder key so the transparency log reads each run as purged, not lost.
What an archived run carriesbitexact archiveBeside each run's bundle, <run>.sidecars.json holds its custody trail, failure markers and other sidecars, and under governance.roles the whole ledger of every custom role its custody entries name. Each custody entry names the role-ledger head in force when it was written (role_head, see identity-access), and the role ledgers are global, not dropped with the month - but they can be redefined, damaged or lost, and an archive kept for decades must resolve that head on its own. The ledger is carried whole, as the store holds it at archive time: it is append-only, so it contains every head the custody names. A role ledger the store holds but cannot read fails that run's archive, so nothing is dropped. Built-in roles have no ledger and carry the marker built-in.
Move between backendsbitexact db-transferA migration, run once, with the store quiet.
Repair and reindexbitexact repair, bitexact reindexRecovery after a crash or a restore - see the restore drill under Backup and restore in the deployment guide.
Seal a proxy-recorded runbitexact seal RUNThe operator who knows a run is finished says so.

| Change a workflow's definition | bitexact workflow create, register-version, promote, set-retention, set-records-regime, deprecate | A workflow's versions, retention, records regime and withdrawal are configuration, reviewed like code. The viewer shows them, read-only. | | Audit the transparency log | bitexact log status, log audit, log heads, log consistency | Reads the whole log; an expired license still runs them. |

Belongs in CI#

bitexact lint (the determinism linter), bitexact suite run and bitexact regress (the regression gate), bitexact drift, bitexact fork-matrix, bitexact strict (fail on any capture gap) and bitexact coverage report --expected are made to fail a build. bitexact qualify measures a model configuration's determinism before it is relied on. The viewer shows their results; the pipeline runs them.

Setup and connections#

bitexact quickstart and bitexact seed (a real sample run) start a new deployment. bitexact events check validates the event delivery configuration, bitexact events test sends a test event to each destination, and bitexact events status, list and retry show and requeue what did not arrive (Event delivery).

Also in the viewer#

These read or act on single runs, and the viewer does the same for anyone whose role allows it: bitexact list, show, verify, verify-report, export, evidence-pack, provenance-bundle, otel-export, case, forks, hold, release-hold, and redact and redaction (erasure under dual control).

License and health#

bitexact license shows the license and whether this deployment's recorder key is one it names; bitexact version names the release for support. bitexact health reports integrity, capacity and every expiry on the calendar - see Ops health. The viewer's Settings show the same license and health.

Settings in the viewer#

Settings is one short section per concern, each at its own address (#settings/health, #settings/license, and so on; #settings alone opens Health). A desktop lists the sections down the left; a phone picks one from a list at the top.

  • Health: the store's status, five counts (runs failing verification, runs rolled back behind an anchor, interrupted writes, recording failures, unconfirmed streamed responses), the alerts, capacity, and the health command to run in a monitor.
  • License: who holds it, when it expires and how many days are left, what it grants in one line (the list opens under it), and where to renew. Then the environment and the installed version.
  • Keys: the same recorder-keys table the Trust page shows, each key with where it comes from (the evidence, this inspector, the license), and the bundle-signing key, which the viewer never holds.
  • Retention: the legal holds in force (a link to them on Runs), and for a role that may see it, a preview of what a purge would take now. The purge itself stays bitexact purge on the host.
  • Access: on a deployment with no authentication, a warning first (red on prod). Then who is signed in and their scope, and one table of every role against every action, as the server allows them; custom roles show where each came from. Roles are defined with bitexact roles on the host.
  • Access log (for a role that administers the viewer): who viewed or listed evidence, narrowed by who, action and run.
  • Command line: what is done on the host instead, and why, as commands to copy in this deployment's form.
  • This browser: the theme, and the way back to Get started.

Every command is in the CLI reference.