00 / DOCS
Quickstart
LunarFS turns any repo into a content-addressed store, then forks isolated copy-on-write workspaces in milliseconds. Files materialize only when read.
01 / INSTALL
Install
The lunar CLI is free. Build it from source with Cargo (mounting needs FUSE on Linux or FUSE-T on macOS):
cargo install --path . --features fuse
lunar --help02 / INGEST
Ingest a repo
Content-address every file. Re-ingesting an unchanged tree returns the same root hash, so nothing is stored twice.
lunar ingest ~/projects/my-app
# -> c262082820a34c68a4e9647fbec08faa0a7563955f9313997c20922d8f86451803 / FORK
Fork a workspace
Forks are O(1): they copy the root ref, not the bytes. Spin up one per agent.
lunar ws fork --from HEAD --label agent-1
lunar ws fork --from HEAD --label agent-2 --ephemeral
lunar ws ls04 / MOUNT
Mount it
The mount is instant. Reading a file hydrates just that blob on demand.
lunar mount ~/projects/my-app /tmp/my-app-view
ls /tmp/my-app-view # files appear immediately
cat /tmp/my-app-view/app.js # this read hydrates the blob05 / SYNC
Sync across machines
Point the CLI at a LunarFS server, then push and pull workspaces. Forking a remote workspace copies only the root ref.
lunar login # persists server URL + token to ~/.lunar/config
lunar push # push local CAS tree to a remote workspace
lunar pull # pull a remote workspace into the local CAS
lunar fork <workspace> # O(1) fork of a remote workspace06 / REFERENCE