import { createDefaultModelPresetAppliers, type OpenClawConfig, } from "openclaw/plugin-sdk/provider-onboard"; import { buildMoonshotProvider, MOONSHOT_BASE_URL, MOONSHOT_CN_BASE_URL, MOONSHOT_DEFAULT_MODEL_ID, } from "./provider-catalog.js"; export const MOONSHOT_DEFAULT_MODEL_REF = `moonshot/${MOONSHOT_DEFAULT_MODEL_ID}`; const moonshotPresetAppliers = createDefaultModelPresetAppliers<[string]>({ primaryModelRef: MOONSHOT_DEFAULT_MODEL_REF, resolveParams: (_cfg: OpenClawConfig, baseUrl: string) => { const defaultModel = buildMoonshotProvider().models[0]; if (!defaultModel) { return null; } return { providerId: "moonshot", api: "openai-completions", baseUrl, defaultModel, defaultModelId: MOONSHOT_DEFAULT_MODEL_ID, aliases: [{ modelRef: MOONSHOT_DEFAULT_MODEL_REF, alias: "Kimi" }], }; }, }); export function applyMoonshotProviderConfig(cfg: OpenClawConfig): OpenClawConfig { return moonshotPresetAppliers.applyProviderConfig(cfg, MOONSHOT_BASE_URL); } export function applyMoonshotProviderConfigCn(cfg: OpenClawConfig): OpenClawConfig { return moonshotPresetAppliers.applyProviderConfig(cfg, MOONSHOT_CN_BASE_URL); } export function applyMoonshotConfig(cfg: OpenClawConfig): OpenClawConfig { return moonshotPresetAppliers.applyConfig(cfg, MOONSHOT_BASE_URL); } export function applyMoonshotConfigCn(cfg: OpenClawConfig): OpenClawConfig { return moonshotPresetAppliers.applyConfig(cfg, MOONSHOT_CN_BASE_URL); }