Sero has two related recovery actions. A manual checkpoint creates a Git commit from all current workspace changes. Undo this turn restores an internal snapshot and rewinds the selected chat session. Both actions change real workspace files.
| Action | Restores files? | Rewinds chat/session? | Typical use |
|---|---|---|---|
| Manual checkpoint | No | No | Commit the current file state before risky work. |
| Restore checkpoint | Yes | Usually no; legacy restore may branch if tied to a turn | Return workspace files to a saved checkpoint. |
| Undo this turn | Yes | Yes | Retry after an agent turn made unwanted changes. |
| Git restore/revert/reset | Yes, depending on command | No | Source-control recovery or branch/history work. |
None of these replace reviewing file changes.

Use a manual checkpoint before a risky change, large refactor, or experimental prompt. Sero runs git add -A and creates a commit. This includes tracked changes, new files, and deletions. If the workspace has no changes, Sero does not create a checkpoint.
Good moments to checkpoint:
Before you create a checkpoint, review all staged and unstaged changes because Sero stages the full workspace scope. Remove credentials, generated secrets, and unrelated files. Then create the checkpoint.
Restoring a manual checkpoint changes files. Sero creates a restore commit only when the restore changes files. It checks out the files from the selected commit, removes tracked files added after it, and runs git clean -fd. This command permanently deletes untracked files and directories. Ignored files are not removed by git clean -fd.
Before restoring:
Use Undo this turn when an agent turn made unwanted changes. Sero first rewinds the session tree to the related user message. It then restores the internal file snapshot and puts the original prompt text back in the composer when that text is available.
Use it when:
The confirmation dialog shows the files that will change. Review this list before you confirm. Changes made after the snapshot can be lost, including manual edits that are not part of the agent turn.
Git operations still affect the real repository. Checkpoints can help, but they do not make destructive commands safe.
Practical habits:
| Symptom | What to check |
|---|---|
| Restore is blocked while agent runs | Stop/finish the streaming turn first. |
| Files changed but chat did not rewind | You likely used VCS/checkpoint restore rather than turn undo. |
| Chat rewound but diff still looks stale | Refresh the source-control/Git view after restore. |
| Restore overwrote work you wanted | Check Git history, stash, backups, and any newer checkpoints. |