# VS Code 集成

在 VS Code 里用 Claude Code,可以直接在编辑器侧边栏对话、看改动 diff,体验比纯终端更直观。本页讲怎么把它接到 Clomio。

---

## 一、安装扩展

1. 打开 VS Code → 扩展面板(`Ctrl/Cmd + Shift + X`)。
2. 搜索 **Claude Code**(Anthropic 官方)。
3. 点安装。

> 扩展依赖本机的 Claude Code CLI。请先按 [Claude Code 接入](#/claude-code) 装好 `claude` 命令。

---

## VS Code 里常见三类客户端怎么选

| 客户端 | 协议 | Base URL | 主路径 | Key 分组 |
|---|---|---|---|---|
| Claude Code 扩展 | Anthropic Messages | `https://api.clomio.ai` | `POST /v1/messages` | Claude/Anthropic |
| Codex 扩展/CLI | OpenAI Responses | `https://api.clomio.ai/v1` | `POST /v1/responses` | OpenAI/Codex |
| 普通 OpenAI-compatible 扩展 | Chat/Responses 取决于扩展 | `https://api.clomio.ai/v1` | `/v1/chat/completions` 或 `/v1/responses` | OpenAI/Grok 按能力 |

`GET /v1/responses` 是 Codex/Responses WebSocket 入口,不是“按 id 查询历史”的 REST API；当前也没有 `GET /v1/models/{id}`。如果一个 VS Code 扩展只会测 Chat Completions,不要拿 Grok Responses/Videos 分组的检测结果判断所有能力。

---

## 二、接到 Clomio(关键:用 settings.json)

VS Code 扩展和命令行不同:**它不一定会读你 shell 里 export 的环境变量**,直接装完往往会跳出登录界面。优先把配置写进 Claude Code 的 `settings.json`;如果扩展仍跳登录或不认地址,再进入下面的二级排查。不同扩展版本对 settings/env 的读取行为可能不完全一致。

编辑 `~/.claude/settings.json`(Windows 为 `%USERPROFILE%\.claude\settings.json`),写入:

```json
{
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.clomio.ai",
    "ANTHROPIC_AUTH_TOKEN": "你的密钥"
  }
}
```

保存后**完全退出 VS Code 再重新打开**(不是 reload 窗口)——这些值在进程启动时只读一次,不重启不生效。

> 地址可换成另外两条线路 `https://sub.qazwc.com` / `https://crs.qazwc.com`,见 [网关线路](#/gateway-lines)。注意 Claude Code / Anthropic-compatible 的 `ANTHROPIC_BASE_URL` **不带 `/v1`**;这里如果写成 `https://api.clomio.ai/v1`,扩展会再拼 `/v1/messages`,容易变成错误路径。

---

## 三、开始使用

重开 VS Code 后:

1. 在侧边栏点 Claude Code 图标,或用命令面板(`Ctrl/Cmd + Shift + P`)搜 `Claude`。
2. 在对话框里直接提需求,扩展会读取当前工作区的代码。
3. 它给出的文件改动会以 **diff** 形式展示,你确认后再应用。

试一句「你现在用的是什么模型?」,能正常回复即接入成功。

也可先用终端验证同一把 Key 是否能走 Anthropic Messages 协议:

```bash
curl https://api.clomio.ai/v1/messages \
  -H "Authorization: Bearer 你的密钥" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-6","max_tokens":1,"messages":[{"role":"user","content":"ping"}]}'
```

---

## 四、排查

**装完直接跳登录界面 / 不认地址?**
这是扩展的已知行为——它对环境变量的支持不如 CLI 完整。务必用上面 **settings.json** 的方式配置,并**彻底重启** VS Code。

**仍然不行? 先分三层定位:**

1. 系统终端运行 `claude` 是否可用。
2. VS Code 内置终端运行 `claude` 是否可用。
3. 只有侧边栏 Claude Code 扩展是否失败。

如果 1/2 可用但 3 失败,优先怀疑扩展进程没有读到 env、扩展登录检查先发生,或 Remote SSH / Dev Container / WSL 的 extension host 跑在另一台环境里,不要先改 Clomio Key。

- VS Code 从 Dock/开始菜单启动时通常不会继承你在终端里 `export` 的环境变量;Reload Window 也不等于重启外层进程。彻底退出 VS Code 后,从已经设置好环境变量的终端运行 `code .`,或把变量写进 `~/.claude/settings.json`。
- 打开 VS Code 的 Output / Developer Console,搜索实际请求路径、base URL、401/404 响应体;扩展日志里的 `/v1/messages`、`/v1/v1/messages`、官方 Anthropic host 往往比 UI 报错更有用。
- 如果扩展仍不读 `~/.claude/settings.json`,可在 VS Code 用户设置里临时显式写扩展环境变量验证:

```json
{
  "claudeCode.environmentVariables": {
    "ANTHROPIC_BASE_URL": "https://api.clomio.ai",
    "ANTHROPIC_AUTH_TOKEN": "你的密钥"
  }
}
```

- Remote SSH / Dev Container / WSL 场景下,扩展可能运行在远端 extension host;`~/.claude/settings.json` 和环境变量要写在远端 home,不是本机 home。
- 确认 `settings.json` 是合法 JSON(逗号、引号别漏),路径在 `~/.claude/` 下。
- 确认 Key 属于 Claude/Anthropic 可用分组。OpenAI/Grok 分组只有在当前分组开放 Messages 兼容能力时才可走 `/v1/messages` 兼容桥。
- 看到 404 或类似 `/v1/v1/messages`,先把 `ANTHROPIC_BASE_URL` 改回不带 `/v1` 的线路根地址。
- 如果响应体写着 `Messages API is not supported for this platform`,说明当前分组未开放 Claude Messages 兼容能力；换 Claude/Anthropic 分组或启用兼容能力。
- 如果 OpenAI 分组报 `/v1/messages` 不可用，说明当前分组未开放 Messages 兼容能力；请换 Claude/Anthropic 分组或改用 Codex/OpenAI-compatible 扩展。
- 卡顿则换[网关线路](#/gateway-lines);其余报错见 [故障排查](#/troubleshooting)。

> 如果你更习惯图形化管理多个密钥/线路,也可以用 [CC Switch](#/cc-switch) 写好配置,扩展同样会读 `~/.claude/` 下的配置。

---

## 想要 Codex 的编辑器体验?

Codex 也有 IDE 扩展,配置思路一致:装好 `codex` CLI 并按 [Codex 接入](#/codex) 写好用户级 `~/.codex/config.toml` 与 `env_key` 对应的环境变量;Clomio API-key 接入不要求 `auth.json`,那是 OpenAI 登录链路。Codex 是 OpenAI-compatible / Responses 协议,`base_url` 要写 `https://api.clomio.ai/v1`(或其它线路 + `/v1`),不要使用 Claude Code 的 `ANTHROPIC_BASE_URL` 规则。MCP 等高级能力 CLI 与扩展也是共享的,见 [Codex 进阶](#/codex-advanced)。

最小自检:

```toml
model_provider = "clomio"
model = "gpt-5.4"
preferred_auth_method = "apikey"

[model_providers.clomio]
name = "Clomio"
base_url = "https://api.clomio.ai/v1"
wire_api = "responses"
env_key = "CLOMIO_API_KEY"
```

```bash
export CLOMIO_API_KEY="你的OpenAI/Codex分组密钥"
curl https://api.clomio.ai/v1/responses \
  -H "Authorization: Bearer $CLOMIO_API_KEY" \
  -H "content-type: application/json" \
  -d '{"model":"gpt-5.4","input":"ping","max_output_tokens":8}'
```

同一台机器上同时装 Claude Code 和 Codex 时,把 provider 拆清楚:Claude Code/Anthropic-compatible 写 `https://api.clomio.ai`;Codex/OpenAI-compatible 写 `https://api.clomio.ai/v1`。看到错误路径是最快定位方式:`/v1/messages` 对应 Claude 协议,`/v1/responses` 对应 Codex/Responses 协议。普通 OpenAI-compatible VS Code 扩展若只用 Chat Completions 做健康检查，Grok/Responses-only Key 可能被误判失败；请用真实业务路径再验证。
