Skip to content

Agentic UI: Group agent activity into expandable summaries#4288

Draft
shaunandrews wants to merge 1 commit into
trunkfrom
agentic-ui-combined-tool-calls
Draft

Agentic UI: Group agent activity into expandable summaries#4288
shaunandrews wants to merge 1 commit into
trunkfrom
agentic-ui-combined-tool-calls

Conversation

@shaunandrews

@shaunandrews shaunandrews commented Jul 21, 2026

Copy link
Copy Markdown
Contributor
working-2 image image image

Related issues

How AI was used in this PR

This was developed iteratively with Codex. The author directed the interaction model and visual refinements, reviewed the UI in the Electron app, and added reference images/video to the Linear issue. Codex implemented the changes, removed the temporary design controls before publication, and ran the automated checks listed below.

Executive summary

Agent work now reads as one coherent activity system. The standalone thinking treatment and consecutive tool-call rows become a compact live summary that preserves access to the full audit trail without letting routine agent work dominate the conversation.

⚠️ Visual change: needs human review in light + dark mode.

Proposed Changes

  • Present working, progress, and active tool states through one consistent activity row with a brand-colored motion indicator and elapsed time.
  • Collapse consecutive tool calls into an expandable run that shows the latest action while active and a concise call count when complete.
  • Give completed single- and multi-call runs the same styling and disclosure behavior; a single call opens directly to its details.
  • Remove decorative tool icons, align expanded labels with their summary, remove the nested rail, and apply one useful end-of-line truncation.
  • Rotate playful working verbs with a type/delete rhythm and animate only changed timer characters, while respecting reduced-motion preferences.

Review guide

Please focus on:

  • whether conversation boundaries produce the expected tool-call groups;
  • the active-to-complete transition and whole-run duration semantics;
  • disclosure behavior for one call versus multiple calls;
  • keyboard and screen-reader behavior of the summary buttons;
  • timer/type animation, reduced motion, narrow-width truncation, and light/dark theming.

The removal of the old icon map and standalone thinking-indicator files is mechanical and can be skimmed.

Known tradeoffs and follow-ups

  • This intentionally changes only the Agentic conversation renderer; the default/Agentic renderer split remains tracked in STU-1922.
  • Persisted entries with missing or invalid timestamps fall back to a completed duration of 0s.
  • The reference images and video are attached to STU-2084.

Safety checklist

  • No persistence, migration, IPC, network, security, or privacy changes.
  • Existing tool inputs and results remain available through disclosure.
  • Motion has a reduced-motion fallback.
  • The change can be rolled back by reverting this commit.
  • Human visual verification in both light and dark modes.

Testing Instructions

  1. Start an agent run without a visible tool call and confirm the working verb types/deletes while the timer remains alongside it.
  2. Trigger one and then several consecutive tool calls. Confirm the active row follows the latest action and expands without a rail or extra left offset.
  3. Complete the run. Confirm one call retains its label and opens directly to details; multiple calls become N tool calls and reveal individual rows.
  4. Check narrow conversation widths, reduced motion, keyboard focus, and both light and dark themes.

Automated checks:

  • npm run typecheck
  • npm test -- apps/ui/src/ui-classic/components/session-view/conversation/index.test.ts apps/ui/src/components/site-list/index.test.tsx — 46 tests passed
  • npx eslint --fix on all modified TypeScript/TSX files
  • git diff --check

Pre-merge Checklist

  • Have you checked for TypeScript, React or other console errors?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant