Repository navigation
cmux-next sidebar: a working row's second line says what its agent does now ("Now: …") - #23474
Conversation
…ent does now (red) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15bd1-a2ac-74f1-85e7-0322693c12bd&host=cosmic-gray
…es now ("Now: …")
The acpmux lane's masked step of the workspace's working chat replaces the text of a row's
second line while it works; a one-line row keeps its height (the hover card has it). Debug
toggle sidebar.nowLine, on by default.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15bd1-a2ac-74f1-85e7-0322693c12bd&host=cosmic-gray
|
Owned by chief-sidebar on cosmic-gray · session |
|
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)
Not verified: macOS jobs did not run: compile and app tests were skipped on CI passes on Written by Tour of Path-selected interactions
Core UI (before): DEGRADED — 19 ok, 1 unavailable
Screenshots (15)1. Launch
Screenshots (15)1. Launch Tours are data in |
|
Bead |
|
Review (claude-review-subagent): SHIP at 64c74b4 I read the diff against the merge-base with feat-cmux-next. Nothing was built or run. Correctness
Nits (not blocking)
|
|
|
…ble; a step shows its first line (review nits) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15bd1-a2ac-74f1-85e7-0322693c12bd&host=cosmic-gray
|
Review (claude-review-subagent): SHIP at 32b71cc Scope: Correct:
Findings:
|
…e, so captures are stable Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15bd1-a2ac-74f1-85e7-0322693c12bd&host=cosmic-gray
|
Review (claude-review-subagent): SHIP at 3bc155c Scope:
No findings. |
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
…bar-now-line # Conflicts: # Packages/macOS/CmuxNext/Sources/CmuxNextSidebar/Logic/SidebarTunables.swift
|
Shipped in:
|
…achine marks patch in place Since Oct 21 every acpmux lane event (each agent step, a few a second per working agent) mapped every sidebar row that shows a chat again: each row's mapping read the whole AgentLaneStore.lanes dictionary (sidebar.laneStatus and sidebar.rowStatus on by default, #23390; the Now: line, #23474), and the pull request badge feed, on by default since #23495, re-ran its pass over every workspace, tab and lane on each event too. - AgentLaneStore keeps one observable cell per session: rows read lane(session) and are told about their own lanes only; the badge feed reads links(session) (folder, pull requests, spawnedBy, peer, chat), which a new step or state leaves alone. lanes stays for whole-store readers. - A pull request badge change patches the rows whose badge changed instead of laying the list out again (SidebarView render). - The hover card is not rebuilt (timeline read, refit) when only the hovered row's step changed: the card does not show it. - A row's machine mark image is drawn again only when the mark or its size changes (#22763 made a new NSImage on every configure). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…achine marks patch in place Since Oct 21 every acpmux lane event (each agent step, a few a second per working agent) mapped every sidebar row that shows a chat again: each row's mapping read the whole AgentLaneStore.lanes dictionary (sidebar.laneStatus and sidebar.rowStatus on by default, #23390; the Now: line, #23474), and the pull request badge feed, on by default since #23495, re-ran its pass over every workspace, tab and lane on each event too. - AgentLaneStore keeps one observable cell per session: rows read lane(session) and are told about their own lanes only; the badge feed reads links(session) (folder, pull requests, spawnedBy, peer, chat), which a new step or state leaves alone. lanes stays for whole-store readers. - A pull request badge change patches the rows whose badge changed instead of laying the list out again (SidebarView render). - The hover card is not rebuilt (timeline read, refit) when only the hovered row's step changed: the card does not show it. - A row's machine mark image is drawn again only when the mark or its size changes (#22763 made a new NSImage on every configure). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…by default Lawrence 2026-10-21: make it fast, but off by default. sidebar.laneStatus and sidebar.rowStatus (on since #23390) and sidebar.nowLine (#23474) stay in Debug; a row reads no acpmux lane unless one of them is on. With them on, an agent event now maps its own row only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
































Slice S2 of Leo's sidebar-organization ask (item A, the "now:" line). It builds on #23390.
What changes
While an agent chat in a workspace works, a row that already has a second line shows "Now: …" there, with what the agent is doing right now (for example "Now: Running the test suite"). The text is the acpmux lane's step, which acpmux already masks; the raw prompt is never shown.
sidebar.nowLine, on by default.sidebar.row.now, in all 21 locales.Capture
The capture uses expanded rows; the Debug fixture
sidebar.laneFixturegives each row a sample agent state, picked by workspace name so it is the same on every run. The working rows (mobile, api-server) show "Now: Running the test suite", and S1's words show on the rest.Capture
steps-f80a41da25at3bc155c1a105(fleet build, capture mini, text checked for private data)Tests
Tests/CmuxNextAppTests/SidebarNowLineTests.swift(committed first):Observed / Not run
scripts/cmux-next/prepush-gate.py: no new violations.compile-check --apppassed on 64c74b4 and 3bc155c.Changelog
Agent session: cosmic-gray
🤖 Generated with Claude Code