How It WorksProof
Book a Free Workshop

Developers

Open source tools for verifying, explaining, and locking financial data. No AI. No inference. Pure deterministic arithmetic.

Quick start — what changed between two quarterly reports?

# What's in each quarterly report?
vacuum q3/ q4/ | hash | lock save --name quarterly

# What actually changed?
rvl q3/positions.csv q4/positions.csv
# → 3 of 847 rows changed, net +$2.1M notional, 1 new position

# Seal the evidence
pack create --lock quarterly.lock --include q3/ q4/
# → pack-a7f3b2.pack (content-addressed, tamper-evident)

How the tools work

Every CMD+RVL tool follows four rules:
1
Structured outputEmits JSON with a version field, an outcome (domain result), and a refusal (when it can't operate).
2
Self-description--describe emits a machine-readable operator manifest. --schema emits the output JSON Schema.
3
WitnessAppends a content-addressed, hash-chained record on every invocation. Every run is auditable.
4
DeterminismSame inputs, same output, every time. No randomness, no side effects, no network calls in the truth path.
Tools that follow the protocol compose automatically: assess scores any tool's output via policy rules. pack seals any tool's output into tamper-evident evidence. The witness ledger records every invocation. No central coordinator — the protocol is the coordinator.

Protocol Tools

Composable Rust CLIs. Each tool does one thing. Agents decide what to run — these tools decide what is true.
vacuum (what's there?) → hash (prove identity) → fingerprint (recognize templates) → lock (pin inputs) → shape (comparable?) → rvl (what changed?) → pack (seal the evidence)
Open Source

vacuum

Enumerates artifacts in scope. Emits a deterministic sorted JSONL manifest with size, mtime, and MIME type.View on GitHub

In Development

Coming Soon

verify

Invariant checks — single-artifact rules (JSON) and cross-artifact constraints (SQL via DuckDB).
Coming Soon

benchmark

Extraction accuracy scoring. Checks (entity, field, value) assertions against candidate datasets.
Coming Soon

compare

Exhaustive cell-by-cell diff without materiality compression.
Coming Soon

assess

Decision framing — PROCEED / ESCALATE / BLOCK against declared policy.

Install all protocol tools

brew install cmdrvl/tap/vacuum
brew install cmdrvl/tap/hash
brew install cmdrvl/tap/fingerprint
brew install cmdrvl/tap/profile
brew install cmdrvl/tap/lock
brew install cmdrvl/tap/shape
brew install cmdrvl/tap/rvl
brew install cmdrvl/tap/canon
brew install cmdrvl/tap/pack

Machine-Readable Data

Access structured finance facts, outcome definitions, and glossary terms in JSON format. AI-crawler friendly, citation-ready.
View machine data

Built in the open

We believe financial data should be more accessible. Follow our work on GitHub.CMD+RVL on GitHub

PRODUCTS

OutcomesData ProductsSignals

EVIDENCE

All Evidence

PRODUCTS

OutcomesData ProductsSignals

EVIDENCE

All Evidence

RESOURCES

How It WorksCalendarDiscoveryWays to WorkFoundationsGlossaryBlog

DEVELOPERS

Tools & Open SourceMachine Data

COMPANY

AboutPartnersContactLogin

CONNECT

GitHubX (Twitter)LinkedIn

MARKETPLACES

AWS MarketplaceSnowflake MarketplaceDatabricks MarketplaceKaggleWhop
© 2026 CMD+RVL. All rights reserved.
Decisions that hold up under scrutiny. Built on open standards.
PrivacyTermsSub-ProcessorsSecurity