UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

48 lines (47 loc) 1.63 kB
import { a as prepareProviderRuntimeAuth } from "./provider-runtime.runtime.js"; import { t as resolveApiKeyForProviderCore } from "./model-auth-provider-Dd_3dXeY.js"; import { i as getApiKeyForModelCore } from "./model-auth-C48_DZ-I.js"; //#region src/plugins/runtime/runtime-model-auth.runtime.ts async function getApiKeyForModel(params) { return getApiKeyForModelCore(params); } async function resolveProviderRuntimeApiKey(params) { return resolveApiKeyForProviderCore(params); } /** * Resolve request-ready auth for a runtime model, applying any provider-owned * `prepareRuntimeAuth` exchange on top of the standard credential lookup. */ async function getRuntimeAuthForModelCore(params) { const resolvedAuth = await getApiKeyForModelCore({ model: params.model, cfg: params.cfg, workspaceDir: params.workspaceDir }); if (!resolvedAuth.apiKey || resolvedAuth.mode === "aws-sdk") return resolvedAuth; const preparedAuth = await prepareProviderRuntimeAuth({ provider: params.model.provider, config: params.cfg, workspaceDir: params.workspaceDir, env: process.env, context: { config: params.cfg, workspaceDir: params.workspaceDir, env: process.env, provider: params.model.provider, modelId: params.model.id, model: params.model, apiKey: resolvedAuth.apiKey, authMode: resolvedAuth.mode, profileId: resolvedAuth.profileId } }); if (!preparedAuth) return resolvedAuth; return { ...resolvedAuth, ...preparedAuth, apiKey: preparedAuth.apiKey ?? resolvedAuth.apiKey }; } //#endregion export { getApiKeyForModel, getRuntimeAuthForModelCore, resolveProviderRuntimeApiKey };