Skip to Content
Krad ADE
User guide

Checkpoints and rewind

Cut a chat back to one of your messages, bring the files back to that point, and undo the restore.

Rewind cuts a chat back to one of your messages: you edit it, the later messages go, and the harness answers it again. It rewinds the conversation, and the files too where the harness can restore them or the app took a checkpoint of that turn.

Rewind a message

Wait for the chat to be idle

Rewind works only while the chat is idle, with nothing waiting in its queue. A chat that is still starting asks you to send the edit again in a moment.

Edit the message

Use the edit button of one of your messages, Edit and send again. The message opens in an editor in place; change it, then Send, or Cancel.

Choose what to rewind

When the agent changed files after that message, the app asks "Rewind the files too?" with Conversation and files, Conversation only and Cancel. Both choices remove the later messages.

What each harness restores

HarnessRewinds the conversationRestores filesHow
Claude CodeYesYesIts own file checkpointing, which the app turns on for its chats
opencodeYesYesIts own revert
GatewayYesYesThe engine's snapshots
CodexYesYesA checkpoint the app takes before each turn
ACP agentsNoNo

With Claude Code, opencode and the Gateway, the harness restores the files itself. It puts back what the agent's own edits changed, but not changes made by shell commands.

Checkpoints

A checkpoint is the state of the group's repository files that the app saves just before a chat turn, for harnesses that cannot restore files themselves. Today that is Codex: its revert keeps files, so the app takes a checkpoint before each message it hands over.

  • A checkpoint holds every file git does not ignore, tracked or untracked, as it was before the turn. It includes changes made by shell commands.
  • It is saved as a git tree object in the repository's own object store, through a scratch index, so your index, branch and stashes are left alone. No commit or branch is created.
  • The chat keeps the id of each turn's checkpoint in the layout. Rewinding to a message drops the checkpoints of the turns after it.
  • The group's folder has to be inside a git repository. Without one, or when taking it fails, the turn has no checkpoint and a rewind to it is conversation only.

When you rewind a Codex chat to a turn with a checkpoint, the app compares the files with it. If nothing differs, it rewinds the conversation directly. Otherwise it asks "Rewind the files too?" and lists the files the restore would touch, up to twelve and then how many more, each marked when it is brought back or deleted.

Undo the restore

Restoring a checkpoint first saves the current files as another checkpoint, so the restore can be undone:

  1. After the restore the chat says the files were restored to before the edited message.
  2. Undo asks "Undo the file restore?", lists the files and puts them back as they were just before the restore. Dismiss keeps the restored files.
  3. If the files already match the moment before the restore, there is nothing to undo.

If the conversation rewind fails after the files were restored, the app puts the files back by itself and says so.

Checkpoints are git objects that no branch points to. Git's own garbage collection can prune unreachable objects after a while, and a checkpoint that is gone can no longer be restored.

  • Chat for the composer, asks and the terminal view.
  • Harnesses for what each harness supports.
  • Review for reverting a session's changes block by block.

On this page