Cursor seriously needs protection around the “Undo All” action

Feature request for product/service

Cursor IDE

Describe the request

Many times I leave “Keep All” until I finish reviewing everything together. Twice already, “Undo All” was triggered accidentally somehow — either by misclick or unexpected behavior — and it instantly removed all pending changes with zero confirmation.

The real problem is not only losing the changes.
The agent also loses the entire accepted context/history, so there is no real recovery point. Then it starts regenerating code again, wasting a huge amount of tokens and time for code that already existed minutes ago.

The new auto “Keep All” helps, but “Undo All” is still dangerous in its current form.

At minimum, one of these should exist:

  • A confirmation modal before Undo All
  • A reversible undo for Undo All itself
  • A temporary snapshot/restore point before clearing changes

One accidental click should not destroy hours of work and token usage.

Hi @igbaryya Thank you very much for reporting this. I have replicated it, and I agree it’s not ideal to have these two different product behaviors. I’ve raised an internal bug report with the team, and I’ll let you know any updates.

This is honestly unacceptable guys. A very simple confirmation window should be an absolute must. Hours of work lost.

I personally find those buttons useless and won’t use them.

My acceptance/reject flow is purely using git commands, not those buttons, because using gitcontinuously with agents allows for far better iteration and safety when fully utilizing git’s powers (e.g. staging accepted files and then iterating on un-staged files, temporarily committing staged files to view clean diffs against untagged files, etc. etc.).