Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@umarise/cli) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@umarise/cli
Anchor files to Bitcoin. Verify proofs offline.
npm install -g @umarise/cliUsage
export UMARISE_API_KEY=um_your_key
# Anchor a file
umarise anchor document.pdf
# First run output:
# ✓ hash computed: sha256:a1b2c3...
# ✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
# ℹ proof.ots pending — Bitcoin confirmation takes ~2 hours
# ✓ certificate saved: document.pdf.proof
# After ~2 hours, run again:
umarise anchor document.pdf
# Second run output:
# ✓ hash computed: sha256:a1b2c3...
# ✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
# ✓ proof.ots included (Bitcoin block 935037)
# ✓ proof saved: document.pdf.proofSame command, always does the right thing. No daemon. No state files.
Commands
umarise anchor <file>
Hash and anchor a file. Creates a .proof ZIP immediately.
- First run: bundle contains
certificate.jsononly (Bitcoin proof pending) - After ~2 hours: bundle contains
certificate.json+proof.ots
umarise anchor document.pdfumarise proof <file>
Full proof lifecycle in one command:
- Hash the file locally (SHA-256)
- Anchor the hash (or detect it's already anchored)
- Check if Bitcoin proof is ready
- If ready: download
.ots, build.proofZIP, verify locally
Idempotent — run it as many times as you want on the same file.
umarise verify <file> [proof]
Verify a file against its .proof bundle. Tries offline verification first (OpenTimestamps), falls back to online.
umarise verify document.pdf
# or explicitly:
umarise verify document.pdf document.pdf.proofOutput
Anchor (before Bitcoin confirmation)
✓ hash computed: sha256:a1b2c3...
✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
ℹ proof.ots pending — Bitcoin confirmation takes ~2 hours
✓ certificate saved: document.pdf.proofAnchor (after Bitcoin confirmation)
✓ hash computed: sha256:a1b2c3...
✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
✓ proof.ots included (Bitcoin block 935037)
✓ proof saved: document.pdf.proofVerify
✓ hash matches
✓ anchored in Bitcoin block 935037
✓ no later than: 2026-03-04
✓ proof valid — independent of UmariseProof bundle
<file>.proof is a ZIP containing:
certificate.json— origin metadata (hash, origin_id, timestamp, block height)proof.ots— OpenTimestamps binary proof (Bitcoin anchor)
The CLI is content-blind: your file never leaves your system. Only the SHA-256 hash is transmitted. You are responsible for storing the original file alongside the .proof bundle.
You can verify independently — no Umarise infrastructure needed:
unzip document.pdf.proof
cat certificate.json # inspect origin metadata
ots verify proof.ots # verify against BitcoinOr use the reference verifier: verify-anchoring.org
Configuration
| Variable | Required | Description |
|---|---|---|
UMARISE_API_KEY |
For anchor and proof |
Partner API key (um_...) |
Or pass --api-key <key> to the command.
verify requires no API key — verification is a public utility.
What this CLI does NOT do
- Store files (hash-only, bytes never leave your system)
- Manage accounts or sessions
- Interpret content or meaning
- Replace legal processes
License
Unlicense (Public Domain)