文档

文档

Kimi Code

Kimi Code 将提供方配置保存在 TOML 文件中,第三方端点只需在其中配置三个键:type、base_url、api_key。将其中一个指向 Kunavo,CLI 就能通过其现有协议调用 Claude 和 GPT 模型 ID。

Kimi Code 将提供商保存在 ~/.kimi-code/config.toml 中 — 设置 providers.<name>.base_url 为 https://api.kunavo.com/v1,type = "openai",CLI 即可通过一个密钥运行 Claude 和 GPT ID。

~/.kimi-code/config.toml
default_model = "kunavo/claude-sonnet-5"

[providers.kunavo]
type = "openai"
base_url = "https://api.kunavo.com/v1"
api_key = "sk-kn-..."

[models."kunavo/claude-sonnet-5"]
provider = "kunavo"
model = "claude-sonnet-5"
max_context_size = 200000
base_url 保留 /v1 后缀。提供方页面明确给出了答案,无需推断:type = "openai" 的文档默认值是 https://api.openai.com/v1,而环境变量页面中第三方端点的示例是 KIMI_MODEL_BASE_URL="https://api.example.com/v1"。Kimi Code 只会追加路由,因此这里如果只填写源站地址,就会导致 404,而不是身份验证错误。这与使用 Anthropic 协议的客户端恰好相反,后者需要不带后缀的 https://api.kunavo.com。
导出 shell 变量并不会自动让提供方获得密钥。 Kimi Code 自己的配置文件页面对此说得很明确:在终端中运行 export KIMI_API_KEY 并不会让任何提供方获得其密钥。文档规定的优先顺序是 api_key 或 api_key_env——必须恰好设置其中一个,两者互斥;如果两者都未设置,则使用 [providers.kunavo.env] 子表中的键;如果这些都缺失,启动就会报错。要避免将密钥写入文件,请使用 api_key_env = "KUNAVO_API_KEY" 而不是 api_key;如果变量未设置或为空,请求就会失败,并提示该变量名称。
Kunavo 尚未使用自己的端点运行过此客户端。 上方配置摘自 Kimi Code 当前文档,并非来自实际会话:这里没有记录 Kimi Code 的流式请求或工具调用运行,因此应将首次实际请求视为测试,而不是确认。已发布的页面介绍的是配置方法,并非验收结果。
type 指的是协议,而不是供应商。文档列出的类型有 kimi、anthropic、openai、openai_responses、google-genai 和 vertexai——当前表格中没有旧版 OpenAI 变体,因此指导你设置该变体的文章已经过时。选择 openai 后填写 Claude 模型 ID 正是预期用法:该 ID 会在基础 URL 对应的端点解析,而不是由 CLI 解析。
还没有密钥?创建 Kunavo 账户,创建一个密钥(以 sk-kn- 开头),并充值 $10 起——调用费用从该余额中扣除,失败的调用不会收费。随后,控制台会打开 Kimi Code 设置页面。

分步操作

  1. 在 /app/keys 创建密钥并复制——它只会显示一次。
  2. 打开 ~/.kimi-code/config.toml,该文件会在首次运行时创建。如果你通过 KIMI_CODE_HOME 更改了数据目录,文件位于 $KIMI_CODE_HOME/config.toml;文件名始终是 config.toml。
  3. 添加上面的 [providers.kunavo] 表格。文档为此类型列出的三个键依次是 type、base_url 和 api_key。
  4. 在 [models."..."] 下声明一个模型别名,并填写 provider、model 和 max_context_size——三项均为必填。传给 -m 和 default_model 的都是该别名;model 的值则是通过网络发送的 ID。别名中包含句点时,请加引号。
  5. 首次配置时不要填写 capabilities。提供方页面说明,系统会根据模型名称前缀自动匹配能力;模型表页面则说明,该数组只会添加内容,永远不会移除内容——因此,设置错误的标签后,无法通过编辑配置将其取消。
  6. 运行 kimi,或使用 kimi -m kunavo/claude-sonnet-5 为单次会话选择别名。若想在完全不改动配置的情况下测试端点,请设置 KIMI_MODEL_NAME、KIMI_MODEL_API_KEY、KIMI_MODEL_PROVIDER_TYPE=openai 和 KIMI_MODEL_BASE_URL——CLI 会在内存中构建一个提供方,不会写入任何配置。

