cmux NEXT: use plain icons in the chat header
The chat header’s tools are now plain icons. Open panels use the text tint and filled glyph; hover and open menus change the tint without drawing a box.
Leo, 2026-10-25: "why do the icons have their own background border situation instead of just being, you know, good"
The agent chat's top-right tools (the Session Info toggle, Terminal, Browser, Chat actions "…", and every other .acpmux-header-tool) drew a rounded tinted box. The fill was 11% while a panel was open, 8% on hover or with the menu open, and 14% when hovered while pressed. The tools are now plain glyphs:
- At rest they use
--agent-muted. On hover, while their menu is open and while their panel is open they take--agent-text. No state draws a fill, border or shadow. - The open Session Info toggle still draws its filled (Solid) glyph.
aria-pressed, the:focus-visiblering and the 24px hit square haven't changed. - Disabled tools use
--agent-softso they stay apart from the muted rest. The Needs you count keeps the text ink. - The rules are scoped to the chat header's row (
.acpmux-header-tools). Start Agent's floating chat borrows the same button class and keeps its old tint and ink in rules scoped to its header and bar.
The owner is the webview header (webviews/src/agent-session/acpmux/header/header.css), not the native pane chrome from #25126, which this PR doesn't touch. No native code changed.
Evidence
8f85dc7198dadds the failing regression first:webviews/test/chat-header-plain-icons.test.ts: no header-tool rule sets a fill, border or shadow; the pressed ink is the text over a muted rest; focus keeps its ring.- Gallery
agent-pane.header-tools#plain-icons: in Chromium, with the panel and Terminal's split open, Terminal hovered and the chat menu open, it checks every tool's computed background, border and shadow, and that the open toggle's ink differs from Browser's at rest.
cd7ee20c838is the CSS fix.- Red/green runs and gallery captures: .
Before / after
<gallery-compare stills for agent-pane.header-tools#panel-open and #panels-open, light and dark>
Risk: normal. CSS only, in one header stylesheet and one badge rule.
Independent review: Codex gpt-6-astra at xhigh in acpmux nx-pane-toolbar-icons-astra-review: SHIP at cd7ee20c8380e360577c65ad1cbc2c68abf36775. Managed validation and gallery captures are pending.
Gallery: agent-pane.header-tools/panel-open, agent-pane.header-tools/panels-open, agent-pane.header-tools/plain-icons
Changelog
Fixed: Chat-header tools use plain icons with selected tint instead of boxed backgrounds.
Agent session: big-red
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.