From afe51d325d3af5bbada00d1cc4e74f57715cb770 Mon Sep 17 00:00:00 2001 From: Jiayuan Zhang Date: Wed, 11 Feb 2026 00:12:08 +0800 Subject: [PATCH] fix(core): rebuild system prompt after provider switch setProvider() updated the resolved provider and model but did not rebuild the system prompt, so the runtime info line still showed the old provider/model (e.g. claude-code/claude-opus-4-6) after switching. Co-Authored-By: Claude Opus 4.6 --- packages/core/src/agent/runner.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/core/src/agent/runner.ts b/packages/core/src/agent/runner.ts index ddfd3ac1..beaa4faf 100644 --- a/packages/core/src/agent/runner.ts +++ b/packages/core/src/agent/runner.ts @@ -905,6 +905,14 @@ export class Agent { contextWindowTokens: this.contextWindowGuard.tokens, }); + // Rebuild system prompt so runtime info reflects the new provider/model + const toolNames = (this.agent.state.tools ?? []).map((t: { name: string }) => t.name); + const systemPrompt = this.rebuildSystemPrompt(toolNames); + if (systemPrompt) { + this.agent.setSystemPrompt(systemPrompt); + this.session.setSystemPrompt(systemPrompt); + } + return { provider: providerId, model: model.id,