diff --git a/packages/ui/src/components/chat/multix-v2/index.tsx b/packages/ui/src/components/chat/multix-v2/index.tsx index 84f5069..e39f680 100644 --- a/packages/ui/src/components/chat/multix-v2/index.tsx +++ b/packages/ui/src/components/chat/multix-v2/index.tsx @@ -69,6 +69,7 @@ export default function MultiXV2(props: MultiXV2Props) { const [selectedTaskId, setSelectedTaskIdLocal] = createSignal(null); const [messageIds, setMessageIds] = createSignal([]); const [cachedModelId, setCachedModelId] = createSignal("unknown"); + const [cachedProviderId, setCachedProviderId] = createSignal(""); const [cachedAgent, setCachedAgent] = createSignal(""); const [cachedTokensUsed, setCachedTokensUsed] = createSignal(0); const [cachedCost, setCachedCost] = createSignal(0); @@ -184,6 +185,9 @@ export default function MultiXV2(props: MultiXV2Props) { if (taskSession?.model?.modelId) { setCachedModelId(taskSession.model.modelId); } + if (taskSession?.model?.providerId) { + setCachedProviderId(taskSession.model.providerId); + } if (taskSession?.agent) { setCachedAgent(taskSession.agent); } @@ -677,11 +681,14 @@ export default function MultiXV2(props: MultiXV2Props) { { // Update the TASK's session, not a global cache const taskSessionId = getActiveTaskSessionId(); log.info("[MultiX] Changing model for task session", { taskSessionId, model }); + // Immediately update cached values for responsive UI + setCachedModelId(model.modelId); + setCachedProviderId(model.providerId); updateSessionModelForSession(props.instanceId, taskSessionId, model); // Force immediate sync to reflect the change setTimeout(() => syncFromStore(), 50);