koh

@june

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

Zig

v2.1.15 · 517 saves · 27,669 lines · updated 3 hours ago · trusted

517 saves
105 files ⇓ bundle
517 saves
8f9e4ee1bc45remove provider-specific release signing from builds (v2.1.15)dev3 hours ago
8d21af75d4e2align README with current runtime behaviordev4 hours ago
438cb6d24792remove orphan types test rootdev4 hours ago
c9cb1b1fc11dfail offers when visibility updates faildev5 hours ago
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