import { applyAgentDefaultModelPrimary, applyProviderConfigWithDefaultModel, type OpenClawConfig, } from "openclaw/plugin-sdk/provider-onboard"; import { buildKimiCodingProvider, KIMI_CODING_BASE_URL, KIMI_CODING_DEFAULT_MODEL_ID, } from "./provider-catalog.js"; export const KIMI_MODEL_REF = `kimi/${KIMI_CODING_DEFAULT_MODEL_ID}`; export const KIMI_CODING_MODEL_REF = KIMI_MODEL_REF; export function applyKimiCodeProviderConfig(cfg: OpenClawConfig): OpenClawConfig { const models = { ...cfg.agents?.defaults?.models }; models[KIMI_MODEL_REF] = { ...models[KIMI_MODEL_REF], alias: models[KIMI_MODEL_REF]?.alias ?? "Kimi", }; const defaultModel = buildKimiCodingProvider().models[0]; if (!defaultModel) { return cfg; } return applyProviderConfigWithDefaultModel(cfg, { agentModels: models, providerId: "kimi", api: "anthropic-messages", baseUrl: KIMI_CODING_BASE_URL, defaultModel, defaultModelId: KIMI_CODING_DEFAULT_MODEL_ID, }); } export function applyKimiCodeConfig(cfg: OpenClawConfig): OpenClawConfig { return applyAgentDefaultModelPrimary(applyKimiCodeProviderConfig(cfg), KIMI_MODEL_REF); }