diff --git a/.changeset/long-grapes-sip.md b/.changeset/long-grapes-sip.md new file mode 100644 index 00000000000..e28c9f4cb43 --- /dev/null +++ b/.changeset/long-grapes-sip.md @@ -0,0 +1,6 @@ +--- +"@roo-code/vscode-webview": patch +"@roo-code/types": patch +--- + +feat(moonshot): add new Kimi models and coding API endpoint diff --git a/packages/types/src/provider-settings.ts b/packages/types/src/provider-settings.ts index baf210f93d2..95f2f4d2818 100644 --- a/packages/types/src/provider-settings.ts +++ b/packages/types/src/provider-settings.ts @@ -388,7 +388,11 @@ const doubaoSchema = apiModelIdProviderModelSchema.extend({ const moonshotSchema = apiModelIdProviderModelSchema.extend({ moonshotBaseUrl: z - .union([z.literal("https://api.moonshot.ai/v1"), z.literal("https://api.moonshot.cn/v1")]) + .union([ + z.literal("https://api.moonshot.ai/v1"), + z.literal("https://api.moonshot.cn/v1"), + z.literal("https://api.kimi.com/coding/v1"), + ]) .optional(), moonshotApiKey: z.string().optional(), }) diff --git a/packages/types/src/providers/moonshot.ts b/packages/types/src/providers/moonshot.ts index 0e2df4bfd4d..03857af9281 100644 --- a/packages/types/src/providers/moonshot.ts +++ b/packages/types/src/providers/moonshot.ts @@ -6,6 +6,21 @@ export type MoonshotModelId = keyof typeof moonshotModels export const moonshotDefaultModelId: MoonshotModelId = "kimi-k2-thinking" export const moonshotModels = { + "kimi-for-coding": { + maxTokens: 32_000, + contextWindow: 131_072, + supportsImages: false, + supportsPromptCache: true, + supportsReasoningBudget: true, + supportsReasoningEffort: true, + inputPrice: 0.6, // $0.60 per million tokens (cache miss) + outputPrice: 2.5, // $2.50 per million tokens + cacheWritesPrice: 0, // $0 per million tokens (cache miss) + cacheReadsPrice: 0.15, // $0.15 per million tokens (cache hit) + preserveReasoning: true, + supportsNativeTools: true, + description: `Kimi for coding`, + }, "kimi-k2-0711-preview": { maxTokens: 32_000, contextWindow: 131_072, @@ -45,6 +60,21 @@ export const moonshotModels = { cacheReadsPrice: 0.6, // $0.60 per million tokens (cache hit) description: `Kimi K2 Turbo is a high-speed version of the state-of-the-art Kimi K2 mixture-of-experts (MoE) language model, with the same 32 billion activated parameters and 1 trillion total parameters, optimized for output speeds of up to 60 tokens per second, peaking at 100 tokens per second.`, }, + + "kimi-k2-thinking-turbo": { + maxTokens: 32_000, + contextWindow: 262144, + supportsImages: false, + supportsPromptCache: true, + inputPrice: 1.15, // $1.15 per million tokens (cache miss) + outputPrice: 8.0, // $8.00 per million tokens + cacheWritesPrice: 0, // $0 per million tokens (cache miss) + cacheReadsPrice: 0.15, // $0.15 per million tokens (cache hit) + supportsNativeTools: true, + preserveReasoning: true, + defaultTemperature: 1.0, + description: `High-speed version of kimi-k2-thinking, suitable for scenarios requiring both deep reasoning and extremely fast responses`, + }, "kimi-k2-thinking": { maxTokens: 16_000, // Recommended ≥ 16,000 contextWindow: 262_144, // 262,144 tokens diff --git a/webview-ui/src/components/settings/providers/Moonshot.tsx b/webview-ui/src/components/settings/providers/Moonshot.tsx index f9ec8e02729..04118738b97 100644 --- a/webview-ui/src/components/settings/providers/Moonshot.tsx +++ b/webview-ui/src/components/settings/providers/Moonshot.tsx @@ -43,6 +43,9 @@ export const Moonshot = ({ apiConfiguration, setApiConfigurationField }: Moonsho api.moonshot.cn + + api.kimi.com/coding/v1 +