面向需要让 Claude Code、OpenAI Codex 走自建网关或兼容端点的工程师 / 技术负责人。内容包括两套兼容协议的差异、可下发的标准化配置、连通性验证、密钥管理与常见排错。下文以兼容端点 aitokensflux.com 演示,换成自建网关或其他兼容端点步骤一致。
一、需求场景
Claude Code(Anthropic 命令行编程工具)与 OpenAI Codex(CLI / VS Code / 桌面端)默认连各自官方 API。这两个工具都官方支持把端点指向自定义地址,常见用途有:
- 通过公司内部网关做统一鉴权、审计与限流;
- 接入一个「OpenAI / Anthropic 协议兼容」的端点,集中管理多工具的密钥与用量;
- 在受限网络环境中用一个可达地址替代官方地址。
请求路径大致如下:客户端工具按各自协议把请求发到你配置的 Base URL,由网关/兼容端点转发到上游模型 API。

二、两套兼容协议要分清
| 工具 | 协议 | 关键环境变量 | Base URL 形态 |
|---|---|---|---|
| OpenAI Codex | OpenAI 兼容 | OPENAI_BASE_URL、OPENAI_API_KEY |
https://<host>/v1 |
| Claude Code | Anthropic 兼容 | ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN |
https://<host> |
两个最容易踩的点:
- OpenAI 协议的 Base URL 一般带
/v1后缀,Anthropic 协议一般不带; - 鉴权变量名不同:
OPENAI_API_KEY与ANTHROPIC_AUTH_TOKEN(部分 Claude Code 版本也兼容ANTHROPIC_API_KEY)。
下文示例以 https://aitokensflux.com 为例,换成你自己的网关或端点地址同理。
三、标准化配置(可下发给团队成员)
把下面两组环境变量写进团队初始化脚本 / dotfiles,新成员开箱即用、多端(Windows / macOS / Linux)一致。
OpenAI Codex:
# 安装:官方脚本 / Homebrew / npm 三选一
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# brew install --cask codex
# npm install -g @openai/codex
export OPENAI_BASE_URL="https://aitokensflux.com/v1"
export OPENAI_API_KEY="<your-api-key>"
Claude Code:
npm install -g @anthropic-ai/claude-code
export ANTHROPIC_BASE_URL="https://aitokensflux.com"
export ANTHROPIC_AUTH_TOKEN="<your-api-key>"
GUI 场景(VS Code 插件、桌面端)需在各自设置里填 Base URL 与 Key,它们不读终端 env。配好后这两个工具的读仓库、改文件、跑命令等能力与直连官方一致,差异只在请求经过了你指定的端点。
四、连通性验证
下发配置后,先用最小请求确认端点与密钥可用,避免"看似配好其实没通"。
# OpenAI 协议:列模型
curl https://aitokensflux.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
# OpenAI 协议:发一条 chat
curl https://aitokensflux.com/v1/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o","messages":[{"role":"user","content":"ping"}]}'
# Anthropic 协议:发一条 message
curl https://aitokensflux.com/v1/messages \
-H "x-api-key: $ANTHROPIC_AUTH_TOKEN" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model":"claude-3-7-sonnet","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'
返回正常 JSON,即说明端点与鉴权打通。
五、密钥管理与团队治理
集中接入的价值在于可治理,关键是密钥可分配、可回收:
- 按成员或项目建独立 Key,离职 / 项目结束直接停用,互不影响;
- 密钥不要硬编码进代码或提交进仓库,统一走环境变量或密钥管理工具;
- 定期轮换,配合端点侧的启用 / 停用能力做生命周期管理;
- 如端点提供用量统计或导出接口,可接入团队自己的监控看板做容量规划。
六、常见报错排查
- 401 / 403(鉴权失败):Key 填错或被停用;确认协议对应的变量名用对了。
- 404 / Not Found:Base URL 的
/v1后缀加错或漏加(OpenAI 要、Anthropic 不要)。 - model not found:端点支持的模型名可能与官方不完全一致,以其模型列表接口为准。
- 环境变量不生效:确认写进了正确的 shell 配置并
source;GUI 应用要在其设置里单独配置。 - 偶发超时 / 失败:中间层无法消除上游模型自身抖动,给关键调用加超时与重试。
七、安全与合规
把端点指向自建网关之外的第三方时,请求与密钥会经过该第三方。涉及核心代码库或敏感数据时,应先完成安全与合规评审,必要时直连官方或仅用自建网关。自定义端点是官方支持的能力,但具体可用模型、协议细节与可用性以对应文档为准,建议小范围验证后再向团队推广。
小结
为 Claude Code / Codex 配置自定义端点的核心是:分清 OpenAI 与 Anthropic 两套兼容协议(/v1 后缀与变量名差异)、把 Base URL 与 Key 的环境变量沉淀成可下发的标准配置、用 curl 做最小验证,再辅以密钥管理与用量监控。把这套流程规范化,团队就能在保证一致性与可治理性的前提下平滑用上这两个工具。