接入配置

把 Claude Code 指向
自定义 API 端点

官方网关文档(2026-09-02 查):两个变量就够了——ANTHROPIC_BASE_URL 指端点,ANTHROPIC_AUTH_TOKEN 提供凭据并被放进 Authorization 头。也可以写进 settings.json 的 env 块。🔴 Anthropic 托管的网页版与云端会话不走网关,那里设的变量不生效。

#ANTHROPIC_BASE_URL#ANTHROPIC_AUTH_TOKEN#settings.json#apiKeyHelper

四个要点

2 个变量

最小配置

ANTHROPIC_BASE_URL 指向端点,ANTHROPIC_AUTH_TOKEN 提供凭据。多数情况这两个就够。

Authorization

凭据落在哪个头

官方文档写明:这个环境变量就是把 key 放进网关读取的 Authorization 头的那个东西。

settings.json

第二个配置位置

不想用环境变量的话,可以写进 settings.json 的 env 块,形态与环境变量一一对应。

不生效

网页版与云端会话

官方明写:Anthropic 托管的产品始终走 Anthropic 自己的 API;在云端会话环境里设的网关变量不会被应用。

为什么这两个变量就够

Claude Code 的请求出口是可配置的:ANTHROPIC_BASE_URL 决定发到哪里,ANTHROPIC_AUTH_TOKEN 决定带什么凭据。官方文档把后者说得很直白——这个环境变量就是把 key 放进 Authorization 头的那一步,而网关读的正是那个头。所以只要你的端点接受 Anthropic 协议、并按 Authorization 头鉴权,接入就成立,不需要改客户端代码。

官方文档给的两种写法(2026-09-02 查)

写法一是环境变量:ANTHROPIC_BASE_URL 设为你的端点,ANTHROPIC_AUTH_TOKEN 设为凭据。写法二是写进 settings.json 的 env 块,键名与环境变量相同。文档另外给了 apiKeyHelper:它是 Claude Code 用来取凭据的一条命令,替代静态环境变量,适合凭据需要轮换的场景。文档里还有「把网关模型加进模型选择器」和「关掉网关路径之外的流量」两节,企业部署时值得一并看。

接入的三步

第 1 步

设两个变量:ANTHROPIC_BASE_URL 指向端点,ANTHROPIC_AUTH_TOKEN 填凭据。先在一个干净的 shell 里试,别一上来就写进全局配置。

第 2 步

发一个最小请求确认通了。看响应里回显的 model 是不是你请求的那个——这一步顺带验证了中间有没有改写层。

第 3 步

稳定之后再固化:写进 settings.json 的 env 块,或者在 CI 里用密钥管理注入(文档给的 CI 形态是把凭据从 secrets 传给 ANTHROPIC_AUTH_TOKEN)。凭据需要轮换就换成 apiKeyHelper。

官方文档写了的 vs 需要问你的端点方

官方文档写了

① ANTHROPIC_BASE_URL 与 ANTHROPIC_AUTH_TOKEN 两个变量的作用;② 凭据经 Authorization 头传递;③ settings.json 的 env 块是等价的第二种写法;④ apiKeyHelper 用命令取凭据替代静态变量;⑤ Anthropic 托管的网页版与云端会话不走网关,那里的网关变量不生效。

需要问你的端点方

base URL 到底该不该带路径后缀、支持哪些模型 id、是否支持 1M 上下文与缓存、并发上限是多少——这些取决于你接的那个端点,官方文档不会替它回答。收到 404 时先核对 base URL 的路径部分与端点文档是否一致;收到 401 先确认凭据是走 Authorization 头而不是别的头。

两种配置位置

环境变量

改起来最快,适合先试通。缺点是容易漏——换个终端、换个 CI runner 就没了,而且凭据会出现在进程环境里。适合验证阶段和一次性任务。

settings.json 的 env 块

跟着配置走,不依赖你当前 shell 的状态,适合固化。凭据仍然是明文落盘,需要轮换或不想落盘的场景应该改用 apiKeyHelper:它是一条命令,由 Claude Code 在需要时调用取凭据。

三个最常见的卡点

① 变量设了但没生效:确认你设的是当前进程能看到的环境,且没有被 settings.json 里的同名键覆盖;两处都有时以实际加载顺序为准。② 网页版或云端会话里不生效:这是官方明确说明的行为——那些是 Anthropic 托管的产品,始终走 Anthropic 自己的 API。③ 某些依赖账号身份的功能异常:文档提到,用 ANTHROPIC_AUTH_TOKEN 认证的会话在做可用性检查时可能得到与组织设置不一致的结果,因为那个检查需要 claude.ai 登录或 Anthropic API key。

在 QCode 上

我们提供 Anthropic 协议兼容的端点,配置方式就是上面那两个变量。接通之后建议立刻做两件事:一是发一个最小请求看响应里回显的 model 与你请求的是否一致;二是把 usage 与账单对一次,确认扣减口径符合预期。这两步花不了几分钟,但能在放量之前把「接错了」和「计价与预期不符」这两类问题挡在前面。

常见问题

最少要设哪几个变量?

两个:ANTHROPIC_BASE_URL 指向端点,ANTHROPIC_AUTH_TOKEN 提供凭据。官方文档说明后者就是把 key 放进 Authorization 头的那个变量。

base URL 要不要带路径后缀?

取决于你接的端点,官方文档不替它回答。最快的判断方式是先按端点方文档写,发一个最小请求;如果收到 404,第一个要核对的就是路径部分。

能不写环境变量吗?

可以,写进 settings.json 的 env 块即可,键名与环境变量相同。凭据需要轮换、或不想让它明文落盘时,改用 apiKeyHelper——它是一条由 Claude Code 调用来取凭据的命令。

为什么网页版里设了不生效?

这是官方明确说明的行为:Anthropic 托管的网页版等产品始终使用 Anthropic 自己的 API,不属于网关部署的一部分,在云端会话环境配置里设的网关变量不会被应用。要让流量必须走网关,就不要依赖那条路径。

CI 里怎么配?

官方文档给的形态是把凭据从密钥管理里传给 ANTHROPIC_AUTH_TOKEN,base URL 照常设。不要把凭据写进仓库里的配置文件——那和写进代码没有区别。

接通之后第一件该验的事是什么?

看响应里回显的 model 是不是你请求的那个。如果多了请求里没有的前缀、后缀或供应商名,说明中间存在改写层。这不必然是坏事,但它决定了你后面读账单时该怎么归因。

信息来源

两个环境变量的作用、凭据经 Authorization 头传递、settings.json 的 env 块写法、apiKeyHelper 的定义、以及「Anthropic 托管的产品始终使用 Anthropic 的 API,云端会话环境里设的网关变量不会被应用」:Anthropic 官方文档「Connect Claude Code to an LLM gateway」(code.claude.com/docs/en/llm-gateway-connect,2026-09-02 抓取)。具体端点的路径形态、可用模型与限额取决于你所接的服务方,本页不代其回答。

两个变量,先在干净 shell 里试通

通了之后立刻验一次响应回显与 usage 对账,再固化到配置里。

相关阅读

本页引用的官方文档抓取于 2026-09-02,可能更新。具体端点的路径形态、模型集合与限额以你所接服务方的文档为准;客户端行为以 Anthropic 官方文档为准。