Branch switch in a Bash call prints full diffs of every file changed on disk

Status Open
Reported on v2.1.281
Maintainer reply None cached
Activity 0 comments · opened Sep 25, 2026

After a Bash tool call that switches branches inside a git worktree (git checkout -q <branch>), the tool result now lists every tracked file that changed on disk with its full diff, e.g. Updated .claude-plugin/plugin.json (+1 -1) and Deleted memory-bank/…md (+0 -79) followed by all 79 lines.

This did not happen in earlier versions.

Why it's a problem

  • During stacked-PR work every branch switch floods the terminal with diffs of files that differ between branches.
  • It reads as if the assistant edited or deleted those files, when git only swapped the working tree.
  • -q doesn't help: the diffs come from the harness, not from git output. There is no setting to turn it off.

Expected
File changes caused by a Bash command are collapsed or summarised (e.g. "12 files changed on disk"), or a setting controls whether they are shown.

Environment

  • Claude Code 2.1.281
  • macOS 27.0
  • Session working in a .claude/worktrees/ worktree via EnterWorktree

View original on GitHub ↗