UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

37 lines (36 loc) • 2.15 kB
import { r as normalizeProviderId } from "./provider-id-D1VImdKk.mjs"; import { a as resolveAuthProfileOrder } from "./order-BJ9-s7yV.mjs"; import { n as ensureAuthProfileStore } from "./store-runtime-DZk7O5wt.mjs"; import { t as resolveRuntimeCliBackends } from "./cli-backends.runtime.js"; import { s as resolveCliRuntimeExecutionProvider } from "./model-runtime-aliases-t0kOML62.mjs"; import { o as resolveModelAuthMode } from "./model-auth-CU3YlZuV.mjs"; //#region src/agents/embedded-agent-runner/cli-backend-dispatch-eligibility.ts /** Reads credential metadata only; never materializes or refreshes credentials per turn. */ function resolveEmbeddedCliBackendDispatchEligibility(params) { const backends = new Map(resolveRuntimeCliBackends("metadata").map((backend) => [normalizeProviderId(backend.id), backend])); const requestedProvider = normalizeProviderId(params.provider ?? ""); const provider = backends.has(requestedProvider) ? requestedProvider : normalizeProviderId(resolveCliRuntimeExecutionProvider({ provider: params.provider ?? "", cfg: params.config, agentId: params.agentId, modelId: params.model, authProfileId: params.authProfileId, preparedAuthStore: params.preparedAuthStore }) ?? ""); if (!backends.get(provider)?.subscriptionAuthDispatch) return; try { const store = params.preparedAuthStore ?? ensureAuthProfileStore(params.agentDir, { config: params.config }); const pinnedType = params.authProfileId ? store.profiles[params.authProfileId.trim()]?.type : void 0; const [selectedProfileId] = resolveAuthProfileOrder({ cfg: params.config, store, provider }); const selectedType = pinnedType ?? (selectedProfileId ? store.profiles[selectedProfileId]?.type : void 0); const authMode = selectedType === "api_key" ? "api-key" : selectedType === "oauth" || selectedType === "token" ? selectedType : resolveModelAuthMode(provider, params.config, store, { workspaceDir: params.workspaceDir }); if (authMode === "api-key" || authMode === "mixed" || authMode === "aws-sdk") return; } catch {} return { provider }; } //#endregion export { resolveEmbeddedCliBackendDispatchEligibility as t };