
字节笔记本
2026年6月15日
auth2api:轻量级 OAuth 转 API 代理,让 Claude Code 和 OpenAI 客户端共用你的账号
本文介绍 auth2api,一个轻量级的 OAuth 转 API 代理工具,它能将你的 Claude、ChatGPT 或 Cursor 账号登录转化为标准的 API 接口,让 Claude Code 和 OpenAI 兼容客户端直接使用。
项目简介
auth2api 是一个开源的 OAuth-to-API 代理项目,由 0xAA 开发维护,使用 TypeScript 编写。截至目前,该项目在 GitHub 上已获得 490+ stars,主要解决一个实际问题:如何让 Claude Code 和 OpenAI 兼容客户端通过 OAuth 账号(而非 API Key)使用 Claude、ChatGPT 等大模型服务。
它的核心理念是"小而精"——你只需要提供自己的账号登录,运行一个本地或自托管代理,就能自动按模型名称路由到对应的上游服务。
核心特性
- 多 Provider 支持 — 同时支持 Claude OAuth、ChatGPT Codex OAuth 和 Cursor 登录,每个 Provider 有独立的账号池、冷却和刷新机制
- 多账号管理 — 每个 Provider 可加载多个 OAuth Token,支持粘性路由、自动故障转移和按账号用量追踪
- OpenAI 兼容 API — 提供
/v1/chat/completions、/v1/responses和/v1/models标准接口 - Claude 原生透传 — 支持
/v1/messages和/v1/messages/count_tokens,Claude Code 开箱即用 - 流式响应与工具调用 — 支持 Streaming、Tools、图片和推理(Reasoning)等主流使用模式
- 结构化 JSON 输出 — 支持
response_format(Chat API)和text.format(Responses API) - 账号健康管理 — 冷却、重试、Token 刷新(带并发锁)和
/admin/accounts快照 - Cursor 独占模式 — 当只有 Cursor 账号时,所有模型名自动路由到 Cursor,无需前缀
技术栈
- TypeScript — 主要开发语言,代码库小巧精悍
- Node.js 20+ — 运行环境
- OAuth 2.0 — 支持 Anthropic、OpenAI Codex 和 Cursor 的 OAuth 登录流程
- SSE (Server-Sent Events) — 流式响应传输
- Docker — 容器化部署支持
安装指南
前置要求
- Node.js >= 20
- 一个 Claude 账号(推荐 Claude Max 订阅)
安装步骤
# 克隆仓库
git clone https://github.com/AmazingAng/auth2api
cd auth2api
# 安装依赖
npm install
# 构建项目
npm run build登录认证
auth2api 支持三种上游 Provider:
# Claude OAuth(默认)
node dist/index.js --login
# ChatGPT Codex(需要 ChatGPT Plus/Pro)
node dist/index.js --login --provider=codex
# Cursor(实验性)
node dist/index.js --login --provider=cursor远程服务器使用 --manual 模式,浏览器打开 URL 授权后粘贴重定向地址即可。
快速开始
# 启动服务
node dist/index.js服务默认监听 http://127.0.0.1:8317,首次运行会自动生成 API Key 并保存到 config.yaml。
使用示例
场景 1:OpenAI 兼容客户端
curl http://127.0.0.1:8317/v1/chat/completions \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"messages": [{"role": "user", "content": "你好!"}],
"max_tokens": 1024
}'场景 2:Claude Code 集成
ANTHROPIC_BASE_URL=http://127.0.0.1:8317 \
ANTHROPIC_API_KEY=<your-api-key> \
claudeClaude Code 使用原生 /v1/messages 端点,auth2api 直接透传,同时支持 Authorization: Bearer 和 x-api-key 两种认证头。
场景 3:Docker 部署
# 构建镜像
docker build -t auth2api .
# 运行容器
docker run -d \
-p 8317:8317 \
-v ~/.auth2api:/data \
-v ./config.yaml:/config/config.yaml \
auth2apiAPI 参考
端点列表
| 端点 | 说明 |
|---|---|
POST /v1/chat/completions | OpenAI 兼容聊天 |
POST /v1/responses | OpenAI Responses API |
POST /v1/messages | Claude 原生透传 |
POST /v1/messages/count_tokens | Token 计数 |
GET /v1/models | 列出可用模型 |
GET /admin/accounts | 账号健康状态 |
GET /admin/stats | 请求统计 |
POST /admin/reload | 重新加载 Token |
GET /health | 健康检查 |
配置项
| 参数 | 默认值 | 说明 |
|---|---|---|
host | 127.0.0.1 | 绑定地址 |
port | 8317 | 监听端口 |
body-limit | 200mb | 请求体大小限制 |
cloaking.cli-version | 2.1.88 | 模拟的 Claude CLI 版本 |
debug | off | 调试日志级别 |
支持的模型
Anthropic 模型: claude-opus-4-7、claude-sonnet-4-6、claude-haiku-4-5
Codex 模型: gpt-5.5、gpt-5.4、gpt-5.4-mini、gpt-5.3-codex、gpt-5.2
Cursor 模型: cursor-claude-opus-4-7-medium、cursor-claude-sonnet-4-7-medium
快捷别名: opus → claude-opus-4-7、sonnet → claude-sonnet-4-6、haiku → claude-haiku-4-5
注意事项
- Codex 使用限制:ChatGPT Codex Provider 转发的是你的 ChatGPT Plus/Pro 订阅配额,OpenAI 的 ToS 并不正式允许通过第三方工具转发 ChatGPT 会话,请仅用于个人本地使用
- Cursor 实验性:Cursor Provider 基于逆向工程的非公开 API,可能在 Cursor 更新时失效,仅限本地实验
- 多账号路由:请求使用粘性选择——同一账号持续使用直到触发冷却,失败时自动切换到下一个可用账号
- 无需重启重认证:运行
--login时服务正在运行,会自动通知运行中的服务器(通过POST /admin/reload)加载新 Token
项目链接
- GitHub 仓库:auth2api
- 作者:0xAA (AmazingAng)
- 灵感来源:CLIProxyAPI、sub2api