diff --git a/opencode.json b/opencode.json index 2fa644079..70d8a638f 100644 --- a/opencode.json +++ b/opencode.json @@ -2,6 +2,7 @@ "$schema": "https://opencode.ai/config.json", "mcp": { "weather": { + "enabled": false, "type": "local", "command": ["opencode", "x", "@h1deya/mcp-server-weather"] } diff --git a/packages/opencode/src/session/message-v2.ts b/packages/opencode/src/session/message-v2.ts index d0f7f3170..c031dbe7a 100644 --- a/packages/opencode/src/session/message-v2.ts +++ b/packages/opencode/src/session/message-v2.ts @@ -549,6 +549,15 @@ export namespace MessageV2 { }, ] } + if (part.type === "reasoning") { + return [ + { + type: "reasoning", + text: part.text, + providerMetadata: part.metadata, + }, + ] + } return [] }), diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts index ef3deeb3a..f6f0ffb9b 100644 --- a/packages/opencode/src/session/prompt.ts +++ b/packages/opencode/src/session/prompt.ts @@ -853,6 +853,7 @@ export namespace SessionPrompt { if (value.id in reasoningMap) { const part = reasoningMap[value.id] part.text += value.text + if (value.providerMetadata) part.metadata = value.providerMetadata if (part.text) await Session.updatePart(part) } break @@ -861,7 +862,7 @@ export namespace SessionPrompt { if (value.id in reasoningMap) { const part = reasoningMap[value.id] part.text = part.text.trimEnd() - part.metadata = value.providerMetadata + part.time = { ...part.time, end: Date.now(),