Overview
How might we let people undo a bad agent turn by jumping the thread back to an earlier prompt or change?
When to use
- Coding agents that edit files across several prompts in one thread.
- Multi-step chats where a later ask undoes or breaks earlier work.
- Products where users need to discard “everything after this reply” without hunting version history.
- Any flow where confidence comes from knowing you can return to a labeled turn, not after something breaks.
When to skip
- Read-only assistants that never mutate state worth snapshotting.
- Environments with no durable storage for checkpoints.
- Tiny single edits where ordinary undo already covers risk.
States
Design checkpoints as restore points on the thread, not as a buried version menu.
- 01
Turn complete
An agent reply finishes. That point in the thread becomes a restorable checkpoint.
- 02
Thread continues
Later prompts and edits stack on top. Earlier checkpoints stay attached to their turns.
- 03
Restore offered
Earlier agent replies expose “Restore to this checkpoint” when newer turns exist.
- 04
Confirming
If restore removes later messages, say so before cutting the thread.
- 05
Restored
The thread ends at the chosen turn. Later prompts and their side effects are gone.
- 06
Continue from here
The user can prompt again from the restored point, or leave the checkpoint as-is.
Key UX elements
The parts that must be present for rollback to feel trustworthy.
Snapshot
Put restore on that turn in the thread.
A checkpoint action under an earlier agent reply beats a buried history panel.
Restore
One clear action: go back to this point.
Copy like “Restore to this checkpoint” should mean later turns disappear and work reverts.
Confirm
Warn when later messages will be removed.
Ask “Discard all changes up to this checkpoint?” before cutting the thread. Keep Cancel and Continue only.
Rules
Checkpoints that exist but are not labeled to the agent step they protected.
Restore that partially applies and leaves systems inconsistent.
No checkpoint before irreversible external side effects (send, charge, delete).
Infinite checkpoint lists with no prune or favorite.
Evidence
| Product | Implementation |
|---|---|
| Cursor | Agent checkpoints and restore tied to code changes. |
| Git-based agents | Commits or stashes as restore points before bulk edits. |
| Design tools with AI | Version history snapshots before generative edits. |
| Devin-style coding agents | Workspace snapshots users can roll back after long runs. |