TUI layout collapses to near-blank screen under tmux/byobu in 2.1.201 (regression from 2.1.200)
TUI layout regression under tmux/byobu in 2.1.201 (worked in 2.1.200)
Summary
Claude Code's interactive TUI renders with a broken layout when run inside
tmux/byobu. Regression introduced in 2.1.201 — the identical setup on
2.1.200 renders correctly. Only affected under a terminal multiplexer;
running Claude Code directly in the terminal (no tmux) is fine.
Severity
Interactive TUI unusable inside tmux/byobu. Workaround: downgrade to 2.1.200.
Environment
- Claude Code: 2.1.201 (broken) vs 2.1.200 (works). Install method: native.
- OS: macOS 26.5.1 (Tahoe), arm64 (Apple Silicon)
- Multiplexer: byobu 7.12, tmux server 3.7a (also reproduces regardless of tmux
point release — the running server never changed version across the regression)
default-terminal "tmux-256color"(soTERM=tmux-256colorinside tmux)- Host terminals: reproduced in both WezTerm (20240203-110809-5046fc22) and
iTerm2 — i.e. terminal-independent, multiplexer-dependent.
Repro
- In tmux/byobu (
TERM=tmux-256color), runclaudeon 2.1.201 → layout broken. - Downgrade symlink to 2.1.200, relaunch
claudein the same tmux pane → correct. - Run 2.1.201 directly in the host terminal (no tmux) → correct.
Symptom
The TUI fails to draw its frame and collapses to a near-blank screen. Instead
of the normal input box + conversation view, the pane is mostly empty black, with
a few stray, mispositioned text fragments floating in the wrong places:
/advisorrendered flush-right, mid-screen (should be inline in the input)- isolated fragments like
for agentsandkkat the left margin - a lone cursor block with no visible input box around it
No message frame, no bordered prompt, no status/token line from Claude Code —
only the byobu status bar at the very bottom is intact. Looks like the layout is
computed against wrong pane dimensions (or the main redraw is dropped), so
elements scatter instead of composing into the boxed TUI.
(Screenshot available — drag into the issue; text-only description above.)
Isolation already done
- Ruled out byobu: unchanged (7.12) since well before the regression.
- Ruled out tmux: running server stayed 3.7a across the break; a brew
tmux 3.7a→3.7b bump landed 43s after the CC update but the live server never
used it. Downgrading only Claude Code (tmux untouched) fixes it.
- Ruled out terminfo/ncurses: system
tmux-256color, ncurses unchanged. - Only variable that changed at break time: CC 2.1.200 → 2.1.201.
Timeline (same machine, one day)
- 2.1.200 installed 15:56 prior day range, worked
- 2.1.201 installed 15:56:50 → layout breaks
- (coincidental) brew tmux 3.7b installed 15:57:39, not used by running server