[FEATURE] Show which actions /rewind cannot undo
Status Open
Maintainer reply None cached
Activity 0 comments · opened Oct 11, 2026
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Checkpoints restore files that Claude edited, so rewind feels like a complete undo. But some actions in the same stretch of the session are not reverted:
git commitandgit push- files changed through Bash rather than the edit tools
- database migrations, package publishes, deploys
- MCP tools with side effects (creating a Jira issue, sending a message, writing to an API)
After rewinding, the conversation and my local files say "this never happened", while the remote branch, the database or the issue tracker say it did. Nothing in the UI warns me about the difference.
Proposed Solution
- Classify each tool call as reversible (edits covered by checkpoints) or not reversible:
- Bash commands that write outside checkpoint tracking or talk to the network, such as
git pushornpm publish. - MCP tools not marked
readOnlyHint: true. MCP tool annotations already includereadOnlyHintanddestructiveHint, so servers can declare this themselves.
- Mark it in the rewind picker. Turns containing irreversible actions get a marker. Choosing a point before them lists what will not be undone:
> Rewinding past this point will not undo:
> • git push origin feature/login (3 commits)
> • 2 files changed by Bash (scripts/gen.sh)
> • mcp__jira__createIssue → PROJ-412
- Optional extra confirmation when rewinding past a destructive action.
Alternative Solutions
- Remembering what happened: this works in short sessions, but not after a long or compacted one.
- PreToolUse hooks that log side effects: possible, but the rewind UI can't show those logs, which is where the information is needed.
Priority
Medium - Would be very helpful
Feature Category
Interactive mode (TUI)
Use Case Example
- Claude implements a change, commits, pushes, and opens a ticket through an MCP tool.
- I don't like the approach and rewind to before the implementation.
- The picker warns me that the push and the ticket will remain.
- I rewind anyway, and then ask Claude to force-push the branch back and close the ticket. Without the warning, a stale branch and a wrong ticket would have stayed behind unnoticed.