@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.
- package/README.md +111 -2
- package/dist/cli.js +0 -6
- package/dist/cli.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +264 -94
- package/dist/commands/index.js.map +1 -1
- package/dist/config.d.ts +11 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +27 -0
- package/dist/config.js.map +1 -1
- package/dist/interactive.d.ts +11 -0
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.js +129 -1
- package/dist/interactive.js.map +1 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +5 -36
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/agent-bridge.d.ts +2 -21
- package/dist/tui/agent-bridge.d.ts.map +1 -1
- package/dist/tui/agent-bridge.js +16 -82
- package/dist/tui/agent-bridge.js.map +1 -1
- package/dist/tui/components/CompactBar.d.ts +25 -0
- package/dist/tui/components/CompactBar.d.ts.map +1 -0
- package/dist/tui/components/CompactBar.js +42 -0
- package/dist/tui/components/CompactBar.js.map +1 -0
- package/dist/tui/components/FooterBar.d.ts +0 -4
- package/dist/tui/components/FooterBar.d.ts.map +1 -1
- package/dist/tui/components/FooterBar.js +44 -15
- package/dist/tui/components/FooterBar.js.map +1 -1
- package/dist/tui/components/InputBox.d.ts.map +1 -1
- package/dist/tui/components/InputBox.js +34 -13
- package/dist/tui/components/InputBox.js.map +1 -1
- package/dist/tui/components/MarkdownRenderer.d.ts +0 -4
- package/dist/tui/components/MarkdownRenderer.d.ts.map +1 -1
- package/dist/tui/components/MarkdownRenderer.js +3 -3
- package/dist/tui/components/MarkdownRenderer.js.map +1 -1
- package/dist/tui/components/MessageBubble.d.ts.map +1 -1
- package/dist/tui/components/MessageBubble.js +44 -4
- package/dist/tui/components/MessageBubble.js.map +1 -1
- package/dist/tui/components/StatusBadge.d.ts +3 -1
- package/dist/tui/components/StatusBadge.d.ts.map +1 -1
- package/dist/tui/components/StatusBadge.js +16 -6
- package/dist/tui/components/StatusBadge.js.map +1 -1
- package/dist/tui/components/StatusBar.d.ts.map +1 -1
- package/dist/tui/components/StatusBar.js +4 -2
- package/dist/tui/components/StatusBar.js.map +1 -1
- package/dist/tui/hooks/useAgentStream.d.ts +0 -4
- package/dist/tui/hooks/useAgentStream.d.ts.map +1 -1
- package/dist/tui/hooks/useAgentStream.js +321 -51
- package/dist/tui/hooks/useAgentStream.js.map +1 -1
- package/dist/tui/hooks/useMouseScroll.d.ts +10 -19
- package/dist/tui/hooks/useMouseScroll.d.ts.map +1 -1
- package/dist/tui/hooks/useMouseScroll.js +86 -83
- package/dist/tui/hooks/useMouseScroll.js.map +1 -1
- package/dist/tui/types.d.ts +22 -2
- package/dist/tui/types.d.ts.map +1 -1
- 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
|
-
},
|
|
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
|
|
99
|
-
|
|
100
|
-
.
|
|
101
|
-
.
|
|
102
|
-
|
|
103
|
-
|
|
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
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
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 !==
|
|
128
|
+
if (m.id !== currentId)
|
|
130
129
|
return m;
|
|
131
|
-
const existing = new Set(
|
|
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
|
-
|
|
136
|
-
|
|
137
|
-
: deduped.join("\n")
|
|
138
|
-
|
|
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
|
-
|
|
345
|
-
|
|
346
|
-
|
|
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" :
|
|
390
|
-
const
|
|
391
|
-
|
|
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
|
-
|
|
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
|
|
758
|
+
elapsedMs,
|
|
489
759
|
lastElapsedMs,
|
|
490
760
|
currentToolName,
|
|
491
761
|
currentToolArgs,
|
|
492
762
|
lastError,
|
|
493
763
|
filesChangedCount,
|
|
494
764
|
reasoningTree,
|
|
495
|
-
stalledMs
|
|
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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"}
|