From 52eb90e7c3cd1e8fd256f0854a1ae7492671d3e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E4=B8=AD=E6=B4=8B?= Date: Fri, 5 Jun 2026 20:43:59 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E7=94=A8=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=8F=98=E9=87=8F=E9=85=8D=20provider=20baseURL?= =?UTF-8?q?=EF=BC=88=E6=89=80=E6=9C=89=20provider=20=E9=80=9A=E7=94=A8?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit resolveSDK 在 config 未设 baseURL 时,回退读环境变量: 专属 _BASE_URL(如 OPENAI_BASE_URL/ANTHROPIC_BASE_URL) > 通用 ZMO_BASE_URL。env.all() 含 process.env,用户设系统环境变量即可。 优先级:config options.baseURL > 专属env > 通用 ZMO_BASE_URL > 官方默认。 Co-Authored-By: Claude Opus 4.7 --- packages/opencode/src/provider/provider.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts index 667955b74..04347e6d3 100644 --- a/packages/opencode/src/provider/provider.ts +++ b/packages/opencode/src/provider/provider.ts @@ -1540,6 +1540,17 @@ export const layer = Layer.effect( const provider = s.providers[model.providerID] const options = { ...provider.options } + // zmo: 支持用环境变量配 baseURL(所有 provider 通用)。 + // 优先级:config options.baseURL > 专属 _BASE_URL > 通用 ZMO_BASE_URL。 + // 仅当 config 未显式设置 baseURL 时才用环境变量回退。 + if (typeof options["baseURL"] !== "string" || options["baseURL"] === "") { + const envName = model.providerID.toUpperCase().replace(/-/g, "_") + "_BASE_URL" + const envBaseURL = envs[envName] ?? envs["ZMO_BASE_URL"] + if (typeof envBaseURL === "string" && envBaseURL !== "") { + options["baseURL"] = envBaseURL + } + } + if ( model.providerID === "google-vertex" && model.api.npm === "@ai-sdk/google-vertex/anthropic" &&