diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts index ad7b6f1a9..561e7feed 100644 --- a/packages/opencode/src/session/prompt.ts +++ b/packages/opencode/src/session/prompt.ts @@ -843,14 +843,11 @@ export namespace SessionPrompt { const agent = await Agent.get(input.agent ?? (await Agent.defaultAgent())) const model = input.model ?? agent.model ?? (await lastModel(input.sessionID)) - const variant = - input.variant ?? - (agent.variant && - agent.model && - model.providerID === agent.model.providerID && - model.modelID === agent.model.modelID - ? agent.variant - : undefined) + const full = + !input.variant && agent.variant + ? await Provider.getModel(model.providerID, model.modelID).catch(() => undefined) + : undefined + const variant = input.variant ?? (agent.variant && full?.variants?.[agent.variant] ? agent.variant : undefined) const info: MessageV2.Info = { id: input.messageID ?? Identifier.ascending("message"),