Add batch diff review mode: show all changes together before approval (like Cursor's native agent)

Status Open
Maintainer reply None cached
Activity 17 comments · opened Mar 7, 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

Problem
The Claude Code VS Code extension currently offers two edit modes:

  • Ask before edits – approves changes one line at a time, forcing decisions without seeing the full picture
  • Edit automatically – makes all changes silently with no diff review at all

Neither option matches the workflow that Cursor's native agent provides, where ALL changes are made first and then presented together as inline diffs for the developer to review, approve, or reject — individually or all at once.

The Claude Code VS Code extension currently offers two edit modes: Ask before edits approves changes one line at a time, forcing decisions without seeing the full picture. Edit automatically makes all changes silently with no diff review at all. Neither option matches the workflow that Cursor's native agent provides, where ALL changes are made first and then presented together as inline diffs for the developer to review, approve, or reject — individually or all at once. This is a significant UX regression for teams switching from Cursor to the Claude extension.

What we want
A third mode: "Batch diff review" — Claude makes all its changes, then presents the full set of diffs together for review before committing, just like Cursor's native agent workflow.

Proposed Solution

Add a third mode: "Batch diff review" — Claude makes all its changes across all files, then pauses and presents the complete set of diffs together in VS Code's native diff viewer before anything is committed. The developer can then review all changes in context, seeing how they work together, and approve or reject them individually or all at once — exactly like Cursor's native agent workflow.

Alternative Solutions

Using git diff after "Edit automatically" works as a workaround but is cumbersome, especially in projects with submodules where you have to cd into each subfolder separately. There is currently no clean solution.

Priority

Critical - Blocking my work

Feature Category

File operations

Use Case Example

I ask Claude to make a change that touches 4 files. With "Ask before edits" I have to approve each individual line change without knowing what's coming next — I'm making decisions blind. With "Edit automatically" Claude makes all the changes silently and I have no idea what it did without manually running git diff. What I want: Claude finishes all edits, then shows me all 4 files side by side as diffs. I review them together, see how they relate, then approve or reject each one.

Additional Context

Several teams switched from Cursor to the Claude extension specifically to use the Max subscription instead of per-seat Cursor billing — but this diff workflow gap is a real pain point. Related issues: #29388, #11411, #2502. Cursor's native agent is the reference implementation for what this should look like.

View original on GitHub ↗

16 Comments

github-actions[bot] · 5 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/16045
  2. https://github.com/anthropics/claude-code/issues/2727
  3. https://github.com/anthropics/claude-code/issues/12338

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

brilliant-directories-user · 5 months ago

Thank you for your response. However, all the "duplicates" shared are closed and the requested update/fix has not been implemented. For the sake of all the similar/duplicate requests, please keep one open in order to allow users to upvote it. The issue is a real concern, and we look forward to implementing this feature. Thank you for your consideration.

c266 · 5 months ago

Why is everything always auto-closed here? People are forced to create duplicates just to keep valid issues alive.
This issue should be seriously considered. Copilot and Codex extensions handle things more conveniently.

lothbrokragnar620-hash · 5 months ago

That approval gap is exactly the kind of control problem I'm building Daedalab around. Agents need a full diff and an approval checkpoint before anything lands, not line-by-line prompts or silent auto-edits. If you're curios: www.daedalab.app

marcelflymark · 5 months ago

I need the tkdiff tool to oversee all changes everywhere in the file under hands to make sense of the bigger picture and to check the changes are coherent. Claude code runs tkdiff with the diffs.
This requirees 4 Claude code actions that require my approval:

copy original to ./claude-tmp
approve changes on that file
permission to start tkdiff
permission to copy the tempfile over the original file.

So i click yes 4 times.

Please add tkdiff as trusted external tool and allow it to store the temp file in the current work dir to prevent /tmp/tempfile permission requests.

Astro-Han · 5 months ago

For CLI users, diffpane does this. It runs in a split pane next to Claude Code and diffs against a session baseline (HEAD when you started), so you see exactly what the agent changed, nothing else. Changes show up in real time as the agent works, no manual refresh needed.

!demo

LiuShiyuMath · 3 months ago

+1, and the "before approval" part is the crux. Ask-before-edits one line at a time loses the forest for the trees; edit-automatically loses the review entirely — neither gives you the "see the whole batch, then decide" moment that actually builds the confidence to merge.

Honest question (not selling anything): once an agent drops a whole batch on you, do you actually want to go diff-by-diff and reconstruct why each change is there yourself — or would you rather be handed enough to decide approve-vs-reject for the batch in a couple of minutes and move on?

Asking because I'm building the second version of that: a pre-made "is this batch safe to approve" summary, so reviewing 30 agent changes doesn't eat your whole day. If that's a real pain for you or your team, I'd love to hear how you review agent changes today.

benwills · 2 months ago

Please, please, please implement this. Some of us do actually want visibility and control over each edit. It helps so much when it comes to seeing how an LLM approached the problem and solution. This is absolutely critical for specialized code, where every single LLM chokes and needs more specific direction and back-and-forth with the developer.

The fact that this isn't a standard option across all editors/tools, is deeply confusing and frustrating to me. It genuinely makes me consider using lesser tools and LLMs, just for this functionality.

ammar26 · 2 months ago

Yes, please. It is critical. Cursor and Copilot have this.

HawkarShwany · 2 months ago

+1, this is exactly the thing I'm looking for as I was a Github Copilot subscriber and just bought one month of Claude Code to test it out. Copilot implements this very well. This feature is really missing as I come from Copilot. Approving each change one by one really defeats the purpose of agentic development and auto approve really makes you a vibe coder. We need that sweet spot where you delegate the task to the agent and move to another task and come for the changes and approval when the agent finished the task. This way you see the whole picture in a bird's eye view. maybe you test the feature in the UI before you review the code and maybe you reject the whole change without looking at the code. Even Antigravity has this feature and it is convenient.

I really hope you take this seriously and add this feature because, as I said, my team and I just bought one month to test it out and this feature is a major drawback for us.

seangibeault · 2 months ago

Also wanting this feature +1

nmpereira · 1 month ago

+1

leoyala · 1 month ago

I am not sure why this has so low priority. It is one of the reasons I am considering moving away from Claude code 😅. Reviewing changes from Claude code is rather annoying at the moment.

wesleymostien · 1 month ago

This ☝🏻

Only reason I am still using other subscriptions.

Ran into this exact gap running Claude Code inside the Cursor extension. In auto-accept mode there's no way to review the session's changes as one aggregated set afterward — /diff gives per-turn navigation rather than a single batched view, and plain git diff pulls in any pre-existing uncommitted changes in the repo that predate the session, so it's not actually scoped to what the agent did.

Caster6290 · 27 days ago

This is very important! I am used to keeping the target code files open so I can watch exactly what the AI agent modifies and adds, and then I review the changes at the end. This workflow works perfectly with Copilot.

However, in Claude, keeping the file editor open has no practical effect. It processes in the background and tells you it's done, but there are absolutely no diff markers or visual changes in the file editor.

nctrnlgz · 27 days ago

@claude is anyone from anthropic's dev team even looking at this or this just goes into the void ?

Showing cached comments. Read the full discussion on GitHub ↗