Version control with signed commits
A content-addressed version control system, written in Rust.
Every commit carries an Ed25519 signature that you can check against the signing key. kit names every object by its BLAKE3 hash and stores signed attestations about commits. The commands follow Git where that makes sense. The guide for Git users lists the differences.
kit is alpha software. APIs and CLI flags can change in any 0.x release.
Get started
Install the CLI
sh
$ curl kit.storage | shThe script downloads the release archive for your platform and verifies its cosign signature. It then installs kit into ~/.local/bin.
Add the agent skill
SKILL.md teaches coding agents to use kit.
What kit does
- Every object ID is the BLAKE3 hash of the canonical bytes of the object.
- Every commit carries an Ed25519 signature.
kit atteststores in-toto v1 Statements in DSSE envelopes. The commit hash is the subject.- Large files split into content-defined chunks. A small edit stores only the edit.