statusLine command never invoked when CLAUDE_CODE_NO_FLICKER=1 is set
Description
Custom statusLine commands configured in ~/.claude/settings.json are never invoked when CLAUDE_CODE_NO_FLICKER=1 is set. The status line area is completely blank — the configured script is never executed.
Reproduction
- Configure a custom statusLine in
~/.claude/settings.json:
``json``
{
"statusLine": {
"type": "command",
"command": "/path/to/statusline.sh",
"refreshInterval": 5
}
}
- Verify the script works manually:
echo '{}' | /path/to/statusline.shproduces output. - Launch Claude Code with
CLAUDE_CODE_NO_FLICKER=1exported. - The status line area is blank. Adding a probe (
echo "$(date)" >> /tmp/probe.log) to the script confirms it is never called.
Expected behavior
The statusLine command should be invoked and its output rendered in NO_FLICKER mode, same as in standard mode.
Environment
- Claude Code version: 2.1.137
- OS: macOS 15.5 (Darwin 24.6.0, arm64)
- Terminal: Ghostty
- Shell: zsh
Context
NO_FLICKER mode is the only usable rendering mode for some terminal setups — standard mode produces unusable flickering. Losing the status line to get stable rendering is a significant trade-off, especially since the status line is the primary way to surface project context (model, branch, health) without scrolling.
Related: #13517 (same symptom reported for standard mode)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