diff --git a/extensions/smart-router/index.ts b/extensions/smart-router/index.ts index f7ec554..17acc97 100644 --- a/extensions/smart-router/index.ts +++ b/extensions/smart-router/index.ts @@ -14,11 +14,11 @@ let lockedModel: any = null; const MODELS: Record = { "free-core": { provider: "openrouter", id: "free" }, "router-eval": { provider: "openrouter", id: "free" }, - "economy-devops": { provider: "openrouter", id: "qwen/qwen3.6-flash" }, - "economy-code": { provider: "openrouter", id: "deepseek/deepseek-v4-flash" }, - "precision-devops": { provider: "openrouter", id: "qwen/qwen-2.5-72b-instruct" }, + "economy-devops": { provider: "opencode-go", id: "deepseek/deepseek-v4-flash" }, + "economy-code": { provider: "opencode-go", id: "deepseek/deepseek-v4-pro" }, + "precision-devops": { provider: "openrouter", id: "deepseek/deepseek-v4-pro" }, "precision-code-high":{ provider: "openrouter", id: "deepseek/deepseek-v4-pro" }, - "precision-react": { provider: "openrouter", id: "qwen/qwen3-coder-plus" }, + "precision-react": { provider: "openrouter", id: "deepseek/deepseek-v4-pro" }, "context-heavy": { provider: "openrouter", id: "moonshotai/kimi-k2.6" }, }; @@ -57,7 +57,12 @@ export default function (pi: ExtensionAPI) { } const provider = modelId.substring(0, slashIdx); const id = modelId.substring(slashIdx + 1); - const model = ctx.modelRegistry.find(provider, id); + let model = ctx.modelRegistry.find(provider, id); + if (!model) { + // OpenRouter model IDs include provider prefix (e.g. "openrouter/owl-alpha") + // so try with the full provider/model-id format + model = ctx.modelRegistry.find(provider, `${provider}/${id}`); + } if (!model) { ctx.ui.notify(`Model not found: ${modelId}`, "error"); return;