Skip to content

Organize the Agents session list by origin - #628

Merged
RBilly merged 3 commits into
mainfrom
maestro/organized-session-list-289
Nov 13, 2026
Merged

RBilly merged 3 commits into
mainfrom
maestro/organized-session-list-289

Conversation

@RBilly

@RBilly RBilly commented Nov 13, 2026 •

Copy link
Copy Markdown
Collaborator

The Agents tab listed every session in one flat list, so a session a task started, an automation run and a session you opened yourself all looked alike, and you had to read each row to find the one you wanted.

The list is now organized by where a session came from:

  • Your own sessions (agents you started, terminals, files) sit at the top, at the root of the list, with no header.
  • Tasks follows as a foldable section, one row per task session with its stage chip.
  • Automations follows as a foldable section. Several live runs of the same automation gather under the automation's name, each shown as Run #N to match run history.

Within each part, a session waiting on you comes first, then one at work, then the newest. Section headers show a count and either a "needs you" badge or a working dot, so a folded section still says whether something needs attention. Folds are remembered per project; a search shows every match regardless of folds.

Tasks are deliberately not nested: starting a stage closes the task's previous session (finish_spawn), so a task never has two live sessions to group.

The selected-row highlight used to move by index * 56px. With headers between rows it now measures the selected row instead.

The grouping and ordering live in a pure groupSessions helper with its own tests, and AgentMonitor.test.tsx covers the automation nesting, folding, and your sessions sitting first without a header.

BEGIN_COMMIT_OVERRIDE
feat(agents): organize the session list by origin, with your own sessions first
END_COMMIT_OVERRIDE

Release Notes:

  • Improved the Agents tab session list: your own sessions come first, followed by foldable Tasks and Automations sections, with sessions waiting on you sorted to the top.

🤖 Generated with Claude Code

RBilly and others added 3 commits November 12, 2026 18:12
Sessions are gathered under their task or automation, ordered so the ones
waiting on the user come first, and each section and group folds, with the
fold state kept per project. The selected pane now measures its row, since
headers sit between rows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A task never holds two live sessions, since starting a stage closes the one
before it, so its header could never show. Task sessions now render as one
row each and only an automation's live runs gather under a header.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sessions the user started need no header to explain them, so they sit at the
top of the list with no fold line; Tasks and Automations follow as sections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@RBilly
RBilly merged commit 9fedbcf into main Nov 13, 2026
3 checks passed
@RBilly
RBilly deleted the maestro/organized-session-list-289 branch November 13, 2026 09:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant