UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

30 lines (29 loc) 1.08 kB
import { n as normalizeAgentModelRefForConfig, t as normalizeAgentModelMapForConfig } from "./model-input-B2zxl6MM.js"; //#region src/plugins/provider-model-primary.ts /** Applies a primary model to agent defaults while preserving model fallback metadata. */ function applyPrimaryModel(cfg, model) { const normalizedModel = normalizeAgentModelRefForConfig(model); const defaults = cfg.agents?.defaults; const existingModel = defaults?.model; const existingModels = normalizeAgentModelMapForConfig(defaults?.models ?? {}); const fallbacks = typeof existingModel === "object" && existingModel !== null && "fallbacks" in existingModel ? existingModel.fallbacks?.map((fallback) => normalizeAgentModelRefForConfig(fallback)) : void 0; return { ...cfg, agents: { ...cfg.agents, defaults: { ...defaults, model: { ...fallbacks ? { fallbacks } : void 0, primary: normalizedModel }, models: { ...existingModels, [normalizedModel]: existingModels?.[normalizedModel] ?? {} } } } }; } //#endregion export { applyPrimaryModel as t };