Claude Code 接入
用原生 Anthropic Messages API 把 Claude Code 接入 LoopToken:环境变量、settings.json、模型选择、验收命令与常见问题
POST/v1/messages
LoopToken 提供与 Anthropic 官方一致的 Messages API(/v1/messages、/v1/messages/count_tokens),Claude Code 无需任何协议转换,配置 Base URL 和 Key 即可直连。
| 配置项 | 值 |
|---|---|
| Base URL | https://api.vibelab.me(不带 /v1) |
| Key | 在API Key 管理页创建的 sk-lt-...,不要填 Anthropic 官方 sk-ant- 密钥 |
| 模型 | claude-fable-5-1 / claude-opus-5-5 / claude-sonnet-5-5 / claude-haiku-5-5,见 Claude 系列 |
配置
写入 settings.json
编辑 ~/.claude/settings.json(已有其他字段则保留,只合并 env):
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.vibelab.me",
"ANTHROPIC_AUTH_TOKEN": "sk-lt-...",
"ANTHROPIC_MODEL": "claude-opus-5-5",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-5-5",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-5-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-5-5"
}
}| 变量 | 作用 |
|---|---|
ANTHROPIC_BASE_URL | 请求发往 LoopToken,Claude Code 自己拼接 /v1/messages |
ANTHROPIC_AUTH_TOKEN | LoopToken Key,以 Authorization: Bearer 发送;只填裸 Key,不要加 Bearer 前缀 |
ANTHROPIC_MODEL | 默认使用的模型 |
ANTHROPIC_DEFAULT_OPUS_MODEL / _SONNET_MODEL / _HAIKU_MODEL | /model 里 opus / sonnet / haiku 别名对应的模型;Haiku 也用于后台小任务 |
也可以用 ANTHROPIC_API_KEY 代替 ANTHROPIC_AUTH_TOKEN(以 x-api-key 发送),但交互模式首次启动需要手动批准一次,推荐用 ANTHROPIC_AUTH_TOKEN。
Key 不要写进项目目录下的
.claude/settings.json,该文件通常会提交到仓库。只在本机用时写 ~/.claude/settings.json 或 .claude/settings.local.json。或使用环境变量
只想临时试用,不改配置文件:
export ANTHROPIC_BASE_URL="https://api.vibelab.me"
export ANTHROPIC_AUTH_TOKEN="sk-lt-..."
export ANTHROPIC_MODEL="claude-opus-5-5"
claudesettings.json 的 env 与 shell 环境变量同时存在时,以 settings.json 为准。
验收
claude -p "只回复 LOOP_TOKEN_CLAUDE_OK"能收到回复,并且控制台用量记录里出现对应请求,说明已接通。进入交互模式后执行 /status:
Anthropic base URL一行显示https://api.vibelab.me;Auth token一行指向ANTHROPIC_AUTH_TOKEN。
如果显示的是 claude.ai 登录方式,说明配置没有生效,检查 settings.json 路径和 JSON 格式。最后在测试目录执行一次需要工具的任务(如"列出当前目录的文件并总结"),能读文件、执行命令并完成第二轮回复,才算完整接入。
切换模型
- 会话内 →
/model claude-sonnet-5-5,或/model opus//model sonnet//model haiku(按上面三个DEFAULT_*变量解析)。 - 单次启动 →
claude --model claude-fable-5-1。 - 子代理 → 设置
CLAUDE_CODE_SUBAGENT_MODEL(如claude-sonnet-5-5)。
| 场景 | 建议模型 |
|---|---|
| 日常编码、重构、Agent 任务 | claude-opus-5-5 |
| 更看重速度和成本 | claude-sonnet-5-5 |
| 最难的推理与长时程任务 | claude-fable-5-1 |
| 后台小任务、子代理批量读取 | claude-haiku-5-5 |
计费说明
Claude Code 会大量使用 Prompt 缓存:每轮把系统提示词、工具定义和历史写入缓存,之后的轮次按缓存读取价计费,比普通输入便宜很多。用量按输入 / 输出 / 缓存读取 / 缓存写入(5m)/ 缓存写入(1h)五项结算,单价见 Claude 系列 · 计费。
- 预扣 → 每次请求按
max_tokens冻结输出费用,结算后多退少补。Claude Code 的max_tokens较大,余额太低会直接收到402。 /context→ 依赖/v1/messages/count_tokens,由 LoopToken 本地估算,数字是近似值,不计费。
可选配置
| 变量 | 作用 |
|---|---|
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 | 关闭自动更新检查、遥测、错误上报等非必要请求 |
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 | 不发送预发布 beta 头与对应字段;遇到 Unexpected value(s)、Extra inputs are not permitted 时开启(会同时关闭 MCP tool search) |
CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS=1 | sk-lt- 不是 Anthropic 官方 Key 格式,/fast 可能显示不可用,开启后跳过该检查的报错 |
常见问题
| 现象 | 排查 |
|---|---|
401 authentication_error | 确认用的是 sk-lt- 开头的 LoopToken Key;ANTHROPIC_AUTH_TOKEN 里不要带 Bearer 前缀 |
/status 仍显示 claude.ai 登录 | 只设了 Base URL、没设 Key 时会继续用订阅;补上 ANTHROPIC_AUTH_TOKEN,必要时执行 /logout |
404 not_found_error | 模型名写错,或该 Key 的模型白名单不包含它 |
402 billing_error | 余额不足以覆盖本次预扣,充值后重试 |
400 ... prompt is too long | 上下文超出窗口,Claude Code 会自动压缩;也可手动执行 /compact |
请求了 /v1/v1/messages | Base URL 多写了 /v1,改为 https://api.vibelab.me |
| 改用 CC Switch | Claude Provider 使用 Anthropic 原生格式(不要选 OpenAI Chat Completions),Base URL 填 https://api.vibelab.me,Key 填 sk-lt-...,无需开启协议转换代理 |