annie Command Reference#
The public command surface of the annie binary. Run annie --help for global usage, annie --version for the build version, and annie <subcommand> --help for subcommand-specific help.
Public MVP boundary#
This page documents the ANNIE product-facing CLI surface. It is distinct from the public Sovereign Loop Core MVP CLI (sovereign_cli) in the runnable evidence repository. Do not treat this page as evidence that every ANNIE command is present in the public MVP.
Subcommands#
| Command | Purpose |
|---|---|
annie identity provision | Run the provisioning ceremony: snapshot PCRs, generate an ML-DSA-87 keypair, seal the secret under PCR policy, generate a TPM Quote, and write the genesis row to the audit ledger. |
annie identity show | Print the active identity fingerprint and ceremony details. |
annie license request | Print the active identity’s fingerprint, ready to paste into the purchase flow. |
annie license activate <path> | Verify a .lic file’s signature, check it binds to this host, and install it into the data directory. |
annie license info | Display the installed license (customer, tier, expiry, binding) or report that no license is installed. |
annie verify | Replay the local audit ledger. Walks the hash-chained event log and checks structural invariants, monotonic ordering, ML-DSA signatures, and known event kinds. Requires no network access; replay is independent by design. |
annie daemon | Start the JSON-over-stdio safety daemon. Verifies the installed license before opening the TPM; refuses to start if invalid or expired. |
Common options#
| Option | Applies to | Effect |
|---|---|---|
--data-dir DIR | All subcommands | Where ceremony artifacts and the audit ledger live. Defaults to $XDG_DATA_HOME/annie or ~/.local/share/annie. |
--force | identity provision | Supersede an existing identity if one is already provisioned in the data directory. |
--help, -h | All subcommands | Print subcommand-specific help and exit. |
--version, -V | Top-level only | Print the build version and exit. |
Exit codes#
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | Invalid arguments or unknown subcommand |
Specific subcommands may return additional non-zero codes for failure modes documented in their respective help text. The full per-failure-mode exit-code table is published with each release in the binary’s release notes.
Examples#
Provision a new identity in the default data directory:
annie identity provisionReplay and check the local audit ledger:
annie verifyPrint the version of the installed binary:
annie --versionGet subcommand-specific help with details on flags and behaviour:
annie verify --help
annie identity provision --help
annie license activate --helpRelated#
annie-issue-license— separate offline binary used by the issuer side of the license flow. Not included in customer release builds; documented separately in the operator runbook.- Audit replay walkthrough — step-by-step on running
annie verifyagainst an exported archive for a third-party audit.