Moonshot AI (Kimi)
Moonshot proporciona la API de Kimi con endpoints compatibles con OpenAI. Configura el
proveedor y establece el modelo por defecto como moonshot/kimi-k2.5, o usa
Kimi Coding con kimi-coding/k2p5.
IDs actuales de modelos Kimi K2:
{/_ moonshot-kimi-k2-ids:start _/ && null}
kimi-k2.5kimi-k2-0905-previewkimi-k2-turbo-previewkimi-k2-thinkingkimi-k2-thinking-turbo{/_ moonshot-kimi-k2-ids:end _/ && null}
openclaw onboard --auth-choice moonshot-api-key
Kimi Coding:
openclaw onboard --auth-choice kimi-code-api-key
Nota: Moonshot y Kimi Coding son proveedores separados. Las claves no son intercambiables, los endpoints difieren, y las referencias de modelo difieren (Moonshot usa moonshot/..., Kimi Coding usa kimi-coding/...).
Fragmento de configuracion (API de Moonshot)
{
env: { MOONSHOT_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "moonshot/kimi-k2.5" },
models: {
// moonshot-kimi-k2-aliases:start
"moonshot/kimi-k2.5": { alias: "Kimi K2.5" },
"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.5",
name: "Kimi K2.5",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 256000,
maxTokens: 8192,
},
{
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 Coding
{
env: { KIMI_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "kimi-coding/k2p5" },
models: {
"kimi-coding/k2p5": { alias: "Kimi K2.5" },
},
},
},
}
Notas
- Las referencias de modelo de Moonshot usan
moonshot/<modelId>. Las de Kimi Coding usankimi-coding/<modelId>. - Sobreescribe los precios y metadatos de contexto en
models.providerssi es necesario. - Si Moonshot publica limites de contexto diferentes para un modelo, ajusta
contextWindowsegun corresponda. - Usa
https://api.moonshot.ai/v1para el endpoint internacional, yhttps://api.moonshot.cn/v1para el endpoint de China.
Modo de pensamiento nativo (Moonshot)
Moonshot Kimi soporta pensamiento nativo binario:
thinking: { type: "enabled" }thinking: { type: "disabled" }
Configuralo por modelo en agents.defaults.models.<provider/model>.params:
{
agents: {
defaults: {
models: {
"moonshot/kimi-k2.5": {
params: {
thinking: { type: "disabled" },
},
},
},
},
},
}
OpenClaw tambien mapea los niveles de /think en tiempo de ejecucion para Moonshot:
/think off->thinking.type=disabled- cualquier nivel de pensamiento que no sea off ->
thinking.type=enabled
Cuando el pensamiento de Moonshot esta habilitado, tool_choice debe ser auto o none. OpenClaw normaliza los valores incompatibles de tool_choice a auto para compatibilidad.