summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJosh <[email protected]>2025-07-30 20:22:24 -0700
committerGitHub <[email protected]>2025-07-30 23:22:24 -0400
commit4a221868daac9118383b17aa38b6da0bde32ee0a (patch)
tree0a02890570574d0dfae176b77842a68ae55c9885
parent31b8e3d5ab90983172616cc2018bad49ca7dd0f0 (diff)
downloadopencode-4a221868daac9118383b17aa38b6da0bde32ee0a.tar.gz
opencode-4a221868daac9118383b17aa38b6da0bde32ee0a.zip
Add http-referer header for vercel ai gateway requests (#1403)
-rw-r--r--packages/opencode/src/provider/provider.ts39
1 files changed, 25 insertions, 14 deletions
diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts
index 5373fb3e2..d3e2f879c 100644
--- a/packages/opencode/src/provider/provider.ts
+++ b/packages/opencode/src/provider/provider.ts
@@ -97,7 +97,7 @@ export namespace Provider {
Array.isArray(msg.content) && msg.content.some((part: any) => part.type === "image_url"),
)
}
- } catch {}
+ } catch { }
const headers: Record<string, string> = {
...init.headers,
...copilot.HEADERS,
@@ -194,6 +194,17 @@ export namespace Provider {
},
}
},
+ vercel: async () => {
+ return {
+ autoload: false,
+ options: {
+ headers: {
+ "http-referer": "https://opencode.ai/",
+ "x-title": "opencode",
+ },
+ },
+ }
+ },
}
const state = App.state("provider", async () => {
@@ -263,26 +274,26 @@ export namespace Provider {
cost:
!model.cost && !existing?.cost
? {
- input: 0,
- output: 0,
- cache_read: 0,
- cache_write: 0,
- }
+ input: 0,
+ output: 0,
+ cache_read: 0,
+ cache_write: 0,
+ }
: {
- cache_read: 0,
- cache_write: 0,
- ...existing?.cost,
- ...model.cost,
- },
+ cache_read: 0,
+ cache_write: 0,
+ ...existing?.cost,
+ ...model.cost,
+ },
options: {
...existing?.options,
...model.options,
},
limit: model.limit ??
existing?.limit ?? {
- context: 0,
- output: 0,
- },
+ context: 0,
+ output: 0,
+ },
}
parsed.models[modelID] = parsedModel
}