T24b: Agent, progress

- AgentStepList: an agent's steps down a data_display::Timeline rail,
  marked by chat::step_mark, with detail and time
- AgentPlan: items waiting, at work or done, with a count; done items go
  quiet and struck through
- chat::step_mark reads motion::changes: a check or cross that arrives pops
  in, still on first paint
- AgentStatus: a pill for planning, working, waiting, done or failed
- AgentProgress: the step at work, done of total, the time so far and a
  bar split by step; progress past its total fails loud
- SubAgentTree is lists::Tree with each agent's state as its note
- gallery: a plan the button advances, steps, statuses and a tree
This commit is contained in:
ZacharyZhang-NY committed 2026-09-26 08:25:51 -04:00
1 parent aaf212c53c
commit f4cf1ef3d7
8 files changed
+551 -41

No files matched your search

+2 -1
View File
@@ -98,6 +98,7 @@ impl RenderOnce for ToolCallCard {
let open = *state.read(cx);
let opens = self.arguments.is_some() || self.result.is_some();
let failed = self.status == StepState::Failed;
let mark = step_mark((self.id.clone(), "mark").into(), self.status, window, cx);
let theme = cx.theme();
let colors = theme.colors.clone();
let label = |text: &'static str| {
@@ -120,7 +121,7 @@ impl RenderOnce for ToolCallCard {
opens.then_some(state),
cx,
)
.child(step_mark((self.id.clone(), "mark").into(), self.status, cx))
.child(mark)
.child(
div()
.min_w_0()