跳到主要内容

给 Grok Build CLI 接上你自己的 API

把配置这件事,交给你的 AI 去做

选好 API 端点,我们生成一段写好的提示词。复制它,粘贴给你正在用的 Claude Code 或 Codex,让它替你完成 Grok Build 的全部配置和验证。你不需要记住任何字段,也不需要自己调试。密钥不用在这里填——页面上根本没有那个输入框。

  • 无需填写密钥
  • 纯前端生成,不上传数据
  • 中英双语提示词

生成配置提示词

一个字段就够了,而且不用填密钥。生成的提示词会让 AI 先用你的密钥去请求模型列表、拿到真实模型名,再动手写配置——而不是凭记忆瞎猜一个模型名填进去。

留空就用 xAI 官方端点。要接第三方网关就填它的 base URL,通常以 /v1 结尾。不确定要不要带 /v1 也没关系,提示词里已经写了排查方法

密钥不在这里填

本站没有密钥输入框,你也不该把密钥交给任何网页。复制走提示词之后,在你自己的编辑器或对话框里,把下面这个占位符替换成真实密钥再发给 AI。

<在这里粘贴你的-API-KEY>

复制之后,交给谁执行

任何能读写文件、执行终端命令的 AI 编码工具都可以。提示词是纯自然语言,不依赖任何工具的特定语法,同一份内容原样粘贴过去就行。

  • Claude Code
  • Codex
  • OpenCode
  • Gemini CLI
  • Cursor
  • 或你惯用的任何一个
提示词预览共 2,807 字符
我要把 xAI 的 Grok Build CLI(终端命令 `grok`)接入下面这个 API 端点,请你帮我完成全部配置并验证。

我的网关信息:
- API 端点:https://api.x.ai/v1
- API Key:<在这里粘贴你的-API-KEY>

> 注意:上面的 API Key 是一个占位符。请先提醒我把它替换成真实的 Key,如果我已经替换了就直接继续。不要凭空编造一个 Key。

请严格按下面的步骤执行。这些步骤里的每一条都是踩过坑总结出来的,请不要跳过,尤其不要跳过第 3 步和第 7 步的验证。

## 第 1 步 确认 CLI 已安装

运行 `grok --version`。如果没有安装,先告诉我,不要自行安装。

## 第 2 步 先登出官方账号(非常关键)

Grok Build 的登录 session 优先级高于 API Key。只要本地还存在有效 session,后面的 API Key 配置就不会生效,而且报错信息会很有误导性。

先运行 `grok logout`,再确认 `~/.grok/auth.json` 已经不存在(只剩 `auth.json.lock` 是正常的)。

## 第 3 步 用我的 Key 请求模型列表,拿到真实模型名

这一步是整个配置的地基。**不要凭你的训练记忆假设模型叫 grok-4、grok-4.5 或别的名字**,这个端点实际提供什么模型、叫什么 ID,一切以接口返回为准。

运行:

```bash
curl -s https://api.x.ai/v1/models -H "Authorization: Bearer <在这里粘贴你的-API-KEY>"
```

从返回 JSON 的 `data[].id` 里读出模型 ID,这些才是我可以写进配置的合法名字。

排查提示:
- 返回 401 → Key 无效或写错
- 返回 404 → 端点路径不对,试试加上或去掉结尾的 `/v1`
- 返回 503 → 上游暂时不可用,等一会重试,不要急着改配置

## 第 4 步 挑一个模型,实测能不能真的出词

模型列表能返回,不代表推理能用。请把第 3 步拿到的某个模型 ID 代入下面的命令实测:

```bash
curl -s https://api.x.ai/v1/chat/completions \
  -H "Authorization: Bearer <在这里粘贴你的-API-KEY>" \
  -H "Content-Type: application/json" \
  -d '{"model":"<第3步拿到的模型ID>","messages":[{"role":"user","content":"hi"}],"max_tokens":20}'
```

确认返回 200 且 `choices[0].message.content` 有内容,再进入下一步。

## 第 5 步 写入 ~/.grok/config.toml

先备份:`cp ~/.grok/config.toml ~/.grok/config.toml.bak`(文件不存在就跳过)。

然后写入以下内容,把 `<MODEL_ID>` 全部替换成第 3 步拿到的真实模型 ID:

```toml
[endpoints]
models_base_url = "https://api.x.ai/v1"

[model."<MODEL_ID>"]
api_key = "<在这里粘贴你的-API-KEY>"

[models]
default = "<MODEL_ID>"
```

### ⚠️ 一个必须避开的 TOML 陷阱

如果模型 ID 里含有小数点(例如 `grok-4.5`),表名**必须**用引号包起来:

```toml
[model."grok-4.5"]        # ✅ 正确
[model.grok-4.5]          # ❌ 错误
```

不加引号的话,TOML 会把点当成层级分隔符,把它解析成「`grok-4` 表下的 `5` 键」,配置等于完全没写。症状是 `grok models` 报 `You are not authenticated`,并且退回去列出 `grok-4` 之类的内置默认模型。这个坑非常隐蔽,请务必检查。

### 配置项说明

- 设置 `[endpoints] models_base_url` 之后,Grok 会自动从 session 鉴权切换成 `Authorization: Bearer` API Key 鉴权,因此不再需要 `grok login`
- 所有 `[model.*]` 会自动继承这个 base_url,不需要在每个模型里重复写 `base_url`
- 凭据解析顺序是 `api_key` → `env_key` → 全局环境变量 `XAI_API_KEY`
- 模型列表由 Grok 自动从 `{models_base_url}/models` 拉取

