Preserve both versions when resubmitting (like GitHub version control) instead of forcing override choice

Feature request for product/service

Chat

Describe the request

I accidentally overwrote my previous chat today because of the “Submit from a Previous Message?” dialog. The two options—“Continue without reverting” and “Continue and revert”—were confusing, and I chose the wrong one. I hope others don’t have to learn this lesson the hard way.

The problem

When resubmitting from a previous message (e.g., after a failed send or when editing an earlier message), Cursor shows a dialog that forces you to choose:

  • “Continue without reverting”
  • “Continue and revert”

This is risky because:

  1. The wording is not intuitive—many users don’t understand what “revert” means in this context
  2. Choosing the wrong option can permanently discard your work
  3. There’s no way to compare both versions before deciding
  4. Once you choose, there’s no undo

Suggested improvement: keep both versions (like GitHub)

Instead of forcing a destructive choice, Cursor could preserve both states:

  • Keep both versions – Don’t overwrite. Store the current state and the state before that message as separate versions
  • Let users compare – Show a diff or side-by-side view so users can see what would change before committing
  • Avoid destructive choices – No single click that permanently discards work
  • Branch-like workflow – Similar to Git: you can try different paths without losing anything

GitHub doesn’t ask you to overwrite—it lets you compare, branch, and merge. Cursor could adopt a similar approach for chat/composer state.

Why this matters

Losing work because of a confusing dialog is frustrating. A version-preserving approach would be safer, clearer, and more aligned with how developers already think (Git, branches, diffs).

Thanks for considering this.

Operating System (if it applies)

Windows 10/11

Hi Edmund!

Thanks for the detailed write-up. I understand the frustration of losing work because of a confusing dialog, especially when you’re deep in a session.

A few things that might help immediately:

  • Checkpoints are your primary safety net here. Agent automatically creates snapshots before significant changes, and you can click any checkpoint in the chat timeline to preview and restore your files to that state. More details: Checkpoints

  • If you chose the wrong option and changes were lost, try Ctrl+Z (or Cmd+Z) immediately after to undo the file reverts

  • You can also recover from Local History: right-click any file and select Open Timeline to see previous states

  • And of course, Git remains the most reliable safety net for any work you want to keep permanently

To clarify what the dialog options do: “Continue and revert” restores your files to the state they were in at that message’s checkpoint. “Continue without reverting” keeps your current file state but still clears the conversation messages after the one you edited. So the file changes are optional, but the message history truncation always happens on resubmit.

Regarding the broader request for a Git-like branching model where both paths are preserved, and you can compare before committing – that’s great feedback, and your report on Forum helps with prioritization.

You might also find these related threads useful: