summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/src/provider/provider.ts23
1 files changed, 8 insertions, 15 deletions
diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts
index d4d4b3e26..513c8524d 100644
--- a/packages/opencode/src/provider/provider.ts
+++ b/packages/opencode/src/provider/provider.ts
@@ -598,11 +598,14 @@ export namespace Provider {
providerID: provider.id,
name: model.name,
family: model.family,
- api: {
- id: model.id,
- url: provider.api!,
- npm: model.provider?.npm ?? provider.npm ?? "@ai-sdk/openai-compatible",
- },
+ api: {
+ id: model.id,
+ url: provider.api!,
+ npm: iife(() => {
+ if (provider.id.startsWith("github-copilot")) return "@ai-sdk/github-copilot"
+ return model.provider?.npm ?? provider.npm ?? "@ai-sdk/openai-compatible"
+ }),
+ },
status: model.status ?? "active",
headers: model.headers ?? {},
options: model.options ?? {},
@@ -908,16 +911,6 @@ export namespace Provider {
continue
}
- if (providerID === "github-copilot" || providerID === "github-copilot-enterprise") {
- provider.models = mapValues(provider.models, (model) => ({
- ...model,
- api: {
- ...model.api,
- npm: "@ai-sdk/github-copilot",
- },
- }))
- }
-
const configProvider = config.provider?.[providerID]
for (const [modelID, model] of Object.entries(provider.models)) {