## 第 6 步 收紧文件权限

配置文件里是明文 Key:

```bash
chmod 600 ~/.grok/config.toml
```

## 第 7 步 验证(不要省略)

先看模型列表:

```bash
grok models
```

预期输出里应当出现 `Model '<MODEL_ID>' is using its own API key.`,并且列出第 3 步拿到的模型。

如果看到 `You are not authenticated`,或者列出来的是你没配过的内置模型,说明配置没生效。按这个顺序排查:模型名的引号(第 5 步)→ 是否真的登出了(第 2 步)→ base_url 是否要带 `/v1`。

再跑一次真实推理:

```bash
grok -p "用一句话介绍你自己"
```

## 第 8 步 清理指向旧模型的残留字段

检查 `~/.grok/config.toml` 里是否还有别的字段引用了这个端点上并不存在的模型名,例如 `[ui] fork_secondary_model` 或 `[models] web_search`。如果有,一并换成第 3 步拿到的真实模型 ID,否则相关功能会在使用时报错。

## 完成后请告诉我

1. 第 3 步实际拿到的模型 ID 列表
2. 最终的 `config.toml` 内容(把 Key 用 `sk-***` 遮掉)
3. `grok models` 和 `grok -p` 的验证结果

如果任何一步失败,请把原始报错贴给我,不要自行猜测或跳过。

复制之后记得把提示词里的密钥占位符换成你自己的 Key,AI 才能真正跑通验证

你的密钥,我们碰都碰不到

最好的隐私保证不是承诺,是让你根本不需要相信我们。所以这个页面上压根没有密钥输入框——你没法把密钥交给我们,哪怕你想。

  • 前端不存在密钥字段。提示词里的密钥位置是一个占位符,由你复制走之后自己替换
  • 这是一个没有后端、没有数据库的静态站点,页面上也不存在任何联网脚本
  • 端点只在浏览器内存里参与字符串拼接,不写入 localStorage,不进 Cookie,刷新即消失
  • 我们唯一做的事,是把配置知识写成一段自然语言让你复制走。执行由你指派的 AI 完成,全程在你自己的机器上

顺带提醒一句:把密钥粘给 AI 之前,确认对面是你信得过的工具。这条建议对任何网站、任何 Agent 都成立,不只是我们。

它是怎么工作的

三步,没有第四步

  1. 01

    选好端点

    用 xAI 官方端点就什么都不用填。要接第三方网关,把它的 base URL 填进去。提示词会实时生成,你能看到它到底写了什么,没有黑箱。

  2. 02

    复制,替换密钥,粘贴给你的 AI

    把提示词整段贴进 Claude Code、Codex、OpenCode 或任何你惯用的、能跑终端命令的 AI 工具,再把里面的密钥占位符换成你自己的 Key。提示词里已经写清了每一步要做什么、怎么验证、失败了怎么排查。

  3. 03

    让它跑完,看验证结果

    AI 会先请求模型列表拿到真实模型名,实测一次推理,再写入 config.toml,最后跑 grok models 验证。它会把最终配置和验证结果报给你。

为什么值得多这一道手

直接把配置抄一遍不行吗?可以,但有几个地方特别容易翻车

模型名不能猜

第三方网关提供什么模型、叫什么 ID,只有接口返回说了算。同一个域名,今天挂的可能是 Grok,明天就换成别的。生成的提示词会强制 AI 先 curl 一次 /models 拿到真实名字,再往配置里填。

TOML 有个隐蔽陷阱

模型名里带小数点时,表名不加引号会被 TOML 当成层级分隔符,配置静默失效。报错信息还特别有误导性,说你「未认证」。这个坑写进提示词里,AI 就不会踩。

登录态会盖掉密钥

只要本地还留着 grok login 的 session,你配的 API Key 就不生效。很多人卡在这里查半天,其实只差一句 grok logout。

配完要验证,不能只看没报错

写完文件不代表生效。提示词要求 AI 必须跑 grok models 确认看到「using its own API key」,再跑一次真实推理,两个都过才算完。

三个最常见的坑

如果你打算手动配,这三条建议先看完

01

模型名含小数点,表名必须加引号

这是最隐蔽的一个。TOML 会把 key 里的点当作层级分隔符,于是 [model.grok-4.5] 被解析成「grok-4 表下的 5 键」,你写的 api_key 根本没挂到模型上。症状是 grok models 报 You are not authenticated,并且列出的是你从没配过的内置默认模型。

toml
[model."grok-4.5"]        # ✅ 正确,引号不能省
api_key = "sk-..."

[model.grok-4.5]          # ❌ 错误,会被解析成 grok-4 → 5
api_key = "sk-..."
02

session 优先级高于 API Key

本地存在 grok login 留下的登录态时,即便 config.toml 里配了 api_key 也不会走。配置前先 grok logout,并确认 ~/.grok/auth.json 已经不在了。

bash
grok logout
ls ~/.grok/auth.json   # 应当报 No such file
03

残留字段指向不存在的模型

配置里除了 default,还可能有 fork_secondary_model、web_search 等字段引用着别的模型名。如果它们指向的模型在你的网关上并不存在,平时不报错,一用到就失败。换掉它们。

toml
[ui]
fork_secondary_model = "grok-build"   # ← 网关上没有这个模型,会失败
查看完整的手动配置指南

常见问题