Add setting to disable/refresh git branch label in conversation UI
Resolved 💬 3 comments Opened Mar 22, 2026 by bautrey Closed Mar 26, 2026
Problem
When using claude --resume, the blue git branch label in the conversation UI shows the branch from the original conversation start, not the current branch. This label never refreshes, even after:
- Switching branches (
git switch main) - Deleting the old branch
- Restarting the Claude Code session with
--resume
The label is frozen in gitStatus from conversation creation and persists indefinitely.
Context
- Related: #20406 (gitBranch metadata not refreshed), #36364 (stale branch tracker)
- I already have branch info in my custom
statusLine— the built-in label is redundant - I use
--resumefrequently via custom launcher scripts and agent-deck, so "start a new conversation" is not a viable workaround
Requested
Either:
- Add a setting to disable the branch label entirely (e.g.,
"showGitBranch": falsein settings.json), OR - Refresh
gitStatuson each session resume so it reflects the current branch, OR - Both — refresh by default, with an option to hide it for users who already show branch info in their statusline
Reproduction
# Start claude on a feature branch
git switch -c feature/test
claude --resume
# Switch branches
git switch main
git branch -d feature/test
# Exit and resume
# Ctrl+C
claude --resume
# The blue label still shows "feature/test" even though it no longer exists
Environment
- Claude Code v2.1.81
- macOS (Darwin 25.3.0)
- Launched via tmux with
--resumeflag
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