From 0ae805b28b5160b8d9fb43635fa172961f6550cc Mon Sep 17 00:00:00 2001 From: Adam Malczewski Date: Tue, 19 May 2026 21:29:08 +0900 Subject: feat: inline tool display and thinking/reasoning support - Tool calls now appear at their stream position within messages (ContentSegment model) - Added reasoning/thinking display: collapsible
block above content - Set DeepSeek V4 Flash reasoningEffort to max via providerOptions - ChatMessage.content changed from string to ContentSegment[] (text | tool-call) - Agent handles AI SDK reasoning events, yields reasoning-delta - Fixed duplicate key in ChatMessage.svelte each block --- packages/core/src/agent/agent.ts | 5 +++++ packages/core/src/types/index.ts | 1 + 2 files changed, 6 insertions(+) (limited to 'packages/core/src') diff --git a/packages/core/src/agent/agent.ts b/packages/core/src/agent/agent.ts index c28d691..8e89bb9 100644 --- a/packages/core/src/agent/agent.ts +++ b/packages/core/src/agent/agent.ts @@ -80,6 +80,9 @@ export class Agent { messages: toCoreMessages(this.messages), tools: registry.getAISDKTools(), maxSteps: 10, + providerOptions: { + openaiCompatible: { reasoningEffort: "max" }, + }, }); let fullText = ""; @@ -90,6 +93,8 @@ export class Agent { if (event.type === "text-delta") { fullText += event.textDelta; yield { type: "text-delta", delta: event.textDelta }; + } else if (event.type === "reasoning") { + yield { type: "reasoning-delta", delta: event.textDelta }; } else if (event.type === "tool-call") { const toolCall: ToolCall = { id: event.toolCallId, diff --git a/packages/core/src/types/index.ts b/packages/core/src/types/index.ts index a408e7d..28e79ae 100644 --- a/packages/core/src/types/index.ts +++ b/packages/core/src/types/index.ts @@ -29,6 +29,7 @@ export type AgentStatus = "idle" | "running" | "error"; export type AgentEvent = | { type: "status"; status: AgentStatus } | { type: "text-delta"; delta: string } + | { type: "reasoning-delta"; delta: string } | { type: "tool-call"; toolCall: ToolCall } | { type: "tool-result"; toolResult: ToolResult } | { type: "error"; error: string } -- cgit v1.2.3