diff --git a/extensions/kimi-coding/index.ts b/extensions/kimi-coding/index.ts index 3803a0af951..03f680a5c38 100644 --- a/extensions/kimi-coding/index.ts +++ b/extensions/kimi-coding/index.ts @@ -4,10 +4,11 @@ import { isRecord } from "openclaw/plugin-sdk/text-runtime"; import { applyKimiCodeConfig, KIMI_CODING_MODEL_REF } from "./onboard.js"; import { buildKimiCodingProvider } from "./provider-catalog.js"; -const PROVIDER_ID = "kimi-coding"; +const PLUGIN_ID = "kimi"; +const PROVIDER_ID = "kimi"; const kimiCodingPlugin = { - id: PROVIDER_ID, + id: PLUGIN_ID, name: "Kimi Provider", description: "Bundled Kimi provider plugin", configSchema: emptyPluginConfigSchema(), @@ -15,7 +16,7 @@ const kimiCodingPlugin = { api.registerProvider({ id: PROVIDER_ID, label: "Kimi", - aliases: ["kimi", "kimi-code"], + aliases: ["kimi-code", "kimi-coding"], docsPath: "/providers/moonshot", envVars: ["KIMI_API_KEY", "KIMICODE_API_KEY"], auth: [ diff --git a/extensions/kimi-coding/onboard.ts b/extensions/kimi-coding/onboard.ts index c97738f1e72..60ce12553f1 100644 --- a/extensions/kimi-coding/onboard.ts +++ b/extensions/kimi-coding/onboard.ts @@ -9,13 +9,14 @@ import { KIMI_CODING_DEFAULT_MODEL_ID, } from "./provider-catalog.js"; -export const KIMI_CODING_MODEL_REF = `kimi-coding/${KIMI_CODING_DEFAULT_MODEL_ID}`; +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_CODING_MODEL_REF] = { - ...models[KIMI_CODING_MODEL_REF], - alias: models[KIMI_CODING_MODEL_REF]?.alias ?? "Kimi", + models[KIMI_MODEL_REF] = { + ...models[KIMI_MODEL_REF], + alias: models[KIMI_MODEL_REF]?.alias ?? "Kimi", }; const defaultModel = buildKimiCodingProvider().models[0]; @@ -25,7 +26,7 @@ export function applyKimiCodeProviderConfig(cfg: OpenClawConfig): OpenClawConfig return applyProviderConfigWithDefaultModel(cfg, { agentModels: models, - providerId: "kimi-coding", + providerId: "kimi", api: "anthropic-messages", baseUrl: KIMI_CODING_BASE_URL, defaultModel, @@ -34,5 +35,5 @@ export function applyKimiCodeProviderConfig(cfg: OpenClawConfig): OpenClawConfig } export function applyKimiCodeConfig(cfg: OpenClawConfig): OpenClawConfig { - return applyAgentDefaultModelPrimary(applyKimiCodeProviderConfig(cfg), KIMI_CODING_MODEL_REF); + return applyAgentDefaultModelPrimary(applyKimiCodeProviderConfig(cfg), KIMI_MODEL_REF); } diff --git a/extensions/whatsapp/src/channel.ts b/extensions/whatsapp/src/channel.ts index ae7a6b1e56c..63d222ba1ed 100644 --- a/extensions/whatsapp/src/channel.ts +++ b/extensions/whatsapp/src/channel.ts @@ -34,7 +34,7 @@ import { type ResolvedWhatsAppAccount, } from "./accounts.js"; import { looksLikeWhatsAppTargetId, normalizeWhatsAppMessagingTarget } from "./normalize.js"; -import { whatsappSetupWizardProxy } from "./plugin-shared.js"; +import { loadWhatsAppChannelRuntime, whatsappSetupWizardProxy } from "./plugin-shared.js"; import { getWhatsAppRuntime } from "./runtime.js"; import { whatsappSetupAdapter } from "./setup-core.js"; import { collectWhatsAppStatusIssues } from "./status-issues.js"; diff --git a/extensions/whatsapp/src/plugin-shared.ts b/extensions/whatsapp/src/plugin-shared.ts index 96a5f86e6f9..fee78e620a4 100644 --- a/extensions/whatsapp/src/plugin-shared.ts +++ b/extensions/whatsapp/src/plugin-shared.ts @@ -1,7 +1,7 @@ import type { ChannelPlugin } from "openclaw/plugin-sdk/whatsapp"; import { type ResolvedWhatsAppAccount } from "./accounts.js"; -async function loadWhatsAppChannelRuntime() { +export async function loadWhatsAppChannelRuntime() { return await import("./channel.runtime.js"); } diff --git a/src/agents/models-config.providers.moonshot.test.ts b/src/agents/models-config.providers.moonshot.test.ts index 1d0d29d1b30..b224d1c44d3 100644 --- a/src/agents/models-config.providers.moonshot.test.ts +++ b/src/agents/models-config.providers.moonshot.test.ts @@ -5,7 +5,7 @@ import { describe, expect, it } from "vitest"; import { MOONSHOT_BASE_URL as MOONSHOT_AI_BASE_URL, MOONSHOT_CN_BASE_URL, -} from "../commands/onboard-auth.models.js"; +} from "../plugins/provider-model-definitions.js"; import { captureEnv } from "../test-utils/env.js"; import { resolveImplicitProvidersForTest } from "./models-config.e2e-harness.js"; import { applyNativeStreamingUsageCompat } from "./models-config.providers.js"; diff --git a/src/commands/auth-choice.test.ts b/src/commands/auth-choice.test.ts index 038c672ee14..a394bf00528 100644 --- a/src/commands/auth-choice.test.ts +++ b/src/commands/auth-choice.test.ts @@ -26,16 +26,16 @@ import { setDetectZaiEndpointForTesting } from "../../extensions/zai/detect.js"; import zaiPlugin from "../../extensions/zai/index.js"; import { resolveAgentDir } from "../agents/agent-scope.js"; import { resolveAgentModelPrimaryValue } from "../config/model-input.js"; +import { + MINIMAX_CN_API_BASE_URL, + ZAI_CODING_CN_BASE_URL, + ZAI_CODING_GLOBAL_BASE_URL, +} from "../plugins/provider-model-definitions.js"; import type { ProviderPlugin } from "../plugins/types.js"; import { createCapturedPluginRegistration } from "../test-utils/plugin-registration.js"; import type { WizardPrompter } from "../wizard/prompts.js"; import { applyAuthChoice, resolvePreferredProviderForAuthChoice } from "./auth-choice.js"; import { GOOGLE_GEMINI_DEFAULT_MODEL } from "./google-gemini-model-default.js"; -import { - MINIMAX_CN_API_BASE_URL, - ZAI_CODING_CN_BASE_URL, - ZAI_CODING_GLOBAL_BASE_URL, -} from "./onboard-auth.js"; import type { AuthChoice } from "./onboard-types.js"; import { authProfilePathForAgent, diff --git a/src/commands/auth-credentials.ts b/src/commands/auth-credentials.ts deleted file mode 100644 index 94e320f48db..00000000000 --- a/src/commands/auth-credentials.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { - buildApiKeyCredential, - type ApiKeyStorageOptions, - writeOAuthCredentials, - type WriteOAuthCredentialsOptions, -} from "../plugins/provider-auth-helpers.js"; diff --git a/src/commands/auth-profile-config.ts b/src/commands/auth-profile-config.ts deleted file mode 100644 index c3879e01846..00000000000 --- a/src/commands/auth-profile-config.ts +++ /dev/null @@ -1 +0,0 @@ -export { applyAuthProfileConfig } from "../plugins/provider-auth-helpers.js"; diff --git a/src/commands/onboard-auth.config-core.kilocode.test.ts b/src/commands/onboard-auth.config-core.kilocode.test.ts index 82faf85c8f0..511b5550890 100644 --- a/src/commands/onboard-auth.config-core.kilocode.test.ts +++ b/src/commands/onboard-auth.config-core.kilocode.test.ts @@ -2,23 +2,23 @@ import { mkdtempSync } from "node:fs"; import { tmpdir } from "node:os"; import { join } from "node:path"; import { describe, expect, it } from "vitest"; -import { resolveApiKeyForProvider, resolveEnvApiKey } from "../agents/model-auth.js"; -import type { OpenClawConfig } from "../config/config.js"; -import { resolveAgentModelPrimaryValue } from "../config/model-input.js"; -import { captureEnv } from "../test-utils/env.js"; import { applyKilocodeProviderConfig, applyKilocodeConfig, KILOCODE_BASE_URL, -} from "./onboard-auth.config-core.js"; -import { KILOCODE_DEFAULT_MODEL_REF } from "./onboard-auth.credentials.js"; + KILOCODE_DEFAULT_MODEL_REF, +} from "../../extensions/kilocode/onboard.js"; +import { resolveApiKeyForProvider, resolveEnvApiKey } from "../agents/model-auth.js"; +import type { OpenClawConfig } from "../config/config.js"; +import { resolveAgentModelPrimaryValue } from "../config/model-input.js"; import { buildKilocodeModelDefinition, KILOCODE_DEFAULT_MODEL_ID, KILOCODE_DEFAULT_CONTEXT_WINDOW, KILOCODE_DEFAULT_MAX_TOKENS, KILOCODE_DEFAULT_COST, -} from "./onboard-auth.models.js"; +} from "../plugins/provider-model-definitions.js"; +import { captureEnv } from "../test-utils/env.js"; const emptyCfg: OpenClawConfig = {}; const KILOCODE_MODEL_IDS = ["kilo/auto"]; diff --git a/src/commands/onboard-auth.config-core.ts b/src/commands/onboard-auth.config-core.ts deleted file mode 100644 index 65b4fd40cf0..00000000000 --- a/src/commands/onboard-auth.config-core.ts +++ /dev/null @@ -1,82 +0,0 @@ -export { - applyCloudflareAiGatewayConfig, - applyCloudflareAiGatewayProviderConfig, - applyVercelAiGatewayConfig, - applyVercelAiGatewayProviderConfig, -} from "./onboard-auth.config-gateways.js"; -export { - applyLitellmConfig, - applyLitellmProviderConfig, - LITELLM_BASE_URL, - LITELLM_DEFAULT_MODEL_ID, -} from "./onboard-auth.config-litellm.js"; -export { applyAuthProfileConfig } from "../plugins/provider-auth-helpers.js"; -export { - applyHuggingfaceConfig, - applyHuggingfaceProviderConfig, - HUGGINGFACE_DEFAULT_MODEL_REF, -} from "../../extensions/huggingface/onboard.js"; -export { - applyKimiCodeConfig, - applyKimiCodeProviderConfig, -} from "../../extensions/kimi-coding/onboard.js"; -export { - applyKilocodeConfig, - applyKilocodeProviderConfig, - KILOCODE_BASE_URL, - KILOCODE_DEFAULT_MODEL_REF, -} from "../../extensions/kilocode/onboard.js"; -export { - applyMistralConfig, - applyMistralProviderConfig, - MISTRAL_DEFAULT_MODEL_REF, -} from "../../extensions/mistral/onboard.js"; -export { - applyModelStudioConfig, - applyModelStudioConfigCn, - applyModelStudioProviderConfig, - applyModelStudioProviderConfigCn, - MODELSTUDIO_CN_BASE_URL, - MODELSTUDIO_DEFAULT_MODEL_REF, - MODELSTUDIO_GLOBAL_BASE_URL, -} from "../../extensions/modelstudio/onboard.js"; -export { - applyMoonshotConfig, - applyMoonshotConfigCn, - applyMoonshotProviderConfig, - applyMoonshotProviderConfigCn, -} from "../../extensions/moonshot/onboard.js"; -export { - applyOpenrouterConfig, - applyOpenrouterProviderConfig, -} from "../../extensions/openrouter/onboard.js"; -export { - applyQianfanConfig, - applyQianfanProviderConfig, -} from "../../extensions/qianfan/onboard.js"; -export { - applySyntheticConfig, - applySyntheticProviderConfig, - SYNTHETIC_DEFAULT_MODEL_REF, -} from "../../extensions/synthetic/onboard.js"; -export { - applyTogetherConfig, - applyTogetherProviderConfig, - TOGETHER_DEFAULT_MODEL_REF, -} from "../../extensions/together/onboard.js"; -export { - applyVeniceConfig, - applyVeniceProviderConfig, - VENICE_DEFAULT_MODEL_REF, -} from "../../extensions/venice/onboard.js"; -export { - applyXaiConfig, - applyXaiProviderConfig, - XAI_DEFAULT_MODEL_REF, -} from "../../extensions/xai/onboard.js"; -export { applyXiaomiConfig, applyXiaomiProviderConfig } from "../../extensions/xiaomi/onboard.js"; -export { - applyZaiConfig, - applyZaiProviderConfig, - ZAI_DEFAULT_MODEL_REF, -} from "../../extensions/zai/onboard.js"; diff --git a/src/commands/onboard-auth.config-minimax.ts b/src/commands/onboard-auth.config-minimax.ts deleted file mode 100644 index 8453154bb7f..00000000000 --- a/src/commands/onboard-auth.config-minimax.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { - applyMinimaxApiConfig, - applyMinimaxApiConfigCn, - applyMinimaxApiProviderConfig, - applyMinimaxApiProviderConfigCn, -} from "../../extensions/minimax/onboard.js"; diff --git a/src/commands/onboard-auth.config-opencode-go.ts b/src/commands/onboard-auth.config-opencode-go.ts deleted file mode 100644 index eb31512e565..00000000000 --- a/src/commands/onboard-auth.config-opencode-go.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { - applyOpencodeGoConfig, - applyOpencodeGoProviderConfig, - OPENCODE_GO_DEFAULT_MODEL_REF, -} from "../../extensions/opencode-go/onboard.js"; diff --git a/src/commands/onboard-auth.config-opencode.ts b/src/commands/onboard-auth.config-opencode.ts deleted file mode 100644 index d9aa6f97436..00000000000 --- a/src/commands/onboard-auth.config-opencode.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { - applyOpencodeZenConfig, - applyOpencodeZenProviderConfig, - OPENCODE_ZEN_DEFAULT_MODEL_REF, -} from "../../extensions/opencode/onboard.js"; diff --git a/src/commands/onboard-auth.config-shared.test.ts b/src/commands/onboard-auth.config-shared.test.ts index de2dc9adb62..01cda96ae74 100644 --- a/src/commands/onboard-auth.config-shared.test.ts +++ b/src/commands/onboard-auth.config-shared.test.ts @@ -6,7 +6,7 @@ import { applyProviderConfigWithDefaultModel, applyProviderConfigWithDefaultModels, applyProviderConfigWithModelCatalog, -} from "./onboard-auth.config-shared.js"; +} from "../plugins/provider-onboarding-config.js"; function makeModel(id: string): ModelDefinitionConfig { return { diff --git a/src/commands/onboard-auth.config-shared.ts b/src/commands/onboard-auth.config-shared.ts deleted file mode 100644 index 7c278eec644..00000000000 --- a/src/commands/onboard-auth.config-shared.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { - applyAgentDefaultModelPrimary, - applyOnboardAuthAgentModelsAndProviders, - applyProviderConfigWithDefaultModel, - applyProviderConfigWithDefaultModels, - applyProviderConfigWithModelCatalog, -} from "../plugins/provider-onboarding-config.js"; diff --git a/src/commands/onboard-auth.credentials.test.ts b/src/commands/onboard-auth.credentials.test.ts index e844ac501c2..8c80f51ec2a 100644 --- a/src/commands/onboard-auth.credentials.test.ts +++ b/src/commands/onboard-auth.credentials.test.ts @@ -6,7 +6,7 @@ import { setOpencodeZenApiKey, setOpenaiApiKey, setVolcengineApiKey, -} from "./onboard-auth.js"; +} from "../plugins/provider-auth-storage.js"; import { createAuthTestLifecycle, readAuthProfilesForAgent, diff --git a/src/commands/onboard-auth.credentials.ts b/src/commands/onboard-auth.credentials.ts deleted file mode 100644 index 578ad17859d..00000000000 --- a/src/commands/onboard-auth.credentials.ts +++ /dev/null @@ -1,43 +0,0 @@ -export { - buildApiKeyCredential, - type ApiKeyStorageOptions, - HUGGINGFACE_DEFAULT_MODEL_REF, - KILOCODE_DEFAULT_MODEL_REF, - LITELLM_DEFAULT_MODEL_REF, - OPENROUTER_DEFAULT_MODEL_REF, - setAnthropicApiKey, - setByteplusApiKey, - setCloudflareAiGatewayConfig, - setGeminiApiKey, - setHuggingfaceApiKey, - setKilocodeApiKey, - setKimiCodingApiKey, - setLitellmApiKey, - setMinimaxApiKey, - setMistralApiKey, - setModelStudioApiKey, - setMoonshotApiKey, - setOpenaiApiKey, - setOpencodeGoApiKey, - setOpencodeZenApiKey, - setOpenrouterApiKey, - setQianfanApiKey, - setSyntheticApiKey, - setTogetherApiKey, - setVeniceApiKey, - setVercelAiGatewayApiKey, - setVolcengineApiKey, - setXaiApiKey, - setXiaomiApiKey, - setZaiApiKey, - TOGETHER_DEFAULT_MODEL_REF, - VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, - writeOAuthCredentials, - type WriteOAuthCredentialsOptions, - XIAOMI_DEFAULT_MODEL_REF, - ZAI_DEFAULT_MODEL_REF, -} from "../plugins/provider-auth-storage.js"; -export { CLOUDFLARE_AI_GATEWAY_DEFAULT_MODEL_REF } from "../agents/cloudflare-ai-gateway.js"; -export { MISTRAL_DEFAULT_MODEL_REF } from "../../extensions/mistral/onboard.js"; -export { MODELSTUDIO_DEFAULT_MODEL_REF } from "../../extensions/modelstudio/onboard.js"; -export { XAI_DEFAULT_MODEL_REF } from "../../extensions/xai/onboard.js"; diff --git a/src/commands/onboard-auth.models.ts b/src/commands/onboard-auth.models.ts deleted file mode 100644 index 5788d0ad2ca..00000000000 --- a/src/commands/onboard-auth.models.ts +++ /dev/null @@ -1,140 +0,0 @@ -import { KIMI_CODING_MODEL_REF } from "../../extensions/kimi-coding/onboard.js"; -import { - KIMI_DEFAULT_MODEL_ID as KIMI_CODING_MODEL_ID, - KIMI_CODING_BASE_URL, -} from "../../extensions/kimi-coding/provider-catalog.js"; -import { - DEFAULT_MINIMAX_BASE_URL, - MINIMAX_API_BASE_URL, - MINIMAX_API_COST, - MINIMAX_CN_API_BASE_URL, - MINIMAX_HOSTED_COST, - MINIMAX_HOSTED_MODEL_ID, - MINIMAX_HOSTED_MODEL_REF, - MINIMAX_LM_STUDIO_COST, - buildMinimaxApiModelDefinition, - buildMinimaxModelDefinition, -} from "../../extensions/minimax/model-definitions.js"; -import { - buildMistralModelDefinition, - MISTRAL_BASE_URL, - MISTRAL_DEFAULT_COST, - MISTRAL_DEFAULT_MODEL_ID, - MISTRAL_DEFAULT_MODEL_REF, -} from "../../extensions/mistral/model-definitions.js"; -import { - MODELSTUDIO_CN_BASE_URL, - MODELSTUDIO_DEFAULT_COST, - MODELSTUDIO_DEFAULT_MODEL_ID, - MODELSTUDIO_DEFAULT_MODEL_REF, - MODELSTUDIO_GLOBAL_BASE_URL, - buildModelStudioDefaultModelDefinition, - buildModelStudioModelDefinition, -} from "../../extensions/modelstudio/model-definitions.js"; -import { - MOONSHOT_CN_BASE_URL, - MOONSHOT_DEFAULT_MODEL_REF, -} from "../../extensions/moonshot/onboard.js"; -import { - buildMoonshotProvider, - MOONSHOT_BASE_URL, - MOONSHOT_DEFAULT_MODEL_ID, -} from "../../extensions/moonshot/provider-catalog.js"; -import { QIANFAN_DEFAULT_MODEL_REF } from "../../extensions/qianfan/onboard.js"; -import { - QIANFAN_BASE_URL, - QIANFAN_DEFAULT_MODEL_ID, -} from "../../extensions/qianfan/provider-catalog.js"; -import { - XAI_BASE_URL, - XAI_DEFAULT_COST, - XAI_DEFAULT_MODEL_ID, - XAI_DEFAULT_MODEL_REF, - buildXaiModelDefinition, -} from "../../extensions/xai/model-definitions.js"; -import { - buildZaiModelDefinition, - resolveZaiBaseUrl, - ZAI_CN_BASE_URL, - ZAI_CODING_CN_BASE_URL, - ZAI_CODING_GLOBAL_BASE_URL, - ZAI_DEFAULT_COST, - ZAI_DEFAULT_MODEL_ID, - ZAI_GLOBAL_BASE_URL, -} from "../../extensions/zai/model-definitions.js"; -import type { ModelDefinitionConfig } from "../config/types.models.js"; -import { - KILOCODE_DEFAULT_CONTEXT_WINDOW, - KILOCODE_DEFAULT_COST, - KILOCODE_DEFAULT_MAX_TOKENS, - KILOCODE_DEFAULT_MODEL_ID, - KILOCODE_DEFAULT_MODEL_NAME, -} from "../providers/kilocode-shared.js"; - -export { - DEFAULT_MINIMAX_BASE_URL, - MINIMAX_API_BASE_URL, - MINIMAX_API_COST, - MINIMAX_CN_API_BASE_URL, - MINIMAX_HOSTED_COST, - MINIMAX_HOSTED_MODEL_ID, - MINIMAX_HOSTED_MODEL_REF, - MINIMAX_LM_STUDIO_COST, - MISTRAL_BASE_URL, - MISTRAL_DEFAULT_COST, - MISTRAL_DEFAULT_MODEL_ID, - MISTRAL_DEFAULT_MODEL_REF, - MODELSTUDIO_CN_BASE_URL, - MODELSTUDIO_DEFAULT_COST, - MODELSTUDIO_DEFAULT_MODEL_ID, - MODELSTUDIO_DEFAULT_MODEL_REF, - MODELSTUDIO_GLOBAL_BASE_URL, - MOONSHOT_BASE_URL, - MOONSHOT_CN_BASE_URL, - MOONSHOT_DEFAULT_MODEL_ID, - MOONSHOT_DEFAULT_MODEL_REF, - QIANFAN_BASE_URL, - QIANFAN_DEFAULT_MODEL_ID, - QIANFAN_DEFAULT_MODEL_REF, - XAI_BASE_URL, - XAI_DEFAULT_COST, - XAI_DEFAULT_MODEL_ID, - XAI_DEFAULT_MODEL_REF, - ZAI_CN_BASE_URL, - ZAI_CODING_CN_BASE_URL, - ZAI_CODING_GLOBAL_BASE_URL, - ZAI_DEFAULT_COST, - ZAI_DEFAULT_MODEL_ID, - ZAI_GLOBAL_BASE_URL, - KIMI_CODING_BASE_URL, - KIMI_CODING_MODEL_ID, - KIMI_CODING_MODEL_REF, - KILOCODE_DEFAULT_CONTEXT_WINDOW, - KILOCODE_DEFAULT_COST, - KILOCODE_DEFAULT_MAX_TOKENS, - KILOCODE_DEFAULT_MODEL_ID, - buildMinimaxApiModelDefinition, - buildMinimaxModelDefinition, - buildMistralModelDefinition, - buildModelStudioDefaultModelDefinition, - buildModelStudioModelDefinition, - buildXaiModelDefinition, - buildZaiModelDefinition, - resolveZaiBaseUrl, -}; - -export function buildMoonshotModelDefinition(): ModelDefinitionConfig { - return buildMoonshotProvider().models[0]; -} - -export function buildKilocodeModelDefinition(): ModelDefinitionConfig { - return { - id: KILOCODE_DEFAULT_MODEL_ID, - name: KILOCODE_DEFAULT_MODEL_NAME, - reasoning: true, - input: ["text", "image"], - cost: KILOCODE_DEFAULT_COST, - contextWindow: KILOCODE_DEFAULT_CONTEXT_WINDOW, - maxTokens: KILOCODE_DEFAULT_MAX_TOKENS, - }; -} diff --git a/src/commands/onboard-auth.test.ts b/src/commands/onboard-auth.test.ts index 8c4b8e38bda..2ad0339a3b2 100644 --- a/src/commands/onboard-auth.test.ts +++ b/src/commands/onboard-auth.test.ts @@ -3,43 +3,57 @@ import os from "node:os"; import path from "node:path"; import type { OAuthCredentials } from "@mariozechner/pi-ai"; import { afterEach, describe, expect, it } from "vitest"; +import { + applyMinimaxApiConfig, + applyMinimaxApiProviderConfig, +} from "../../extensions/minimax/onboard.js"; +import { + applyMistralConfig, + applyMistralProviderConfig, +} from "../../extensions/mistral/onboard.js"; +import { + applyOpencodeGoConfig, + applyOpencodeGoProviderConfig, +} from "../../extensions/opencode-go/onboard.js"; +import { + applyOpencodeZenConfig, + applyOpencodeZenProviderConfig, +} from "../../extensions/opencode/onboard.js"; +import { + applyOpenrouterConfig, + applyOpenrouterProviderConfig, +} from "../../extensions/openrouter/onboard.js"; +import { + applySyntheticConfig, + applySyntheticProviderConfig, + SYNTHETIC_DEFAULT_MODEL_REF, +} from "../../extensions/synthetic/onboard.js"; +import { + applyXaiConfig, + applyXaiProviderConfig, + XAI_DEFAULT_MODEL_REF, +} from "../../extensions/xai/onboard.js"; +import { applyXiaomiConfig, applyXiaomiProviderConfig } from "../../extensions/xiaomi/onboard.js"; +import { applyZaiConfig, applyZaiProviderConfig } from "../../extensions/zai/onboard.js"; +import { SYNTHETIC_DEFAULT_MODEL_ID } from "../agents/synthetic-models.js"; import type { OpenClawConfig } from "../config/config.js"; import { resolveAgentModelFallbackValues, resolveAgentModelPrimaryValue, } from "../config/model-input.js"; import type { ModelApi } from "../config/types.models.js"; +import { applyAuthProfileConfig } from "../plugins/provider-auth-helpers.js"; import { - applyAuthProfileConfig, - applyLitellmProviderConfig, - applyMistralConfig, - applyMistralProviderConfig, - applyMinimaxApiConfig, - applyMinimaxApiProviderConfig, - applyOpencodeGoConfig, - applyOpencodeGoProviderConfig, - applyOpencodeZenConfig, - applyOpencodeZenProviderConfig, - applyOpenrouterConfig, - applyOpenrouterProviderConfig, - applySyntheticConfig, - applySyntheticProviderConfig, - applyXaiConfig, - applyXaiProviderConfig, - applyXiaomiConfig, - applyXiaomiProviderConfig, - applyZaiConfig, - applyZaiProviderConfig, OPENROUTER_DEFAULT_MODEL_REF, - MISTRAL_DEFAULT_MODEL_REF, - SYNTHETIC_DEFAULT_MODEL_ID, - SYNTHETIC_DEFAULT_MODEL_REF, - XAI_DEFAULT_MODEL_REF, setMinimaxApiKey, writeOAuthCredentials, +} from "../plugins/provider-auth-storage.js"; +import { + MISTRAL_DEFAULT_MODEL_REF, ZAI_CODING_CN_BASE_URL, ZAI_GLOBAL_BASE_URL, -} from "./onboard-auth.js"; +} from "../plugins/provider-model-definitions.js"; +import { applyLitellmProviderConfig } from "./onboard-auth.config-litellm.js"; import { createAuthTestLifecycle, readAuthProfilesForAgent, diff --git a/src/commands/onboard-auth.ts b/src/commands/onboard-auth.ts deleted file mode 100644 index 9a67a69a287..00000000000 --- a/src/commands/onboard-auth.ts +++ /dev/null @@ -1,149 +0,0 @@ -export { SYNTHETIC_DEFAULT_MODEL_ID } from "../agents/synthetic-models.js"; -export { VENICE_DEFAULT_MODEL_ID } from "../agents/venice-models.js"; -export { - applyAuthProfileConfig, - applyCloudflareAiGatewayConfig, - applyCloudflareAiGatewayProviderConfig, - applyHuggingfaceConfig, - applyHuggingfaceProviderConfig, - applyKilocodeConfig, - applyKilocodeProviderConfig, - applyQianfanConfig, - applyQianfanProviderConfig, - applyKimiCodeConfig, - applyKimiCodeProviderConfig, - applyLitellmConfig, - applyLitellmProviderConfig, - applyMistralConfig, - applyMistralProviderConfig, - applyMoonshotConfig, - applyMoonshotConfigCn, - applyMoonshotProviderConfig, - applyMoonshotProviderConfigCn, - applyOpenrouterConfig, - applyOpenrouterProviderConfig, - applySyntheticConfig, - applySyntheticProviderConfig, - applyTogetherConfig, - applyTogetherProviderConfig, - applyVeniceConfig, - applyVeniceProviderConfig, - applyVercelAiGatewayConfig, - applyVercelAiGatewayProviderConfig, - applyXaiConfig, - applyXaiProviderConfig, - applyXiaomiConfig, - applyXiaomiProviderConfig, - applyZaiConfig, - applyZaiProviderConfig, - applyModelStudioConfig, - applyModelStudioConfigCn, - applyModelStudioProviderConfig, - applyModelStudioProviderConfigCn, - KILOCODE_BASE_URL, -} from "./onboard-auth.config-core.js"; -export { - applyMinimaxApiConfig, - applyMinimaxApiConfigCn, - applyMinimaxApiProviderConfig, - applyMinimaxApiProviderConfigCn, -} from "./onboard-auth.config-minimax.js"; - -export { - applyOpencodeZenConfig, - applyOpencodeZenProviderConfig, -} from "./onboard-auth.config-opencode.js"; -export { - applyOpencodeGoConfig, - applyOpencodeGoProviderConfig, -} from "./onboard-auth.config-opencode-go.js"; -export { - LITELLM_DEFAULT_MODEL_REF, - OPENROUTER_DEFAULT_MODEL_REF, - setOpenaiApiKey, - setAnthropicApiKey, - setCloudflareAiGatewayConfig, - setByteplusApiKey, - setQianfanApiKey, - setGeminiApiKey, - setKilocodeApiKey, - setLitellmApiKey, - setKimiCodingApiKey, - setMinimaxApiKey, - setMistralApiKey, - setMoonshotApiKey, - setOpencodeGoApiKey, - setOpencodeZenApiKey, - setOpenrouterApiKey, - setSyntheticApiKey, - setTogetherApiKey, - setHuggingfaceApiKey, - setVeniceApiKey, - setVercelAiGatewayApiKey, - setXiaomiApiKey, - setVolcengineApiKey, - setZaiApiKey, - setXaiApiKey, - setModelStudioApiKey, - writeOAuthCredentials, - XIAOMI_DEFAULT_MODEL_REF, -} from "./onboard-auth.credentials.js"; -export { CLOUDFLARE_AI_GATEWAY_DEFAULT_MODEL_REF } from "../../extensions/cloudflare-ai-gateway/onboard.js"; -export { HUGGINGFACE_DEFAULT_MODEL_REF } from "../../extensions/huggingface/onboard.js"; -export { KILOCODE_DEFAULT_MODEL_REF } from "../../extensions/kilocode/onboard.js"; -export { MISTRAL_DEFAULT_MODEL_REF } from "../../extensions/mistral/onboard.js"; -export { MODELSTUDIO_DEFAULT_MODEL_REF } from "../../extensions/modelstudio/onboard.js"; -export { SYNTHETIC_DEFAULT_MODEL_REF } from "../../extensions/synthetic/onboard.js"; -export { TOGETHER_DEFAULT_MODEL_REF } from "../../extensions/together/onboard.js"; -export { VENICE_DEFAULT_MODEL_REF } from "../../extensions/venice/onboard.js"; -export { VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF } from "../../extensions/vercel-ai-gateway/onboard.js"; -export { XAI_DEFAULT_MODEL_REF } from "../../extensions/xai/onboard.js"; -export { ZAI_DEFAULT_MODEL_REF } from "../../extensions/zai/onboard.js"; -export { - buildMinimaxApiModelDefinition, - buildMinimaxModelDefinition, - DEFAULT_MINIMAX_BASE_URL, - MINIMAX_API_BASE_URL, - MINIMAX_CN_API_BASE_URL, - MINIMAX_HOSTED_MODEL_ID, - MINIMAX_HOSTED_MODEL_REF, -} from "../../extensions/minimax/model-definitions.js"; -export { KIMI_DEFAULT_MODEL_ID as KIMI_CODING_MODEL_ID } from "../../extensions/kimi-coding/provider-catalog.js"; -export { KIMI_CODING_MODEL_REF } from "../../extensions/kimi-coding/onboard.js"; -export { - buildMistralModelDefinition, - MISTRAL_BASE_URL, - MISTRAL_DEFAULT_MODEL_ID, -} from "../../extensions/mistral/model-definitions.js"; -export { - MOONSHOT_BASE_URL, - MOONSHOT_DEFAULT_MODEL_ID, -} from "../../extensions/moonshot/provider-catalog.js"; -export { - MOONSHOT_CN_BASE_URL, - MOONSHOT_DEFAULT_MODEL_REF, -} from "../../extensions/moonshot/onboard.js"; -export { - QIANFAN_BASE_URL, - QIANFAN_DEFAULT_MODEL_ID, -} from "../../extensions/qianfan/provider-catalog.js"; -export { QIANFAN_DEFAULT_MODEL_REF } from "../../extensions/qianfan/onboard.js"; -export { - buildXaiModelDefinition, - XAI_BASE_URL, - XAI_DEFAULT_MODEL_ID, -} from "../../extensions/xai/model-definitions.js"; -export { - buildZaiModelDefinition, - resolveZaiBaseUrl, - ZAI_CN_BASE_URL, - ZAI_CODING_CN_BASE_URL, - ZAI_CODING_GLOBAL_BASE_URL, - ZAI_DEFAULT_MODEL_ID, - ZAI_GLOBAL_BASE_URL, -} from "../../extensions/zai/model-definitions.js"; -export { - buildKilocodeModelDefinition, - buildMoonshotModelDefinition, - KILOCODE_DEFAULT_MODEL_ID, -} from "./onboard-auth.models.js"; diff --git a/src/commands/onboard-non-interactive.provider-auth.test.ts b/src/commands/onboard-non-interactive.provider-auth.test.ts index 66050fe6f62..085d9d1f102 100644 --- a/src/commands/onboard-non-interactive.provider-auth.test.ts +++ b/src/commands/onboard-non-interactive.provider-auth.test.ts @@ -2,15 +2,15 @@ import fs from "node:fs/promises"; import path from "node:path"; import { setTimeout as delay } from "node:timers/promises"; import { beforeAll, describe, expect, it, vi } from "vitest"; -import { makeTempWorkspace } from "../test-helpers/workspace.js"; -import { withEnvAsync } from "../test-utils/env.js"; import { MINIMAX_API_BASE_URL, MINIMAX_CN_API_BASE_URL, ZAI_CODING_CN_BASE_URL, ZAI_CODING_GLOBAL_BASE_URL, ZAI_GLOBAL_BASE_URL, -} from "./onboard-auth.js"; +} from "../plugins/provider-model-definitions.js"; +import { makeTempWorkspace } from "../test-helpers/workspace.js"; +import { withEnvAsync } from "../test-utils/env.js"; import { createThrowingRuntime, readJsonFile, diff --git a/src/commands/onboard-non-interactive/local/auth-choice.api-key-providers.ts b/src/commands/onboard-non-interactive/local/auth-choice.api-key-providers.ts index 4c0454401ad..bb9ab999411 100644 --- a/src/commands/onboard-non-interactive/local/auth-choice.api-key-providers.ts +++ b/src/commands/onboard-non-interactive/local/auth-choice.api-key-providers.ts @@ -1,11 +1,9 @@ import type { OpenClawConfig } from "../../../config/config.js"; import type { SecretInput } from "../../../config/types.secrets.js"; +import { applyAuthProfileConfig } from "../../../plugins/provider-auth-helpers.js"; +import { setLitellmApiKey } from "../../../plugins/provider-auth-storage.js"; import type { RuntimeEnv } from "../../../runtime.js"; -import { - applyAuthProfileConfig, - applyLitellmConfig, - setLitellmApiKey, -} from "../../onboard-auth.js"; +import { applyLitellmConfig } from "../../onboard-auth.config-litellm.js"; import type { AuthChoice, OnboardOptions } from "../../onboard-types.js"; type ApiKeyStorageOptions = { diff --git a/src/plugin-sdk/provider-models.ts b/src/plugin-sdk/provider-models.ts index 5221daec1cd..f0a85fe1ed1 100644 --- a/src/plugin-sdk/provider-models.ts +++ b/src/plugin-sdk/provider-models.ts @@ -20,7 +20,7 @@ export { OPENCODE_GO_DEFAULT_MODEL_REF } from "../commands/opencode-go-model-def export { OPENCODE_ZEN_DEFAULT_MODEL } from "../commands/opencode-zen-model-default.js"; export { OPENCODE_ZEN_DEFAULT_MODEL_REF } from "../agents/opencode-zen-models.js"; -export * from "../commands/onboard-auth.models.js"; +export * from "../plugins/provider-model-definitions.js"; export { buildCloudflareAiGatewayModelDefinition,