nlock lets you do the work in a room first instead of on the real host.
A room just feel's exactly like the host, but keep's persistent changes isolated until you decide what to do with them.
With nlock you can:
- create rooms
- work normally inside them
- inspect what changed
- commit room changes to host
- list commit history
- rollback to a previous commit
- discard the room or keep it as long as you want
nlock room create myproj
nlock room enter myproj
# do work inside the room
nlock room diff myproj
nlock room commit myprojIf the experiment was not worth keeping:
nlock room delete myprojCreate a host commit from a room's pending changes:
nlock room commit <room-name>Show global commit history (across all rooms):
nlock commit logRollback a specific commit id from the log:
nlock rollback <commit-id>- Linux developers
- Linux power users
- agent runtimes that want one room per task
- homelab and self-hosting users
- Linux-first
- room-first workflow
- host-like experience
- conservative commit semantics
- cheap discard
- rollback for ordinary supported changes
Design notes:
If you want to propose design changes or make suggestions, please Make a PR in design folder with your proposed changes.
MIT
