Skip to content

Moonshot AI(Kimi)

Moonshot 提供兼容 OpenAI 格式的 Kimi API。将提供商配置好后,把默认模型设为 moonshot/kimi-k2.5;如果使用 Kimi Coding,则设为 kimi-coding/k2p5

当前 Kimi K2 模型 ID 列表:

  • kimi-k2.5
  • kimi-k2-0905-preview
  • kimi-k2-turbo-preview
  • kimi-k2-thinking
  • kimi-k2-thinking-turbo
bash
openclaw onboard --auth-choice moonshot-api-key

Kimi Coding 配置:

bash
openclaw onboard --auth-choice kimi-code-api-key

注意:Moonshot 和 Kimi Coding 是两个独立的提供商,API Key 不通用,端点不同,模型引用格式也不同(Moonshot 用 moonshot/...,Kimi Coding 用 kimi-coding/...)。

配置片段(Moonshot API)

json5
{
  env: { MOONSHOT_API_KEY: "sk-..." },
  agents: {
    defaults: {
      model: { primary: "moonshot/kimi-k2.5" },
      models: {
        "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" },
      },
    },
  },
  models: {
    mode: "merge",
    providers: {
      moonshot: {
        baseUrl: "https://api.moonshot.ai/v1",
        apiKey: "${MOONSHOT_API_KEY}",
        api: "openai-completions",
        models: [
          {
            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,
          },
        ],
      },
    },
  },
}

Kimi Coding 配置

json5
{
  env: { KIMI_API_KEY: "sk-..." },
  agents: {
    defaults: {
      model: { primary: "kimi-coding/k2p5" },
      models: {
        "kimi-coding/k2p5": { alias: "Kimi K2.5" },
      },
    },
  },
}

注意事项

  • Moonshot 模型引用格式为 moonshot/<modelId>,Kimi Coding 为 kimi-coding/<modelId>
  • 如需覆盖定价和上下文元数据,在 models.providers 中修改即可。
  • 如果 Moonshot 为某个模型发布了不同的上下文限制,相应调整 contextWindow
  • 国际端点:https://api.moonshot.ai/v1;国内端点:https://api.moonshot.cn/v1

原生 Thinking 模式(Moonshot)

Moonshot Kimi 支持二值式原生思考模式:

  • thinking: { type: "enabled" }
  • thinking: { type: "disabled" }

通过 agents.defaults.models.<provider/model>.params 对每个模型单独配置:

json5
{
  agents: {
    defaults: {
      models: {
        "moonshot/kimi-k2.5": {
          params: {
            thinking: { type: "disabled" },
          },
        },
      },
    },
  },
}

OpenClaw 同时映射运行时 /think 级别到 Moonshot:

  • /think offthinking.type=disabled
  • 任意非 off 思考级别 → thinking.type=enabled

当 Moonshot thinking 开启时,tool_choice 必须为 autonone。OpenClaw 会自动将不兼容的 tool_choice 值规范化为 auto,你的龙虾会帮你搞定这个细节。