Version history & rollback
Every save creates a version. Diff word-by-word, see change classification, restore with one click, n/p shortcuts.
How versioning works
| Action | What happens |
|---|---|
| Click Save | New version created (auto-incremented: v1, v2, v3…) |
| Edit → Save | New version, previous preserved |
| Click History | Sidebar opens with version list + diff viewer |
| Click Restore | That version becomes current (creates new version) |
No manual commits — it’s automatic, like Google Docs version history but for prompts.
Try the diff viewer
Select two versions below to see a word-level diff with change classification.
Diff Viewer
Edit either side, then compute a word-level diff.
v1 — original
v2 — revised
5 added3 removed
diff.txt
Write a detailed blog post about AI.
MakeInclude it3 shortexamples.
Diff viewer features
| Feature | Description |
|---|---|
| Word-level diff | Not line-by-line — individual words highlighted |
| Change classification | Added (green), Removed (red), Modified (yellow) |
| Summary bar | ”3 added, 1 removed, 2 modified” |
| Sync scroll | Both panes scroll together |
| n / p shortcuts | Next / Previous version (like less) |
| Side-by-side or unified | Toggle view mode |
Keyboard shortcuts (History panel)
| Key | Action |
|---|---|
n | Next version (newer) |
p | Previous version (older) |
Enter | Open selected version |
r | Restore selected version |
Esc | Close history panel |
Auto-save behavior
- Debounced: 2 seconds after you stop typing
- Version threshold: Only creates a new version if content changed > 10 characters
- Manual Save (Cmd+S): Always creates a version, even for tiny changes
Version data model
{
"versions": [
{
"id": "ver-uuid-003",
"versionNumber": 3,
"rawPrompt": "Write a {{tone}} blog post about {{topic}}.",
"variables": { "tone": "professional", "topic": "API design" },
"changeSummary": { "added": 2, "removed": 1, "modified": 0 },
"createdAt": "2026-07-15T10:30:00.000Z"
}
]
}
Access via API: GET /api/v1/sessions/:id/versions
Rollback vs Restore
| Action | Creates new version? | Use case |
|---|---|---|
| Restore | Yes (v4 = copy of v2) | “I want v2 back but keep history” |
| Delete version | No | ”v3 was a mistake, remove it” |
Best practices
| Habit | Why |
|---|---|
| Save before big edits | Gives you a clean “before” baseline |
| Name important versions | In editor: click version number → “Label v3: Client approved” |
| Use diff before restore | Verify you’re restoring the right changes |
| Weekly cleanup | Delete experimental versions, keep milestones |