Atomic Filesystem Snapshots
SHA-256 content-addressed snapshots capture filesystem state before and after every agent session. Restore any session with a single command.
Every change is reversible
AI agents modify files at scale. A single coding session can touch dozens of files across your project. When something goes wrong — a broken refactor, an incorrect dependency change, or unwanted modifications to configuration files — you need a reliable way to undo everything.
nono captures a content-addressed snapshot of every file in the sandbox scope before the agent starts. Each file is hashed with SHA-256 and stored in a deduplicating content store. After the session ends, a second snapshot records the final state. The diff between snapshots tells you exactly what changed, and nono rollback restore restores the original state atomically.
Content-Addressed Storage
Files are stored by their SHA-256 hash, not by path. Identical files across sessions share storage. The snapshot database grows only by the size of unique content, making frequent snapshots practical even for large projects.
Session Diffs
Review exactly what an agent changed before deciding to keep or revert. The diff output shows file-level and line-level changes, including new files, modified files, and deleted files. Pipe to jq or diff for integration with existing workflows.
$ nono run --rollback --allow ~/projects/myapp -- claude# Agent makes changes...# nono captures before/after snapshots automatically$ nono rollback listSESSION ID COMMAND FILES CHANGED20260228-143201-48291 claude 1220260228-101544-31072 claude 3$ nono rollback restore 20260228-143201-48291Restored 12 files to pre-session state.
$ nono rollback show 20260228-143201-48291 --diff--- a/src/auth/middleware.ts+++ b/src/auth/middleware.ts@@ -12,6 +12,18 @@+export async function validateToken(token: string) {+ // Agent-generated code+ const decoded = jwt.verify(token, process.env.JWT_SECRET);+ return decoded;+}--- a/package.json+++ b/package.json@@ -8,6 +8,7 @@+ "jsonwebtoken": "^9.0.0",
Use Cases
Agent Recovery
Undo a broken refactor or incorrect dependency changes. One command restores the entire project to its pre-session state.
Experiment Safely
Let agents attempt ambitious changes knowing you can always roll back. Run multiple experimental sessions and keep only the best result.
CI Integration
Capture snapshots in CI pipelines. If agent-generated changes fail tests, automatically revert and report the failure with full diff context.
Get started with nono
Runtime safety infrastructure that works on macOS, Linux, and in CI.