@yuaone/cli 0.9.9 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +111 -2
  2. package/dist/cli.js +0 -6
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/index.d.ts.map +1 -1
  5. package/dist/commands/index.js +264 -94
  6. package/dist/commands/index.js.map +1 -1
  7. package/dist/config.d.ts +11 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +27 -0
  10. package/dist/config.js.map +1 -1
  11. package/dist/interactive.d.ts +11 -0
  12. package/dist/interactive.d.ts.map +1 -1
  13. package/dist/interactive.js +129 -1
  14. package/dist/interactive.js.map +1 -1
  15. package/dist/tui/App.d.ts.map +1 -1
  16. package/dist/tui/App.js +5 -36
  17. package/dist/tui/App.js.map +1 -1
  18. package/dist/tui/agent-bridge.d.ts +2 -21
  19. package/dist/tui/agent-bridge.d.ts.map +1 -1
  20. package/dist/tui/agent-bridge.js +16 -82
  21. package/dist/tui/agent-bridge.js.map +1 -1
  22. package/dist/tui/components/CompactBar.d.ts +25 -0
  23. package/dist/tui/components/CompactBar.d.ts.map +1 -0
  24. package/dist/tui/components/CompactBar.js +42 -0
  25. package/dist/tui/components/CompactBar.js.map +1 -0
  26. package/dist/tui/components/FooterBar.d.ts +0 -4
  27. package/dist/tui/components/FooterBar.d.ts.map +1 -1
  28. package/dist/tui/components/FooterBar.js +44 -15
  29. package/dist/tui/components/FooterBar.js.map +1 -1
  30. package/dist/tui/components/InputBox.d.ts.map +1 -1
  31. package/dist/tui/components/InputBox.js +34 -13
  32. package/dist/tui/components/InputBox.js.map +1 -1
  33. package/dist/tui/components/MarkdownRenderer.d.ts +0 -4
  34. package/dist/tui/components/MarkdownRenderer.d.ts.map +1 -1
  35. package/dist/tui/components/MarkdownRenderer.js +3 -3
  36. package/dist/tui/components/MarkdownRenderer.js.map +1 -1
  37. package/dist/tui/components/MessageBubble.d.ts.map +1 -1
  38. package/dist/tui/components/MessageBubble.js +44 -4
  39. package/dist/tui/components/MessageBubble.js.map +1 -1
  40. package/dist/tui/components/StatusBadge.d.ts +3 -1
  41. package/dist/tui/components/StatusBadge.d.ts.map +1 -1
  42. package/dist/tui/components/StatusBadge.js +16 -6
  43. package/dist/tui/components/StatusBadge.js.map +1 -1
  44. package/dist/tui/components/StatusBar.d.ts.map +1 -1
  45. package/dist/tui/components/StatusBar.js +4 -2
  46. package/dist/tui/components/StatusBar.js.map +1 -1
  47. package/dist/tui/hooks/useAgentStream.d.ts +0 -4
  48. package/dist/tui/hooks/useAgentStream.d.ts.map +1 -1
  49. package/dist/tui/hooks/useAgentStream.js +321 -51
  50. package/dist/tui/hooks/useAgentStream.js.map +1 -1
  51. package/dist/tui/hooks/useMouseScroll.d.ts +10 -19
  52. package/dist/tui/hooks/useMouseScroll.d.ts.map +1 -1
  53. package/dist/tui/hooks/useMouseScroll.js +86 -83
  54. package/dist/tui/hooks/useMouseScroll.js.map +1 -1
  55. package/dist/tui/types.d.ts +22 -2
  56. package/dist/tui/types.d.ts.map +1 -1
  57. package/package.json +3 -3
