Agent pane: messages between agents share the tool rows' icon column and text inset
Leo: "the alignment i feel like we might as well"
The agent pane's transcript rows (a tool row, a message from another agent, this agent's send, the waiting group's head) each put their glyph in a different place: the received line's padding pushed the sender's mark 8px right of the tool rows' glyph slot and its name to x=28, a sent line's words started 1.5px left of the tool rows', and a harness logo drew at 14px beside 12px stroke glyphs. Now every row shares one icon column and one text inset.
- Received lines: no inline padding, so the sender's mark takes the tool rows' 16px glyph slot and the name starts at the tool rows' 24px text x (
conversation.css). - Sent lines: the tool icon's -1.5px end margin (a no-op in the tool rows' grid, not in this flex line) is cleared (
AgentMessageRow.css). - Waiting group head: its chevron moves into the glyph slot (
PendingMessagesCard.css). - Harness logos draw at 12px, the stroke glyphs' drawn size (
IncomingMessageCard.tsx). - No row's content, order or presence changes.
Spec: design/chat-transcript.md "One icon column" (leo-workspace#1814).
Measured (gallery agent-pane.agent-message-row#icon-column, Chromium, px from the row's left)
| row | slot left before → after | glyph center before → after | glyph ink before → after | text x before → after |
|---|---|---|---|---|
| tool (Ran git log) | 0 → 0 | 8 → 8 | 11.5 → 11.5 | 24 → 24 |
| received, Codex logo (go-live) | 8 → 0 | 16 → 8 | 14 → 12 | 28 → 24 |
| sent (envelope) | 0 → 0 | 8 → 8 | 11.5 → 11.5 | 22.5 → 24 |
| received, no mark (release-notes) | 8 → 0 | 16 → 8 | 12.5 → 12.5 | 28 → 24 |
Light and dark measure the same. Before, the test reported 8 problems per theme; after, none.
Stills (2x, gallery, synthetic data)
| before | after | |
|---|---|---|
| light | ||
| dark |
Viewed after image: icon-column-after-light.png and icon-column-after-dark.png. The terminal, Codex logo, envelope and bot glyphs share one center line, and "Ran", "go-live", "Sent to" and "release-notes" all start at the same x. No control repeats per row, and nothing is clipped or off-screen.
Tests
webviews/test/transcript-icon-column.test.ts(new, Chromium, light and dark): each row's glyph slot, glyph center, drawn glyph size and first word's x must match the tool row's. It failed at the red-first commit e579b74db36f (run https://github.com/manaflow-ai/cmux/actions/runs/41161456159) and passes at 429c1d907cdd (run https://github.com/manaflow-ai/cmux/actions/runs/41161911610).
Changelog
none
Agent session: agent session
🤖 Generated with Claude Code