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" &&