@@ -18,8 +18,11 @@ export function useAgentStream() {
18
18
  const [filesChangedCount, setFilesChangedCount] = useState(0);
19
19
  const [reasoningTree, setReasoningTree] = useState(undefined);
20
20
  const [backgroundTasks, setBackgroundTasks] = useState([]);
21
+ const [progressLabel, setProgressLabel] = useState(undefined);
22
+ const [currentPhase, setCurrentPhase] = useState(undefined);
21
23
  const currentMsgIdRef = useRef(null);
22
24
  const tokenWindowRef = useRef([]);
25
+ const currentThinkingMsgIdRef = useRef(null);
23
26
  const activeToolBatchIdRef = useRef(null);
24
27
  const lastToolCallAtRef = useRef(0);
25
28
  const startTimeRef = useRef(null);
@@ -52,7 +55,7 @@ export function useAgentStream() {
52
55
  if (startTimeRef.current) {
53
56
  setElapsedMs(Date.now() - startTimeRef.current);
54
57
  }
55
- }, 100);
58
+ }, 1000);
56
59
  }, []);
57
60
  const stopTimer = useCallback(() => {
58
61
  if (timerRef.current) {
@@ -81,6 +84,10 @@ export function useAgentStream() {
81
84
  const pendingTextRef = useRef("");
82
85
  const flushTimerRef = useRef(null);
83
86
  const FLUSH_INTERVAL = 120;
87
+ // Debounce buffer for thinking/reasoning lines to avoid per-token re-renders
88
+ const pendingThinkingRef = useRef([]);
89
+ const thinkingFlushTimerRef = useRef(null);
90
+ const THINKING_FLUSH_INTERVAL = 80;
84
91
  const flushPendingText = useCallback(() => {
85
92
  if (flushTimerRef.current) {
86
93
  clearTimeout(flushTimerRef.current);
@@ -95,53 +102,61 @@ export function useAgentStream() {
95
102
  content: msg.content + text,
96
103
  }));
97
104
  }, [updateCurrentMessage]);
98
- const appendThinkingLines = useCallback((raw) => {
99
- const lines = raw
100
- .split("\n")
101
- .map((line) => line.trim())
102
- .filter(Boolean)
103
- // Filter internal agent machinery noise — don't show to users
104
- .filter((line) => {
105
- if (/^iteration \d+: (preparing context|calling model)$/.test(line))
106
- return false;
107
- if (line === "starting agent loop")
108
- return false;
109
- if (/^\[planner:(start|done)\]/.test(line))
110
- return false;
111
- if (/^\[.*:(start|done)\]/.test(line))
112
- return false;
113
- if (/^success: /.test(line))
114
- return false;
115
- if (/^⚡ running .+ in parallel$/.test(line))
116
- return false;
117
- return true;
118
- })
119
- .map((line) => (line.startsWith("· ") ? line : `· ${line}`));
105
+ const flushThinkingLines = useCallback(() => {
106
+ if (thinkingFlushTimerRef.current) {
107
+ clearTimeout(thinkingFlushTimerRef.current);
108
+ thinkingFlushTimerRef.current = null;
109
+ }
110
+ const lines = pendingThinkingRef.current;
120
111
  if (lines.length === 0)
121
112
  return;
122
- // Append thinking lines into the current assistant message's thinkingContent
123
- // instead of creating separate system messages — avoids layout shake and keeps
124
- // thinking visually inside the assistant bubble.
125
- const id = currentMsgIdRef.current;
126
- if (!id)
113
+ pendingThinkingRef.current = [];
114
+ const currentId = currentThinkingMsgIdRef.current;
115
+ if (!currentId) {
116
+ const id = `thinking-${Date.now()}`;
117
+ currentThinkingMsgIdRef.current = id;
118
+ const msg = {
119
+ id,
120
+ role: "system",
121
+ content: lines.join("\n"),
122
+ timestamp: Date.now(),
123
+ };
124
+ setMessages((prev) => [...prev, msg]);
127
125
  return;
126
+ }
128
127
  setMessages((prev) => prev.map((m) => {
129
- if (m.id !== id)
128
+ if (m.id !== currentId)
130
129
  return m;
131
- const existing = new Set((m.thinkingContent ?? "").split("\n"));
130
+ const existing = new Set(m.content.split("\n"));
132
131
  const deduped = lines.filter((line) => !existing.has(line));
133
132
  if (deduped.length === 0)
134
133
  return m;
135
- const newThinking = m.thinkingContent
136
- ? `${m.thinkingContent}\n${deduped.join("\n")}`
137
- : deduped.join("\n");
138
- return { ...m, thinkingContent: newThinking };
134
+ return {
135
+ ...m,
136
+ content: `${m.content}\n${deduped.join("\n")}`,
137
+ };
139
138
  }));
140
139
  }, []);
140
+ const appendThinkingLines = useCallback((raw) => {
141
+ const lines = raw
142
+ .split("\n")
143
+ .map((line) => line.trim())
144
+ .filter(Boolean)
145
+ .map((line) => (line.startsWith("· ") ? line : `· ${line}`));
146
+ if (lines.length === 0)
147
+ return;
148
+ // Buffer lines and flush after a short debounce window to reduce re-renders
149
+ pendingThinkingRef.current.push(...lines);
150
+ if (thinkingFlushTimerRef.current)
151
+ clearTimeout(thinkingFlushTimerRef.current);
152
+ thinkingFlushTimerRef.current = setTimeout(flushThinkingLines, THINKING_FLUSH_INTERVAL);
153
+ }, [flushThinkingLines]);
141
154
  useEffect(() => {
142
155
  return () => {
143
156
  if (flushTimerRef.current)
144
157
  clearTimeout(flushTimerRef.current);
158
+ if (thinkingFlushTimerRef.current)
159
+ clearTimeout(thinkingFlushTimerRef.current);
145
160
  };
146
161
  }, []);
147
162
  const addUserMessage = useCallback((content) => {
@@ -173,7 +188,9 @@ export function useAgentStream() {
173
188
  setLastError(null);
174
189
  setFilesChangedCount(0);
175
190
  setTokensPerSecond(0);
191
+ setCurrentPhase("explore");
176
192
  tokenWindowRef.current = [];
193
+ currentThinkingMsgIdRef.current = null;
177
194
  activeToolBatchIdRef.current = null;
178
195
  lastToolCallAtRef.current = 0;
179
196
  startTimer();
@@ -206,11 +223,21 @@ export function useAgentStream() {
206
223
  appendThinkingLines(String(event.content ?? ""));
207
224
  break;
208
225
  }
226
+ case "progress:status": {
227
+ // Fine-grained status from ReasoningProgressAdapter: analyzing/searching/coding/etc.
228
+ const label = String(event.status ?? "");
229
+ if (label)
230
+ setProgressLabel(label);
231
+ break;
232
+ }
209
233
  case "agent:text_delta": {
210
234
  const text = event.text;
211
235
  // Only update status/tool state on the FIRST token of a stream — not every token
212
236
  if (!isStreamingRef.current) {
213
237
  isStreamingRef.current = true;
238
+ // Reset thinking message ID so post-stream thinking events create a NEW message
239
+ // rather than appending to the old thinking block (prevents reasoning overlap)
240
+ currentThinkingMsgIdRef.current = null;
214
241
  statusRef.current = "streaming";
215
242
  setStatus("streaming");
216
243
  setCurrentToolName(null);
@@ -325,6 +352,7 @@ export function useAgentStream() {
325
352
  isStreaming: false,
326
353
  }));
327
354
  currentMsgIdRef.current = null;
355
+ currentThinkingMsgIdRef.current = null;
328
356
  activeToolBatchIdRef.current = null;
329
357
  setTimeout(() => {
330
358
  setStatus("idle");
@@ -333,20 +361,28 @@ export function useAgentStream() {
333
361
  }
334
362
  case "agent:completed": {
335
363
  flushPendingText();
364
+ flushThinkingLines();
336
365
  stopTimer();
337
366
  statusRef.current = "completed";
338
367
  setStatus("completed");
339
368
  setStalledMs(0);
340
369
  setCurrentToolName(null);
341
370
  setCurrentToolArgs(null);
342
- const summary = event.summary;
343
- updateCurrentMessage((msg) => ({
344
- ...msg,
345
- content: msg.content || summary,
346
- isStreaming: false,
347
- }));
371
+ const summary = event.summary ?? "";
372
+ updateCurrentMessage((msg) => {
373
+ // When the agent only made tool calls (no text output), content is "".
374
+ // Emit a synthetic "Done." so the user sees a completion indication.
375
+ const hasText = msg.content && msg.content.trim().length > 0;
376
+ const hasSummary = summary && summary.trim().length > 0;
377
+ return {
378
+ ...msg,
379
+ content: hasText ? msg.content : hasSummary ? summary : "Done.",
380
+ isStreaming: false,
381
+ };
382
+ });
348
383
  isStreamingRef.current = false;
349
384
  currentMsgIdRef.current = null;
385
+ currentThinkingMsgIdRef.current = null;
350
386
  activeToolBatchIdRef.current = null;
351
387
  setTimeout(() => {
352
388
  setStatus("idle");
@@ -386,9 +422,70 @@ export function useAgentStream() {
386
422
  const passed = event.passed;
387
423
  const stage = event.stage;
388
424
  const issues = event.issues;
389
- const statusLabel = passed ? "passed" : `${issues.length} issue(s)`;
390
- const lines = [`[QA ${stage}] ${statusLabel}`, ...issues.slice(0, 5)];
391
- appendThinkingLines(lines.join("\n"));
425
+ const statusLabel = passed ? "passed" : `✗ ${issues.length} issue(s)`;
426
+ const stepType = passed ? "success" : "warning";
427
+ const summary = issues.length > 0
428
+ ? `${statusLabel}: ${issues[0]?.slice(0, 60) ?? ""}${issues.length > 1 ? ` (+${issues.length - 1} more)` : ""}`
429
+ : statusLabel;
430
+ const now = Date.now();
431
+ const step = {
432
+ id: `qa-${now}-${Math.random().toString(36).slice(2, 6)}`,
433
+ label: `[QA ${stage}] ${summary}`,
434
+ type: stepType,
435
+ timestamp: now,
436
+ };
437
+ setBackgroundTasks((prev) => {
438
+ const existing = prev.find((t) => t.id === "qa-pipeline");
439
+ const newSteps = existing
440
+ ? [...existing.steps, step].slice(-20)
441
+ : [step];
442
+ if (existing) {
443
+ return prev.map((t) => t.id === "qa-pipeline"
444
+ ? { ...t, status: passed ? "idle" : "running", steps: newSteps, lastUpdatedAt: now }
445
+ : t);
446
+ }
447
+ return [...prev, {
448
+ id: "qa-pipeline",
449
+ label: "QA Pipeline",
450
+ status: passed ? "idle" : "running",
451
+ steps: newSteps,
452
+ lastUpdatedAt: now,
453
+ }];
454
+ });
455
+ break;
456
+ }
457
+ case "agent:evidence_report": {
458
+ const ev = event;
459
+ const { filePath, syntax, diffStats } = ev;
460
+ const fileName = filePath.split("/").pop() ?? filePath;
461
+ const syntaxLabel = syntax === "ok" ? "✓ syntax" : syntax === "error" ? "✗ syntax err" : "";
462
+ const diffLabel = diffStats ? `+${diffStats.added}/-${diffStats.removed}` : "";
463
+ const parts = [syntaxLabel, diffLabel].filter(Boolean).join(" ");
464
+ const now = Date.now();
465
+ const step = {
466
+ id: `ev-${now}-${Math.random().toString(36).slice(2, 6)}`,
467
+ label: `[evidence] ${fileName}${parts ? " " + parts : ""}`,
468
+ type: syntax === "error" ? "warning" : "success",
469
+ timestamp: now,
470
+ };
471
+ setBackgroundTasks((prev) => {
472
+ const existing = prev.find((t) => t.id === "evidence");
473
+ const newSteps = existing
474
+ ? [...existing.steps, step].slice(-20)
475
+ : [step];
476
+ if (existing) {
477
+ return prev.map((t) => t.id === "evidence"
478
+ ? { ...t, steps: newSteps, lastUpdatedAt: now }
479
+ : t);
480
+ }
481
+ return [...prev, {
482
+ id: "evidence",
483
+ label: "Evidence",
484
+ status: "idle",
485
+ steps: newSteps,
486
+ lastUpdatedAt: now,
487
+ }];
488
+ });
392
489
  break;
393
490
  }
394
491
  case "agent:bg_update": {
@@ -424,24 +521,194 @@ export function useAgentStream() {
424
521
  });
425
522
  break;
426
523
  }
524
+ case "agent:phase_transition": {
525
+ const to = event.to;
526
+ setCurrentPhase(to);
527
+ // Append as a dim thinking line — no new message bubble, no status overlap
528
+ appendThinkingLines(`phase: ${event.from} → ${to} (${event.trigger})`);
529
+ break;
530
+ }
531
+ case "agent:subagent_phase": {
532
+ // Route to task panel, not main message stream
533
+ const taskId = event.taskId;
534
+ const phase = event.phase;
535
+ const now = Date.now();
536
+ const step = {
537
+ id: `step-${now}-${Math.random().toString(36).slice(2, 6)}`,
538
+ label: phase.length > 60 ? phase.slice(0, 57) + "…" : phase,
539
+ type: "info",
540
+ timestamp: now,
541
+ };
542
+ setBackgroundTasks((prev) => {
543
+ const existing = prev.find((t) => t.id === taskId);
544
+ if (existing) {
545
+ return prev.map((t) => t.id === taskId
546
+ ? { ...t, status: "running", steps: [...t.steps, step].slice(-20), lastUpdatedAt: now }
547
+ : t);
548
+ }
549
+ const newTask = {
550
+ id: taskId,
551
+ label: taskId,
552
+ status: "running",
553
+ steps: [step],
554
+ lastUpdatedAt: now,
555
+ };
556
+ return [...prev, newTask];
557
+ });
558
+ break;
559
+ }
560
+ case "agent:subagent_done": {
561
+ const taskId = event.taskId;
562
+ const success = event.success;
563
+ const now = Date.now();
564
+ const step = {
565
+ id: `step-${now}-${Math.random().toString(36).slice(2, 6)}`,
566
+ label: success ? "done" : "failed",
567
+ type: success ? "success" : "error",
568
+ timestamp: now,
569
+ };
570
+ setBackgroundTasks((prev) => prev.map((t) => t.id === taskId
571
+ ? { ...t, status: success ? "idle" : "error", steps: [...t.steps, step].slice(-20), lastUpdatedAt: now }
572
+ : t));
573
+ break;
574
+ }
575
+ // ─── Phase 3: Autonomous Engineering Loop ───────────────────────
576
+ case "agent:research_result": {
577
+ const ev = event;
578
+ const repoCount = ev.sources.filter(s => s.source === "repo").length;
579
+ const webCount = ev.sources.filter(s => s.source !== "repo").length;
580
+ const pct = Math.round(ev.confidence * 100);
581
+ const phaseEvent = {
582
+ id: `research-${ev.timestamp}`,
583
+ kind: "research",
584
+ title: `Research confidence:${pct}% ${ev.sources.length} sources`,
585
+ summary: ev.summary.split("\n")[0] ?? "",
586
+ items: [
587
+ `${repoCount} repo ${webCount} web`,
588
+ ...ev.sources.slice(0, 5).map(s => `${s.title.slice(0, 40)}: ${s.snippet.slice(0, 60)}`),
589
+ ],
590
+ status: "done",
591
+ timestamp: ev.timestamp,
592
+ };
593
+ updateCurrentMessage((msg) => ({
594
+ ...msg,
595
+ phaseEvents: [...(msg.phaseEvents ?? []), phaseEvent],
596
+ }));
597
+ break;
598
+ }
599
+ case "agent:plan_generated": {
600
+ const ev = event;
601
+ const phaseEvent = {
602
+ id: `plan-${ev.timestamp}`,
603
+ kind: "plan",
604
+ title: `Plan ${ev.steps.length} steps`,
605
+ summary: ev.steps[0]?.description ?? "",
606
+ items: ev.steps.map((s, i) => {
607
+ const dep = s.dependsOn.length > 0 ? ` (after ${s.dependsOn.map(d => d + 1).join(",")})` : "";
608
+ return `${i + 1}. ${s.description.slice(0, 70)}${dep}`;
609
+ }),
610
+ status: "done",
611
+ timestamp: ev.timestamp,
612
+ };
613
+ updateCurrentMessage((msg) => ({
614
+ ...msg,
615
+ phaseEvents: [...(msg.phaseEvents ?? []), phaseEvent],
616
+ }));
617
+ break;
618
+ }
619
+ case "agent:tournament_result": {
620
+ const ev = event;
621
+ const pct = Math.round(ev.qualityScore * 100);
622
+ const phaseEvent = {
623
+ id: `tournament-${ev.timestamp}`,
624
+ kind: "tournament",
625
+ title: `Tournament winner:patch${ev.winner + 1} score:${pct}%`,
626
+ summary: `${ev.candidates} candidates evaluated`,
627
+ items: [
628
+ `Candidates: ${ev.candidates}`,
629
+ `Winner: patch ${ev.winner + 1} of ${ev.candidates}`,
630
+ `Quality score: ${pct}%`,
631
+ ],
632
+ status: ev.qualityScore > 0 ? "done" : "error",
633
+ timestamp: ev.timestamp,
634
+ };
635
+ updateCurrentMessage((msg) => ({
636
+ ...msg,
637
+ phaseEvents: [...(msg.phaseEvents ?? []), phaseEvent],
638
+ }));
639
+ break;
640
+ }
641
+ case "agent:task_memory_update": {
642
+ const ev = event;
643
+ const statusIcon = ev.status === "completed" ? "✓" : ev.status === "failed" ? "✗" : "●";
644
+ const phaseEvent = {
645
+ id: `task-${ev.timestamp}`,
646
+ kind: "task",
647
+ title: `Task ${statusIcon} ${ev.status} phase:${ev.phase}`,
648
+ summary: `${ev.taskId.slice(0, 16)}… ${ev.phase}`,
649
+ items: [
650
+ `Task: ${ev.taskId.slice(0, 32)}`,
651
+ `Phase: ${ev.phase}`,
652
+ `Status: ${ev.status}`,
653
+ ],
654
+ status: ev.status === "completed" ? "done" : ev.status === "failed" ? "error" : "running",
655
+ timestamp: ev.timestamp,
656
+ };
657
+ updateCurrentMessage((msg) => ({
658
+ ...msg,
659
+ phaseEvents: [...(msg.phaseEvents ?? []), phaseEvent],
660
+ }));
661
+ break;
662
+ }
663
+ case "agent:debug_report": {
664
+ const ev = event;
665
+ const pct = Math.round(ev.confidence * 100);
666
+ const phaseEvent = {
667
+ id: `debug-${ev.timestamp}`,
668
+ kind: "debug",
669
+ title: `Debug Report confidence:${pct}%`,
670
+ summary: ev.rootCause.slice(0, 80),
671
+ items: [
672
+ `Root cause: ${ev.rootCause.slice(0, 80)}`,
673
+ `Suspected: ${ev.suspectedFiles.slice(0, 3).join(", ") || "none"}`,
674
+ `Fix: ${ev.fixStrategy.slice(0, 80)}`,
675
+ ],
676
+ status: ev.confidence > 0.3 ? "done" : "error",
677
+ timestamp: ev.timestamp,
678
+ };
679
+ updateCurrentMessage((msg) => ({
680
+ ...msg,
681
+ phaseEvents: [...(msg.phaseEvents ?? []), phaseEvent],
682
+ }));
683
+ break;
684
+ }
427
685
  default:
428
686
  break;
429
687
  }
430
- }, [appendThinkingLines, updateCurrentMessage, flushPendingText, stopTimer]);
688
+ // Clear progressLabel whenever agent goes to a terminal/non-thinking state
689
+ const k = event.kind;
690
+ if (k === "agent:done" || k === "agent:completed" || k === "agent:error" ||
691
+ k === "agent:tool_call" || k === "agent:text_delta") {
692
+ setProgressLabel(undefined);
693
+ }
694
+ }, [appendThinkingLines, updateCurrentMessage, flushPendingText, flushThinkingLines, stopTimer]);
431
695
  const interrupt = useCallback(() => {
432
696
  flushPendingText();
697
+ flushThinkingLines();
433
698
  stopTimer();
434
699
  statusRef.current = "interrupted";
435
700
  setStatus("interrupted");
436
701
  setStalledMs(0);
437
702
  setCurrentToolName(null);
438
703
  setCurrentToolArgs(null);
704
+ setProgressLabel(undefined);
439
705
  updateCurrentMessage((msg) => ({
440
706
  ...msg,
441
707
  isStreaming: false,
442
708
  content: msg.content + "\n\n[Interrupted]",
443
709
  }));
444
710
  currentMsgIdRef.current = null;
711
+ currentThinkingMsgIdRef.current = null;
445
712
  activeToolBatchIdRef.current = null;
446
713
  const sysMsg = {
447
714
  id: `sys-${Date.now()}`,
@@ -459,11 +726,16 @@ export function useAgentStream() {
459
726
  clearTimeout(flushTimerRef.current);
460
727
  flushTimerRef.current = null;
461
728
  }
729
+ if (thinkingFlushTimerRef.current) {
730
+ clearTimeout(thinkingFlushTimerRef.current);
731
+ thinkingFlushTimerRef.current = null;
732
+ }
462
733
  if (timerRef.current) {
463
734
  clearInterval(timerRef.current);
464
735
  timerRef.current = null;
465
736
  }
466
737
  pendingTextRef.current = "";
738
+ pendingThinkingRef.current = [];
467
739
  startTimeRef.current = null;
468
740
  setMessages([]);
469
741
  isStreamingRef.current = false;
@@ -474,31 +746,29 @@ export function useAgentStream() {
474
746
  setCurrentToolArgs(null);
475
747
  setLastError(null);
476
748
  setFilesChangedCount(0);
749
+ currentThinkingMsgIdRef.current = null;
477
750
  activeToolBatchIdRef.current = null;
478
751
  currentMsgIdRef.current = null;
479
752
  }, []);
480
- // elapsedMs and stalledMs are intentionally excluded from state to prevent
481
- // 100ms timer ticks from causing App-wide re-renders (which shakes InputBox).
482
- // FooterBar receives them as separate props via agentStream.elapsedMs / .stalledMs.
483
753
  const state = {
484
754
  status,
485
755
  messages,
486
756
  tokensPerSecond,
487
757
  totalTokensUsed,
488
- elapsedMs: 0, // not used from state — use agentStream.elapsedMs instead
758
+ elapsedMs,
489
759
  lastElapsedMs,
490
760
  currentToolName,
491
761
  currentToolArgs,
492
762
  lastError,
493
763
  filesChangedCount,
494
764
  reasoningTree,
495
- stalledMs: 0, // not used from state — use agentStream.stalledMs instead
765
+ stalledMs,
496
766
  backgroundTasks,
767
+ progressLabel,
768
+ currentPhase,
497
769
  };
498
770
  return {
499
771
  state,
500
- elapsedMs,
501
- stalledMs,
502
772
  handleEvent,
503
773
  addUserMessage,
504
774
  addSystemMessage,
@@ -1 +1 @@
1
- {"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/tui/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/tui/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}