编码智能体

Claude Code 接入指南

通过 Anthropic Messages 端点把 Claude Code 接入 RealRelay.ai:安装、把 ANTHROPIC_BASE_URL 指向 RealRelay.ai、检查连接并选择模型。

协议
Anthropic Messages
基础地址
https://www.realrelay.ai
官方文档
code.claude.com
已对照工具官方文档核对
2026-10

概览

Claude Code 是 Anthropic 推出的终端编码智能体。它会读取你的项目、编辑文件,并在你批准后运行命令。它使用 Anthropic Messages 协议,因此接入的是 RealRelay.ai 的 /v1/messages 端点。

  • 一个从控制台的 API 密钥页面获取的 API 密钥。

  • 基础地址是站点地址,不带 /v1。Claude Code 会自己拼上 /v1/messages,你再加一次就会得到 404。

  • 一个与 GET /v1/models 列出的完全一致的模型 ID,例如 anthropic/claude-sonnet-4-6。

Anthropic 只支持 Claude Code 搭配 Claude 模型使用。目录中的其他模型可以经协议转换访问,但它们的工具调用和扩展思考只能尽力而为。

安装

使用 Anthropic 的安装程序。它不需要 Node.js,并会在后台自动更新。在 Windows 上,Claude Code 还需要 Git for Windows;如果安装程序提示需要,请参考 Anthropic 的安装指南。

macOS · Linux · WSL
curl -fsSL https://claude.ai/install.sh | bashclaude --version
Windows PowerShell
irm https://claude.ai/install.ps1 | iexclaude --version
npm (Node.js 18+)
npm install -g @anthropic-ai/claude-code

如果 claude --version 输出了版本号,说明安装成功。如果提示找不到命令,请新开一个终端,让它加载更新后的 PATH。

配置

把设置写进 ~/.claude/settings.json。无论从哪个终端或 IDE 启动,Claude Code 每次启动都会读取这个文件,而且其中的值优先于你在 shell 中 export 的变量。把 sk-*** 替换成你的密钥。

~/.claude/settings.json
1{2  "env": {3    "ANTHROPIC_BASE_URL": "https://www.realrelay.ai",4    "ANTHROPIC_AUTH_TOKEN": "sk-***",5    "ANTHROPIC_API_KEY": "",6    "ANTHROPIC_MODEL": "anthropic/claude-sonnet-4-6",7    "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"8  }9}
~/.zshrc · ~/.bashrc
1export ANTHROPIC_BASE_URL="https://www.realrelay.ai"2export ANTHROPIC_AUTH_TOKEN="sk-***"3export ANTHROPIC_API_KEY=""4export ANTHROPIC_MODEL="anthropic/claude-sonnet-4-6"5export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1

启动 Claude Code 之前,先运行 source ~/.zshrc,或者新开一个终端。

Windows PowerShell
1[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://www.realrelay.ai", "User")2[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "sk-***", "User")3[Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL", "anthropic/claude-sonnet-4-6", "User")4[Environment]::SetEnvironmentVariable("CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY", "1", "User")

这些变量会保存到你的用户账户。启动 Claude Code 之前,先关闭并重新打开终端。

  • ANTHROPIC_AUTH_TOKEN 以 bearer token 的形式发送密钥。ANTHROPIC_API_KEY 特意设为空字符串,以免 Anthropic 账户遗留的密钥抢先生效。

  • CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY 会用 RealRelay.ai 的模型列表填充 /model 选择器。

  • 不要把密钥写进项目的 .claude/settings.json,这个文件通常会被提交。如果只想对单个项目生效,请使用 .claude/settings.local.json。

验证

  1. 1

    直接调用端点

    打开 Claude Code 之前,先用你的密钥运行这条命令。如果返回的 JSON 中 id 以 msg_ 开头,说明地址、密钥和模型都没问题。

    Terminal
    1curl -sS "https://www.realrelay.ai/v1/messages" \2  -H "Authorization: Bearer sk-***" \3  -H "anthropic-version: 2023-06-01" \4  -H "content-type: application/json" \5  -d '{"model": "anthropic/claude-sonnet-4-6", "max_tokens": 16, "messages": [{"role": "user", "content": "Reply with OK"}]}'
  2. 2

    在项目中启动 Claude Code

    如果你之前用 Anthropic 账户登录过,先运行一次 /logout。然后启动 claude 并运行 /status。

    Claude Code
    cd /path/to/your/projectclaude/status
  3. 3

    检查状态界面

    Anthropic base URL 一行应显示 RealRelay.ai,凭据应来自 ANTHROPIC_AUTH_TOKEN。发一条简短消息,收到回复即说明整条链路畅通。之后请求会出现在控制台的用量日志中。

模型

在会话中用 /model 切换模型,或者用 claude --model 加模型 ID 启动。Claude Code 在第一次请求之前不会校验模型名,所以拼写错误会在你发出第一条消息时以报错的形式出现。

Claude Code 还会把标题、摘要等后台任务发给它的 Haiku 槽位,而它为这个槽位内置的名称并不是 RealRelay.ai 列出的 ID。请把每个别名都指向你的密钥能调用的模型:

~/.claude/settings.json → env
"ANTHROPIC_DEFAULT_OPUS_MODEL": "anthropic/claude-sonnet-4-6","ANTHROPIC_DEFAULT_SONNET_MODEL": "anthropic/claude-sonnet-4-6","ANTHROPIC_DEFAULT_HAIKU_MODEL": "anthropic/claude-sonnet-4-6"

在 /v1/messages 上原生提供的 Claude 模型列在选择模型中。

故障排查

  • 401 或“Invalid token”。密钥没有送达 RealRelay.ai。在 /status 中查看凭据来自哪里。如果 token 以 "$OTHER_VAR" 的形式 export,而那个变量在你的 profile 中定义得更靠后,token 就是空的。

  • 提示存在两个凭据来源。你仍登录着 Anthropic 账户。运行 /logout。

  • 404。基础地址以 /v1 结尾。把它去掉。

  • 400 并指出未知字段,例如 context_management:关闭 Claude Code 的实验性请求字段。

    ~/.claude/settings.json → env
    "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1"
  • 上下文报错,或不会自动压缩,发生在上下文窗口比 Claude Code 预设更小的模型上。运行 /compact,然后把窗口设为该模型的上限(最小 100,000)。

    ~/.claude/settings.json → env
    "CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000"
  • 设置似乎没有生效。settings.json 中的值优先于 shell 变量;而用原生安装程序安装的 Claude Code 不会读取项目的 .env 文件。

  • 调试输出中出现 /v1/messages/count_tokens 的报错。RealRelay.ai 不提供这个端点。消息本身并不经过它发送。