Runic
CHECKPOINTS

Every applied change keeps a way back

Each change the agent applies stores the document as it was; ↩ Restore returns to that state at any later point.

Try it free →Read the docs

What a checkpoint is

Every proposal in the chat carries two full texts: the document before the change and the document after it. When you click Apply, the entry flips to “Applied ✓” and shows a ↩ Restore button. Restore writes the before-text back and posts “↩ Restored ‘<document>’ to its state before that change.” There is no confirmation dialog, and there does not need to be: Restore goes through the same write path as any edit, so ⌘Z in that document undoes it.

Checkpoints are not a stack. Each one returns the document to the moment before that particular change, whatever happened after. You can restore a change from an hour ago, keep working, then restore a later one — every applied entry stays usable.

Keyed by identity, not position

A proposal stores the id of the document it belongs to, not its position in the sidebar. Rename the document, drag it elsewhere in the list, create or delete other documents — Restore still finds the right one. If the document itself has been deleted, the chat says so: “no longer exists — nothing to restore.” On a team document where you are a viewer, it asks you to have an editor restore it.

They survive archiving and reloads

The conversation is saved to your account, so checkpoints are there in any browser you sign in from. When older messages fold into an archive (“📦 12 archived”), applied entries keep their before-text; open the archive and the ↩ Restore button is still there. Proposals that were never applied lose their payloads at archive time and are marked stale, since there is no Apply inside an archive.

Checkpoints and version history

Checkpoints are per applied AI change and live in the chat. Version history is per document and lives under the clock icon. They complement each other: a checkpoint is the fastest way back from one specific suggestion; a named version is how you pin a state you want to keep regardless of what the chat does.

Limits

“Clear” in the chat header removes the conversation and its archives, and the checkpoints with them. The inline “AI edit” bar on the selection toolbar is different from the chat: it shows its diff in the editor, Apply writes it, and an “AI edit applied” toast offers Undo for 15 seconds instead of a checkpoint. Route the request through Copy to chat when you want the checkpoint. The saved conversation is one blob capped at 400 KB per account; archiving drops the payloads of unapplied proposals to keep it small.

How to use it

  1. Apply a proposal
    Click Apply on any diff in the chat. The entry becomes “Applied ✓” and a ↩ Restore button appears beside it.
  2. Keep working
    Edit by hand, apply more proposals, switch documents. The checkpoint stays on its entry.
  3. Restore when you need to
    Click ↩ Restore on that entry. The document returns to how it was before that change and the chat confirms it.
  4. Find older ones
    If the entry has been archived, click the “📦 N archived” row to expand it; applied entries there keep their ↩ Restore button.
  5. Undo a restore
    Press ⌘Z in that document — a restore is an ordinary write on its undo stack.

Commands & shortcuts

↩ Restorereturn the document to its state before that applied change
⌘Zundo the restore itself
📦 N archivedexpand an archived stretch to reach older checkpoints
Clearremoves the conversation and all its checkpoints

Tips

  • Apply freely. Trying three variants of a change costs nothing when each one is a click away from undone.
  • Before a big restructure, save a named version too — checkpoints live in the chat, and Clear removes them.
  • Use Copy to chat rather than the inline AI edit bar when you want the change to keep a checkpoint.
  • You do not need to open the document first: Restore finds it by id and writes it there, whichever document you are looking at.

Questions

Is Restore a sequential undo?

No. It returns the document to the state before that one change, regardless of what was applied afterwards. Later checkpoints stay usable.

What if I renamed or moved the document?

Checkpoints are keyed to the document’s id, so renaming it or reordering the sidebar changes nothing. Only deleting the document, or clearing the chat, makes a checkpoint unusable.

Do checkpoints survive a page reload?

Yes. The conversation, its archives and their checkpoints are stored with your account and reload with it on any device.

Can a viewer restore a team document?

No. Viewers cannot write, so the chat asks you to have an editor restore it.