Version-control your filesystem.
Then run it.
hako is a content-addressed, version-controlled filesystem with a built-in container runtime. Commit, branch, merge, and roll back container state like source code.
# a fresh workspace is a usable, versioned Linux rootfs $ hako init $ hako pull alpine # pull a real OCI image $ hako is alpine # switch identity โ instant $ hako ls / # browse it, no mount # edit the filesystem and snapshot it $ hako write /etc/motd "hello" $ hako commit -m "set motd" $ hako run alpine sh # run it for real
What makes it different
โ Content-addressed
BLAKE3-hashed chunks in a prolly tree, with structural sharing across every container and commit. Identical data is stored once.
โ Real version control
Commits, branches, three-way merge with conflict detection, diff, and tags โ for the filesystem of every container.
โ OCI images
Pull from Docker Hub and any registry. The image becomes the container's first commit; switch between images with hako is.
โ Runs everywhere
Read/write commands are pure tree ops โ instant on Linux, Windows, and macOS. hako run isolates with namespaces, bridged via WSL2 / Lima.