CLI
Cryptographic proof tools for the agent economy — single binary, no runtime dependencies
Provable CLI
Single binary — seal, verify, and manage from your terminal
Install
The CLI is in early access: a single binary for macOS (Apple Silicon), plus Linux binaries for stateless CI. Email hello@provable.info for access.
# Generate your sealing key (needs no funding)
provable initSeal
Hash files or folders into a Merkle root, sign it, anchor it.
# A folder becomes one seal over its recursive contents
provable seal --mode=folder ./my-project
# These files become one seal
provable seal --mode=files a.txt b.txt
# Mode is inferred when every argument is the same kind
provable seal ./docs
provable seal report.pdf
# Key options
--proof <path> Write a portable proof bundle (captures git/CI provenance)
--meta k=v Signed provenance metadata (repeatable)
--no-anchor Seal without a chain witness (local/offline use)
--name / --version Override the seal name or version
--include-hidden Include dot-prefixed files and dirs in folder mode
--monitor Add the sealed path to the monitor watch list
--publish Upload file content to provable storage
--json Machine-readable resultVerify
Against your local store, or standalone from a proof bundle — no account, no API, and never through us.
# Against the local seal store
provable verify ./my-project
# Standalone, from a portable bundle — anyone can run this
provable verify --proof dist.proof.json ./dist
# Gate a pipeline on it
provable verify --proof dist.proof.json ./dist \
--expect-pubkey <publisher-hex> \
--max-age 720h --min-version v1.4.0
--offline Skip the on-chain check (signature + Merkle still enforced)
--strict Non-zero exit on failure against the local store
(bundle verification always fails hard)
--json Machine-readable reportAnchor
Witness a seal on the BSV blockchain. No wallet, no funding — you sign, provable.info pays and broadcasts.
# Anchor the latest un-anchored seal
provable anchor
# → ✅ Anchor successful!
# TX ID: e264318c...
provable anchor --all # drain every un-anchored seal
provable anchor --from-proof dist.proof.json # anchor straight from a bundle
provable anchor --dry-run # build the payload, send nothing
provable pending # what is waiting
provable pending --purge # discard un-anchored seals
# Anchoring fails closed. Exit codes:
# 3 unreachable 4 unauthenticated 5 over quota
# 6 payload rejected 7 broadcast failed
# --no-anchor on seal is the only way to exit 0 without a chain witness.Monitor
Background daemon that watches sealed files and alerts when they change, with diff and revert. Service install is macOS (launchd) only.
# Install as a launchd service (macOS)
provable monitor install
provable monitor start
provable monitor status
provable monitor stop
provable monitor uninstall
# Inspect or undo a change to a sealed file
provable monitor diff <path>
provable monitor revert <path>
provable monitor baseline updateProof bundles
One JSON file that proves what was sealed, by whom, and when — verifiable by anyone, offline, with no access to your systems.
# Emit at seal time
provable seal --mode=folder dist --proof dist.proof.json
# Or export afterwards from the local store
provable proof export ./dist -o dist.proof.json
# Stateless CI: one secret, no wallet, no local state
# Seals, anchors, and writes the txid into the bundle
PROVABLE_WIF=$SEAL_KEY provable seal --mode=folder dist \
--proof dist.proof.json --meta build_id=$RUN_IDAll Commands
| provable init | Generate the root sealing keypair |
| provable seal [paths...] | Seal files or folders |
| provable verify [path] | Verify against the store or a proof bundle |
| provable proof export [path] | Export a portable proof bundle |
| provable status|history|diff [path] | Seal state, versions, and changed files |
| provable anchor [--all|--from-proof] | Anchor seals to the blockchain |
| provable pending | Seals awaiting anchoring |
| provable register | Register this identity with provable.info |
| provable monitor install|start|stop|status|diff|revert|baseline|uninstall | File monitor daemon |
| provable admin register|approve|protect | Admin operations |
Flags
--json gives machine-readable output on init, seal, verify, status, history, pending, anchor and register. --debug is available everywhere. Config lives at ~/.provable/. Testnet (-t / --testnet) is a development build only — release binaries are mainnet.