CLI
stashjs command (npx @blamejs/stash <subcommand>) and composes ONLY the query and maintenance verbs: verify, stats, prune, list, tombstones, has. It never moves bytes, hands out no capability, and streams no blob, so push, apply, pop, store, drop, and clear belong to the embedding application rather than a maintenance tool.
The root comes from --root <dir>, else STASH_ROOT, else ./.stash, and it must already exist as a disk backend layout: a missing root is refused, never conjured from a typo. Add --json to any subcommand for a machine-readable document instead of the human table.
Single-writer-per-root is the store's operating constraint (SPEC.md 6): every subcommand except verify runs the crash-recovery scan first and can reclaim a stale claim, so point the CLI at a stash whose owning process is stopped, or at a cold-standby replica, never at a root a live app is serving.
Errors fail closed with stable exit codes and never echo a ref, a meta value, or a filesystem path. Run under node --permission with read/write scoped to the root (plus read on the install dir) exactly as the library requires.