Show live content deltas in activity

This commit is contained in:
wuyang6
2026-05-14 19:43:41 +08:00
parent dd7ff75a69
commit 2eeabdeccf
2 changed files with 41 additions and 1 deletions
@@ -984,7 +984,18 @@ function summarizeLiveRunEvents(
events: readonly LiveRunEvent[],
) {
const lines: string[] = [];
let contentBuffer = "";
const flushContentBuffer = () => {
const preview = compactLiveContentDelta(contentBuffer);
contentBuffer = "";
if (preview) lines.push(`输出:${preview}`);
};
for (const event of events) {
if (event.type === "content_delta") {
contentBuffer += event.delta ?? "";
continue;
}
flushContentBuffer();
if (event.type === "run_queued") {
lines.push("当前会话已有任务在执行,本轮正在排队。");
}
@@ -1013,6 +1024,7 @@ function summarizeLiveRunEvents(
lines.push("正在整理回复");
}
}
flushContentBuffer();
if (runStatus.current_stage && lines.at(-1) !== runStatus.current_stage) {
lines.push(runStatus.current_stage);
}
@@ -1030,6 +1042,14 @@ function isNoisyLiveDelta(value: string) {
return value === "。" || value === "" || value === "," || value.length <= 1;
}
function compactLiveContentDelta(value: string) {
const normalized = value.replace(/\s+/g, " ").trim();
if (!normalized || isNoisyLiveDelta(normalized)) return "";
return normalized.length <= 36
? normalized
: `${normalized.slice(Math.max(0, normalized.length - 35))}`;
}
function collectActivityItems(messages: readonly MessageState[]) {
const items: ActivityItem[] = [];