已于 2026年9月21日 对照 Kimi Code 的提供方与模型页面 检查。第三方设置会发生变化;如果这里的字段名称不再与你看到的内容一致,应以该页面为准,而不是本页。

这是简要版本。完整教程——包括模型选择、真实会话成本和失败模式——见 Kimi Code 与 Claude Code——客户端、模型和账户该如何选择。

调试客户端前先验证

一个请求即可确定故障来自端点、密钥还是配置文件。如果返回 JSON,则相同的基础 URL 和密钥可以在 Kimi Code 中使用。

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

字段中应填写哪个模型 ID

每个文本模型都可通过模型 ID 访问——实时列表见 GET /v1/models,包含价格的目录见模型页面。费率单位为每 1M token 的美元,格式为输入 / 输出。

模型 IDKunavo 输入 / 输出它在 Kimi Code 中的位置
claude-sonnet-5$1.40 / $7.00默认别名——适用于编辑与运行循环的实用模型
claude-opus-5$3.50 / $17.50用于规划阶段的第二个别名,此时错误的规划代价高昂
claude-haiku-4-5$0.70 / $3.50适合绑定到 [secondary_model] 供子代理使用的低价别名
gpt-5-6-sol$2.00 / $12.00使用同一密钥和同一提供方表,从不同模型系列获得第二种意见
计费方式是从预付余额中按 token 扣费,无月费——参见 计费。对于重复上下文——这正是编辑器或聊天客户端发送内容的大部分——提示缓存对账单的影响大于模型选择。

常见问题

如何让 Kimi Code 使用自定义 API 端点?

在 ~/.kimi-code/config.toml 中添加一个提供方表,设置 type = "openai"、指向端点的 base_url,以及设置为你的密钥的 api_key;然后在 [models."<alias>"] 下声明一个模型别名,并填写 provider、model 和 max_context_size。Kimi Code 的提供方页面说明,type = "openai" 用于 OpenAI Chat Completions 协议,以及任何与之兼容的第三方服务;如有需要,可覆盖 base_url。你也可以在 TUI 中通过 /provider 打开提供方管理器,不过它添加已知提供方的方式是从 models.dev 目录导入,因此目录中没有的端点,手动添加会更快。

Kimi Code 的 base_url 末尾需要加 /v1 吗?

对于兼容 OpenAI 的端点,需要。Kimi Code 只会追加路由,因此 base_url 必须是 /v1 根路径,例如 https://api.kunavo.com/v1。文档对此有明确说明,无需推断:type = "openai" 的默认 base_url 是 https://api.openai.com/v1,环境变量页面中的第三方示例则是 https://api.example.com/v1。缺少 /v1 会导致 404,而不是 401。

为什么导出变量后,Kimi Code 仍提示缺少我的 API 密钥?

因为除非你指定要读取哪个环境变量,否则它不会读取 shell 环境变量中的凭据。配置文件页面明确指出,运行 export KIMI_API_KEY 并不会让任何提供方获得其密钥。你可以直接在 config.toml 中填写 api_key,也可以将 api_key_env 设置为变量名称——两者互斥,必须恰好设置其中一个。只有两者都未设置时,才会查询 [providers.<name>.env] 子表;如果这三者都缺失,启动就会报错。

Kimi Code 能否通过第三方提供方运行 Claude 模型?

提供方类型指定的是协议,而非供应商;model 值会直接传递给你配置的 base_url。因此,将 Claude ID 设置在 openai 类型的提供方中时,该 ID 会由该端点解析,而不是由 CLI 解析。Kimi Code 还提供单独的 type = "anthropic" 提供方,用于 Anthropic Messages 协议;其基础 URL 是不带 /v1 后缀的源站地址。Kunavo 尚未通过这两种协议在自己的端点上运行过 Kimi Code 会话,因此请按照上文的 curl 方法验证,并将首次会话视为测试。