summaryrefslogtreecommitdiffhomepage
path: root/packages
diff options
context:
space:
mode:
authorFrank <[email protected]>2025-10-27 21:36:10 -0400
committerFrank <[email protected]>2025-10-27 21:36:10 -0400
commit6fe8e3973cdcb623a39df0760a68cb49705789a0 (patch)
treea861ba02da38315386e8e2b31be47f10226ffd49 /packages
parent78169017136048fc65fb6cb9d13095a0c6c50af3 (diff)
downloadopencode-6fe8e3973cdcb623a39df0760a68cb49705789a0.tar.gz
opencode-6fe8e3973cdcb623a39df0760a68cb49705789a0.zip
zen: support 1M claude context
Diffstat (limited to 'packages')
-rw-r--r--packages/console/app/src/routes/zen/util/handler.ts2
-rw-r--r--packages/console/app/src/routes/zen/util/provider/anthropic.ts5
-rw-r--r--packages/console/app/src/routes/zen/util/provider/openai-compatible.ts2
-rw-r--r--packages/console/app/src/routes/zen/util/provider/openai.ts2
-rw-r--r--packages/console/app/src/routes/zen/util/provider/provider.ts2
5 files changed, 8 insertions, 5 deletions
diff --git a/packages/console/app/src/routes/zen/util/handler.ts b/packages/console/app/src/routes/zen/util/handler.ts
index 7fbb518a0..85ba5eea1 100644
--- a/packages/console/app/src/routes/zen/util/handler.ts
+++ b/packages/console/app/src/routes/zen/util/handler.ts
@@ -67,7 +67,7 @@ export async function handler(
const headers = input.request.headers
headers.delete("host")
headers.delete("content-length")
- providerInfo.modifyHeaders(headers, providerInfo.apiKey)
+ providerInfo.modifyHeaders(headers, body, providerInfo.apiKey)
Object.entries(providerInfo.headerMappings ?? {}).forEach(([k, v]) => {
headers.set(k, headers.get(v)!)
})
diff --git a/packages/console/app/src/routes/zen/util/provider/anthropic.ts b/packages/console/app/src/routes/zen/util/provider/anthropic.ts
index 64b040a53..807f427af 100644
--- a/packages/console/app/src/routes/zen/util/provider/anthropic.ts
+++ b/packages/console/app/src/routes/zen/util/provider/anthropic.ts
@@ -17,9 +17,12 @@ type Usage = {
export const anthropicHelper = {
format: "anthropic",
modifyUrl: (providerApi: string) => providerApi + "/messages",
- modifyHeaders: (headers: Headers, apiKey: string) => {
+ modifyHeaders: (headers: Headers, body: Record<string, any>, apiKey: string) => {
headers.set("x-api-key", apiKey)
headers.set("anthropic-version", headers.get("anthropic-version") ?? "2023-06-01")
+ if (body.model.startsWith("claude-sonnet-")) {
+ headers.set("anthropic-beta", "context-1m-2025-08-07")
+ }
},
modifyBody: (body: Record<string, any>) => {
return {
diff --git a/packages/console/app/src/routes/zen/util/provider/openai-compatible.ts b/packages/console/app/src/routes/zen/util/provider/openai-compatible.ts
index aae6bed57..cad6bd686 100644
--- a/packages/console/app/src/routes/zen/util/provider/openai-compatible.ts
+++ b/packages/console/app/src/routes/zen/util/provider/openai-compatible.ts
@@ -24,7 +24,7 @@ type Usage = {
export const oaCompatHelper = {
format: "oa-compat",
modifyUrl: (providerApi: string) => providerApi + "/chat/completions",
- modifyHeaders: (headers: Headers, apiKey: string) => {
+ modifyHeaders: (headers: Headers, body: Record<string, any>, apiKey: string) => {
headers.set("authorization", `Bearer ${apiKey}`)
},
modifyBody: (body: Record<string, any>) => {
diff --git a/packages/console/app/src/routes/zen/util/provider/openai.ts b/packages/console/app/src/routes/zen/util/provider/openai.ts
index 9781d821d..21c15f355 100644
--- a/packages/console/app/src/routes/zen/util/provider/openai.ts
+++ b/packages/console/app/src/routes/zen/util/provider/openai.ts
@@ -15,7 +15,7 @@ type Usage = {
export const openaiHelper = {
format: "openai",
modifyUrl: (providerApi: string) => providerApi + "/responses",
- modifyHeaders: (headers: Headers, apiKey: string) => {
+ modifyHeaders: (headers: Headers, body: Record<string, any>, apiKey: string) => {
headers.set("authorization", `Bearer ${apiKey}`)
},
modifyBody: (body: Record<string, any>) => {
diff --git a/packages/console/app/src/routes/zen/util/provider/provider.ts b/packages/console/app/src/routes/zen/util/provider/provider.ts
index 5beb460e9..c8ba644ba 100644
--- a/packages/console/app/src/routes/zen/util/provider/provider.ts
+++ b/packages/console/app/src/routes/zen/util/provider/provider.ts
@@ -28,7 +28,7 @@ import {
export type ProviderHelper = {
format: Format
modifyUrl: (providerApi: string) => string
- modifyHeaders: (headers: Headers, apiKey: string) => void
+ modifyHeaders: (headers: Headers, body: Record<string, any>, apiKey: string) => void
modifyBody: (body: Record<string, any>) => Record<string, any>
createUsageParser: () => {
parse: (chunk: string) => void