152 lines
4.2 KiB
Markdown
152 lines
4.2 KiB
Markdown
---
|
|
summary: "Configure Moonshot K2 vs Kimi Code (separate providers + keys)"
|
|
read_when:
|
|
- You want Moonshot K2 (Moonshot Open Platform) vs Kimi Code setup
|
|
- You need to understand separate endpoints, keys, and model refs
|
|
- You want copy/paste config for either provider
|
|
---
|
|
|
|
# Moonshot AI (Kimi)
|
|
|
|
Moonshot provides the Kimi API with OpenAI-compatible endpoints. Configure the
|
|
provider and set the default model to `moonshot/kimi-k2-0905-preview`, or use
|
|
Kimi Code with `kimi-code/kimi-for-coding`.
|
|
|
|
Current Kimi K2 model IDs:
|
|
{/* moonshot-kimi-k2-ids:start */}
|
|
- `kimi-k2-0905-preview`
|
|
- `kimi-k2-turbo-preview`
|
|
- `kimi-k2-thinking`
|
|
- `kimi-k2-thinking-turbo`
|
|
{/* moonshot-kimi-k2-ids:end */}
|
|
|
|
```bash
|
|
moltbot onboard --auth-choice moonshot-api-key
|
|
```
|
|
|
|
Kimi Code:
|
|
|
|
```bash
|
|
moltbot onboard --auth-choice kimi-code-api-key
|
|
```
|
|
|
|
Note: Moonshot and Kimi Code are separate providers. Keys are not interchangeable, endpoints differ, and model refs differ (Moonshot uses `moonshot/...`, Kimi Code uses `kimi-code/...`).
|
|
|
|
## Config snippet (Moonshot API)
|
|
|
|
```json5
|
|
{
|
|
env: { MOONSHOT_API_KEY: "sk-..." },
|
|
agents: {
|
|
defaults: {
|
|
model: { primary: "moonshot/kimi-k2-0905-preview" },
|
|
models: {
|
|
// moonshot-kimi-k2-aliases:start
|
|
"moonshot/kimi-k2-0905-preview": { alias: "Kimi K2" },
|
|
"moonshot/kimi-k2-turbo-preview": { alias: "Kimi K2 Turbo" },
|
|
"moonshot/kimi-k2-thinking": { alias: "Kimi K2 Thinking" },
|
|
"moonshot/kimi-k2-thinking-turbo": { alias: "Kimi K2 Thinking Turbo" }
|
|
// moonshot-kimi-k2-aliases:end
|
|
}
|
|
}
|
|
},
|
|
models: {
|
|
mode: "merge",
|
|
providers: {
|
|
moonshot: {
|
|
baseUrl: "https://api.moonshot.ai/v1",
|
|
apiKey: "${MOONSHOT_API_KEY}",
|
|
api: "openai-completions",
|
|
models: [
|
|
// moonshot-kimi-k2-models:start
|
|
{
|
|
id: "kimi-k2-0905-preview",
|
|
name: "Kimi K2 0905 Preview",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
contextWindow: 256000,
|
|
maxTokens: 8192
|
|
},
|
|
{
|
|
id: "kimi-k2-turbo-preview",
|
|
name: "Kimi K2 Turbo",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
contextWindow: 256000,
|
|
maxTokens: 8192
|
|
},
|
|
{
|
|
id: "kimi-k2-thinking",
|
|
name: "Kimi K2 Thinking",
|
|
reasoning: true,
|
|
input: ["text"],
|
|
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
contextWindow: 256000,
|
|
maxTokens: 8192
|
|
},
|
|
{
|
|
id: "kimi-k2-thinking-turbo",
|
|
name: "Kimi K2 Thinking Turbo",
|
|
reasoning: true,
|
|
input: ["text"],
|
|
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
contextWindow: 256000,
|
|
maxTokens: 8192
|
|
}
|
|
// moonshot-kimi-k2-models:end
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Kimi Code
|
|
|
|
```json5
|
|
{
|
|
env: { KIMICODE_API_KEY: "sk-..." },
|
|
agents: {
|
|
defaults: {
|
|
model: { primary: "kimi-code/kimi-for-coding" },
|
|
models: {
|
|
"kimi-code/kimi-for-coding": { alias: "Kimi Code" }
|
|
}
|
|
}
|
|
},
|
|
models: {
|
|
mode: "merge",
|
|
providers: {
|
|
"kimi-code": {
|
|
baseUrl: "https://api.kimi.com/coding/v1",
|
|
apiKey: "${KIMICODE_API_KEY}",
|
|
api: "openai-completions",
|
|
models: [
|
|
{
|
|
id: "kimi-for-coding",
|
|
name: "Kimi For Coding",
|
|
reasoning: true,
|
|
input: ["text"],
|
|
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
contextWindow: 262144,
|
|
maxTokens: 32768,
|
|
headers: { "User-Agent": "KimiCLI/0.77" },
|
|
compat: { supportsDeveloperRole: false }
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Notes
|
|
|
|
- Moonshot model refs use `moonshot/<modelId>`. Kimi Code model refs use `kimi-code/<modelId>`.
|
|
- Override pricing and context metadata in `models.providers` if needed.
|
|
- If Moonshot publishes different context limits for a model, adjust
|
|
`contextWindow` accordingly.
|
|
- Use `https://api.moonshot.cn/v1` if you need the China endpoint.
|