koh
Version control designed for the solo developer. You can learn it in five minutes. Every koh save is a complete snapshot of your project. Every file. Reversible with one command. Two lanes: dev to experiment freely, main to ship. Extraordinarily fast.
https://koh.asha.software
Details
Koh
Version control for the solo developer.
Koh is a single binary. No staging area. No remotes. No merge conflicts between people. Just save, undo, and promote — built around how one developer actually works.
Two lanes. One rule.
dev is your scratch pad. main is the official record. Save freely on dev, promote what's good to main. That's the entire branching model.
koh save "add argon2id key derivation"
koh promote
Every save is a complete snapshot
Koh uses a content-addressed object store. Unchanged files between saves cost zero storage. Everything is Blake3-hashed and zlib-compressed. The manifest is the source of truth — the database is a rebuildable index.
If you lose the database: koh recover. It rebuilds from manifests. Nothing is lost.
Safety is the default
Every destructive command shows a preview and prompts for confirmation. The default answer is always N. Pressing enter without reading is always safe.
koh undo rolls back saves. koh discard restores the working tree. koh peek reads a historical snapshot into a temporary directory without touching HEAD. koh load --checkpoint returns you to the last known-good state before a risky session.
Built for agents
koh checkpoint "before opus refactor"
koh save --agent "claude-opus-4" --session "auth refactor" "extract token validation"
koh undo --session
Sessions group related saves. Checkpoints mark safe rollback points. --json output on every read command. Koh maintains LOG.md automatically — every save, checkpoint, tag, and promotion is recorded. Agents open it and immediately know the project's recent history.
The numbers
| | | |---|---| | Commands | 38 | | Source | ~9,300 lines of Zig | | Test suite | 218 cases across 12 suites | | Dependencies | none — single statically-linked binary | | Storage format | Blake3 + zlib · JSON manifests · SQLite index |
Install
curl -fsSL https://koh.asha.software/install.sh | sh
Self-update
koh update
Koh updates itself from Kepr. Checksums verified. Atomic install.
koh.asha.software · Asha Software · MIT