Metadata
| Status | done |
|---|---|
| Assigned | agent-1181 |
| Agent identity | f51439356729d112a6c404803d88015d5b44832c6c584c62b96732b63c2b0c7e |
| Created | 2026-04-29T20:53:13.706599013+00:00 |
| Started | 2026-04-29T20:53:31.919631706+00:00 |
| Completed | 2026-04-29T21:01:42.508261648+00:00 |
| Tags | fix,tui,chat,theme, eval-scheduled |
| Eval score | 0.84 |
| └ blocking impact | 1.00 |
| └ completeness | 1.00 |
| └ constraint fidelity | 0.85 |
| └ coordination overhead | 1.00 |
| └ correctness | 0.95 |
| └ downstream usability | 0.85 |
| └ efficiency | 0.85 |
| └ intent fidelity | 0.85 |
| └ style adherence | 0.90 |
Description
Description
After implement-tmux-wrapped (commit ce6ca245a) landed, chats spawn inside tmux sessions for persistence. The default tmux status bar (green/yellow chrome) is now visible at the bottom of every chat tab — visually 'harsh' and out of place since the user is operating in wg's TUI, not directly in tmux.
User quote: 'the bottom bar in the tmux is harsh. can we make it just black by default (or white in light mode... need to be detecting that btw)'
Two options to evaluate
Option A: Hide it (recommended)
tmux set -t <session> status off per-chat-session. The status bar is purely an implementation detail of the wrapper — wg's own TUI provides the chrome the user actually interacts with. Tmux's bar serves no visible purpose.
Pros: simplest, fewer moving parts, no theme-detection needed. Cons: if we later WANT to surface tmux state to the user (e.g., 'detached at 14:32, 12 lines buffered'), we lose the placeholder.
Option B: Theme it to match wg's dark/light
tmux set -t <session> status-style 'bg=black,fg=...' (dark mode) or analogous for light. Detect wg's current theme and apply.
Pros: looks polished; a present-but-unobtrusive bar might surface useful info later. Cons: needs theme detection (wg doesn't currently expose its active theme to subprocesses); needs to react to theme toggle at runtime; more code.
Recommendation
Ship A as the default; revisit B only if a use case emerges for surfacing info via the bar.
If implementing B (theme detection)
- wg's TUI knows its active theme (the verify-tui-light task confirmed light theme works; theme is a runtime value)
- Pass theme as an env var when spawning tmux:
TMUX=on WG_THEME=dark tmux new-session ... - Inside the tmux session, a small init script reads $WG_THEME and sets status-style accordingly
- For runtime theme toggle: send tmux a status-style update via
tmux set-option -g status-style ...from the wg TUI when the user changes themes
Validation
-
If A:
tmux list-sessionsfor any wg-chat-* session, sendtmux show -t <session> status— returns 'off' - If A: visual confirmation in the TUI that no tmux status bar is rendered at the bottom of chat panes
- If B: status bar visible, color matches wg's active theme (verified by toggling theme — bar updates)
- No regression of implement-tmux-wrapped's persistence behavior — the bar change is cosmetic only
- cargo build + cargo test pass
- cargo install --path . was run before claiming done
Depends on
Required by
- (none)
Log
- 2026-04-29T20:53:13.696452312+00:00 Task paused
- 2026-04-29T20:53:13.739939688+00:00 Task published
- 2026-04-29T20:53:30.065151974+00:00 Lightweight assignment: agent=Careful Programmer (f5143935), exec_mode=full, context_scope=task, reason=Careful Programmer matches the role (TUI/Rust implementation) and tradeoff (Careful fits a fix requiring visual validation and no regression of tmux persistence).
- 2026-04-29T20:53:31.919635683+00:00 Spawned by coordinator --executor claude --model opus
- 2026-04-29T20:53:42.234403705+00:00 Starting: investigating tmux wrapper code in chat surface to identify where status bar is enabled
- 2026-04-29T21:01:14.217585200+00:00 Implemented Option A: tmux set-option status off after new-session in spawn_via_tmux. Added test spawn_via_tmux_disables_status_bar. cargo build clean, cargo test --bin wg passes 3249/3249, cargo install --path . done. Live tmux verification confirms 'status off' is set.
- 2026-04-29T21:01:27.437957806+00:00 Committed: 320957195 — pushed to remote
- 2026-04-29T21:01:42.508269062+00:00 Task pending eval (agent reported done; awaiting `.evaluate-*` to score)
- 2026-04-29T21:03:11.342177637+00:00 PendingEval → Done (evaluator passed; downstream unblocks)