Repository navigation
Agent chat: a run of tool calls between messages collapses to one quiet line - #24443
Conversation
…et line, edits too Leo (2026-10-22, on Codex's transcript): "this is pretty good ui: … the collapsing i mean". A run's line names its kinds of work in the order they came, edits included, under the glyph of its main kind; a run with an edit waiting for permission stays open; a call still running turns the glyph. Gallery versions: pencil, quiet, quiet-pencil (theme toolRunLook). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
|
Owned by cx2-transcript on cmux16 |
|
Bead |
…-summary # Conflicts: # webviews/src/agent-session/acpmux/conversation/ToolRun.tsx
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Gallery before/after for
States
Pick other states with a Probably yours: CI failed on
Failures:
Matched log linesNot re-run automatically: Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); NEW: Tour of |
|
Found 28 test failures on Blacksmith runners: Failures
...and 18 more test failures. View all on Blacksmith: run 39906123426, run 39906123406, run 39906123540
|
…collapsed run An edit, delete or move still waiting for its permission keeps its own row in an ended turn's folded run (staysInSight) and keeps a live run from collapsing (codexRuns), via one predicate, awaitsPermission (Codex review of #24443). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
…t the edits card Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
|
|
|
|
|
|
…ys in sight Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray
|
Verification at
No Swift changed; no native build was run. Primary inspected the actual diff and clean worktree. No new per-token transcript scan or animation/observer/timer was added. |
|
Review (codex gpt-6.1-sol): SHIP at a066830 Independent read-only Codex review at xhigh on full head Verification: 30 tests passed on huge-blue, including both real Chromium adopted-chat tests; separate disclosure suite 29/29. Primary inspected the closed/expanded gallery images from run 39906123591, rendered at The required-check list reports none missing and no required check failures. Non-required CI guard reds are in unchanged SwiftUI/workflow/script/notices checks (cmux-next checks, release-notary); SwiftUI, job-structure and release-notary failures are already recorded across unrelated feat-cmux-next PR heads in the base-red comments above; the script checks are also unchanged by this PR. Optional full web shards were still running at the recorded snapshot; the focused current-head browser and transcript verification executed and passed. |
|
base-red-watch: |
|
Shipped in:
|
…bels, not the card (#24505) #24443 keeps a run whose change still waits for its permission in tool rows (codexRuns sets foldRun false; isEditRow skips shaped runs), so the held call stays in sight. The FIRST_RAN check still looked for the mid-turn edited-files card and failed. It now checks the same thing on the rows: the edit that ran reads "Edited install.sh +1 -0", the held one reads "Edit install_test.sh". Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16030-bf28-7072-b1f6-b83bbd0beacc&host=cosmic-gray Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo-ask: ask-ef75b49339
Leo, 2026-10-22, on Codex's transcript: "this is pretty good ui: … the collapsing i mean"
A run of tool calls between messages now collapses to one quiet summary row, including edits: “Edited 2 files, read 2 files, ran 2 commands.” Click it to expand the existing tool rows. The line names kinds of work in first-occurrence order; edits use the pencil, otherwise the most frequent kind supplies the glyph.
Running calls remain on the live line. Background calls spin the summary glyph, failures are counted, coordination cards remain visible, and file changes awaiting permission stay expanded. The ended turn’s edited-files card remains available.
The app dispatches shaped tool runs to the tool-row renderer, including runs with edits, and estimates their collapsed height as one line. A regression caught the previous dispatch to the edited-files card, which hid the summary in the real gallery despite isolated component tests passing.
Gallery and reference
Reference: Codex
codex-collapsed-tools.pngsupplied with Leo’s ask; reviewed the private cmux-design-references README and Claude/Codex live notes.Four gallery looks are retained:
collapsed-run(selected default: main-kind glyph and settled-row color),collapsed-run-pencil,collapsed-run-quiet, andcollapsed-run-quiet-pencil. The default keeps the reference’s quiet mixed-work pencil row while retaining the existing counts and disclosure affordance.collapsed-run-openandcollapsed-run-failedcover interaction/failure states.Gallery before/after (synthetic fixtures, private tailnet).
No capture: no native UI changed. The shared theme additions only carry the gallery-only look key; screenshot evidence is from the actual webview gallery.
Synthetic gallery captures (the supplied private reference is not published):
Before: gallery health run
39901128946, rendered revision162bffccbd86. After: gallery health run 39906123591, rendered test mergef47c0b10b1afwhose parents include this PR heada06683027ea2. Source:src/agent-session/acpmux/conversation/transcript.gallery.ts. The expansion play passed with 0 layout shift and no anchor movement.Performance
No new O(rows) work per token. Summary categories/counts, main glyph, failures and running state are memoized by the run’s items. Existing row memos and turn shaping preserve settled rows. Row dispatch adds a constant-time flag check. No timers, observers or animation loops are added; expansion uses the existing motion-gated fold.
Verification
99e6b72282d: focused collapsed-run test fails because app dispatch classified the mixed run as an edited-files card.a06683027ea2:CMUX_BROWSER_TESTS=1 bun testfor collapsed runs, consolidated runs, live runs, Codex toggle and adopted replay: 30 passed, including both real Chromium replay tests. A separate focused disclosure run passed 29 tests.--new-only: passed; inherited formatting findings are identical to base. Type checking and changed-file formatting/lint pass.Observed / Not run
Final exact-head browser/gallery and independent review receipts are recorded in the PR comments. No Swift source changed and no native build was run.
Changelog
Agent session: cmux16