feat: soften block streaming chunking

This commit is contained in:
Peter Steinberger
2026-01-03 16:45:53 +01:00
parent 53baba71fa
commit 9f8eeceae7
7 changed files with 270 additions and 29 deletions

View File

@@ -42,7 +42,10 @@ import {
formatAssistantErrorText,
sanitizeSessionMessagesImages,
} from "./pi-embedded-helpers.js";
import { subscribeEmbeddedPiSession } from "./pi-embedded-subscribe.js";
import {
subscribeEmbeddedPiSession,
type BlockReplyChunking,
} from "./pi-embedded-subscribe.js";
import { extractAssistantText } from "./pi-embedded-utils.js";
import { createClawdisCodingTools } from "./pi-tools.js";
import {
@@ -334,6 +337,7 @@ export async function runEmbeddedPiAgent(params: {
mediaUrls?: string[];
}) => void | Promise<void>;
blockReplyBreak?: "text_end" | "message_end";
blockReplyChunking?: BlockReplyChunking;
onToolResult?: (payload: {
text?: string;
mediaUrls?: string[];
@@ -503,6 +507,7 @@ export async function runEmbeddedPiAgent(params: {
onToolResult: params.onToolResult,
onBlockReply: params.onBlockReply,
blockReplyBreak: params.blockReplyBreak,
blockReplyChunking: params.blockReplyChunking,
onPartialReply: params.onPartialReply,
onAgentEvent: params.onAgentEvent,
enforceFinalTag: params.enforceFinalTag,