From d4ad1597e31407759191173b85562f37f4fb1528 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=AC=E9=A2=A8=E5=8D=83=E9=9B=AA?= Date: Thu, 26 Feb 2026 23:59:49 +0800 Subject: [PATCH] fix(agent): force flush remaining text before call tools (#134) --- packages/agent/src/agent.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index 46d30247..be8fa4c5 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -499,6 +499,20 @@ export const createAgent = ( break } case 'tool-call': + // Flush any remaining buffered content before ending the text stream. + const remainder = attachmentsExtractor.flushRemainder() + if (remainder.visibleText) { + yield { + type: 'text_delta', + delta: remainder.visibleText, + } + } + if (remainder.attachments.length) { + yield { + type: 'attachment_delta', + attachments: remainder.attachments, + } + } yield { type: 'tool_call_start', toolName: chunk.toolName,