Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
Reading a new release v2.1.280 First look · 1/6 0 findings $0.00 so far
Claude Code v2.1.269 ·

Bash tool can show a diff of files it changed

A new bashEditDiffEnabled setting lets the Bash tool surface a diff of files a shell command changed, passed to PostToolUse hooks too

TierNothing to try yethow much it should matter to you
Useful4my rating, 1 to 5
Signal3worth watching, 1 to 5
AreaBash Toolwhat it touches
KindIn Developmentin v2.1.269,
Group of 4 Nothing to try yet Notable

A new bashEditDiffEnabled setting lets the Bash tool surface a diff of files a shell command changed, passed to PostToolUse hooks too

What

  • A new bashEditDiffEnabled settings.json key (and CLAUDE_CODE_BASH_EDIT_DIFF environment variable override) controls whether the Bash tool computes and shows a diff of files changed by a shell command.
  • Under the hood, this is backed by git-based snapshots taken before and after a Bash command (via a sandboxed git wrapper), with filesystem watchers (inotify on Linux, fs.watch elsewhere) to catch changes made outside the tracked diff.
  • The result appears as bashEditDiff on the Bash tool's result, and PostToolUse hooks for Bash now receive the list of changed files in tool_response too.
  • It's skipped for destructive git operations run via Bash (checkout, switch, stash, pull, merge, rebase, reset, restore, clean, cherry-pick, revert), and reports status through telemetry (bash_edit_diff, and unavailable/interrupted variants).
  • Outside auto or bypassPermissions modes, only a user, flag, or policy setting can turn this on; the docs describe it as on by default when the Bash tool handles file edits.

Why This lets Claude Code (and hooks watching its actions) see exactly what a shell command changed on disk, without having to separately diff the repo, making Bash tool calls more transparent and auditable.

See this entry in the whole of v2.1.269 →