[Desktop] Bash file-change diff (bashEditDiff) is computed but never shown in the Code tab
Environment
- Claude Desktop 2.19675.0 (Code tab), bundled Claude Code 2.1.286 (
entrypoint: claude-desktop); also reproduced on 2.1.280 - macOS, Darwin 25.6.0, Apple Silicon
- Permission mode: auto, plus
"bashEditDiffEnabled": truein~/.claude/settings.json - Session opened in a git worktree (the repository root is the session's working directory)
What happens
When Claude edits files through the Bash tool, the CLI computes the file-change diff correctly, but the desktop Code tab never displays it. There is no "Created/Updated/Deleted <file> (+n -m)" line and no red/green diff under the Bash result, only the command's plain output.
Reproduce
In a Code tab session opened on a git repo, ask Claude to run these as separate Bash calls (not Edit/Write):
printf 'port = 0\nname = test\n' > zz-diff-test.toml
sed -i '' 's/port = 0/port = 8080/' zz-diff-test.toml
python3 - <<'EOF'
import pathlib
p = pathlib.Path("zz-diff-test.toml"); p.write_text(p.read_text().replace("name = test", "name = native-diff"))
EOF
rm zz-diff-test.toml
The session transcript shows that every one of those results carries a correct toolUseResult.bashEditDiff:
| Command | bashEditDiff in transcript |
|---|---|
| printf … > | created: true, +port = 0, +name = test |
| sed -i | -port = 0, +port = 8080 |
| python heredoc | -name = test, +name = native-diff |
| rm | deleted: true, -port = 8080, -name = native-diff |
None of it appears in the Code tab, either before or after restarting the app.
Expected
The Code tab renders bashEditDiff under the Bash result, the way it already renders the diff for Edit/Write tool calls (and the way the terminal CLI renders it).
Why it matters
Claude often edits files through Bash (sed, heredoc scripts) rather than Edit. In the desktop app, those changes currently show no diff at all, so the user can't see what changed without going to the session diff pane or git.
Related
#95854, #97146, #94571 and #96492 are about the same feature's attribution and performance. They also confirm the data is produced; this issue is only about the desktop app not showing it.