james-6-23/codex2api
Codex2API 是一个基于 Go + Gin + React/Vite 的 Codex 反向代理与管理后台项目
Codex2API – 聚合 Codex 账号的 OpenAI 兼容网关
是什么 – Codex2API 是一个自托管服务,将多个 Codex(OpenAI 风格)刷新令牌或访问令牌账号整合为一个生产就绪的 API 端点。它支持相同的 OpenAI/Anthropic HTTP 路由(/v1/chat/completions、/v1/images/...、/v1/models 等),同时处理令牌刷新、健康评分、动态并发、速率限制恢复、基于使用量的计费以及管理操作。
为何重要 – 许多开发者获取多个个人 Codex 账号以绕过配额限制。手动管理这些令牌既容易出错又不安全。Codex2API 自动化管理账号池,将请求调度到最健康的账号,并提供统一的 OpenAI 兼容接口,任何客户端(Codex CLI、Claude Code、官方 OpenAI SDK 等)均可调用。
核心功能
| 功能 | 你将获得 |
|---|---|
| 统一的 OpenAI 风格 API | 支持聊天补全、响应、图像/视频生成、模型列表、健康检查等端点,全部位于 /v1/* 下。 |
| 账号池调度器 | 基于健康等级、并发限制、冷却时间、近期使用情况选择账号;支持 round_robin 和 remaining_quota 策略。 |
| 管理仪表板 | React + Vite UI,用于导入令牌、测试账号、管理 API 密钥、代理池、提示过滤、使用分析和系统设置。 |
| 两种部署形态 | 生产模式:PostgreSQL + Redis;轻量模式:SQLite + 内存缓存(单容器)。 |
| 计费与可观测性 | 按账号追踪美元成本(5小时/7天滑动窗口),信用配额标志,API 密钥使用日志,趋势图表,请求日志。 |
| OAuth PKCE 流程 | 内置端点,通过标准 OAuth PKCE 交换获取刷新令牌,避免手动提取令牌。 |
| Docker 就绪 | 提供生产用官方 docker-compose.yml,以及本地源码构建和仅 SQLite 部署的变体。 |
快速开始(Docker,生产模式)
# 克隆并进入仓库
git clone https://github.com/james-6-23/codex2api.git && cd codex2api
# 复制环境模板并根据需要编辑
cp .env.example .env # 设置 DB 密码、ADMIN_SECRET 等
# 拉取镜像并启动栈
docker compose pull
docker compose up -d
# 查看日志
docker compose logs -f codex2api
*管理 UI 可通过 http://localhost:8080/admin/ 访问(受 ADMIN_SECRET 保护)。
如需单节点部署且无需 PostgreSQL/Redis,使用 SQLite 的 Compose 文件:
cp .env.sqlite.example .env
docker compose -f docker-compose.sqlite.yml up -d
如何使用 API
所有端点遵循 OpenAI 规范,因此现有 SDK 可开箱即用。聊天补全示例:
curl https://your-host/v1/chat/completions \
-H "Authorization: Bearer <your‑public‑api‑key>" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.5","messages":[{"role":"user","content":"Hello"}]}'
若未配置公开 API 密钥,网关将跳过密钥验证。
管理
- 令牌导入 – POST
/api/admin/accounts(刷新令牌)或/api/admin/accounts/at(访问令牌)。支持单个或批量(换行分隔)上传。 - 文件导入 – 用于 TXT 或 JSON 令牌文件的多部分
/api/admin/accounts/import。 - OAuth PKCE – 生成认证 URL,在浏览器中完成流程后,通过
/api/admin/oauth/exchange-code交换代码。 - API 密钥 – 在
/admin/api-keys下为每个客户端创建密钥;密钥存储在数据库中,可撤销。 - 调度器设置 – 通过设置页面调整
SchedulerMode、MaxConcurrency、GlobalRPM等;更改将传播至所有运行实例。
可观测性与计费
- 仪表板显示请求量、延迟、令牌健康度和模型使用情况。
- 按账号追踪成本(美元)使用 5 小时 / 7 天滑动窗口;信用配额标志可限制支出。
- Redis 缓存(或内存回退)存储最近的响应上下文,以支持续接调用(
previous_response_id)。
何时选择哪种部署
| 情况 | 推荐模式 |
|---|---|
| 多账号生产服务,需要持久化和水平扩展 | PostgreSQL + Redis(标准 Compose) |
| 小规模个人使用、快速测试或 CI 流水线 | SQLite + 内存(sqlite Compose) |
| 想修改 Go 后端或 React UI | 使用 docker-compose.local.yml(或 docker-compose.sqlite.local.yml)从源码构建 |
社区与支持
- 问题与贡献 – 请参阅
docs/CONTRIBUTING.md了解 PR 工作流。 - 演示 – 公开演示托管于 https://codex2api‑latest‑vu8j.onrender.com(密码:`codex2api`)。仅用于探索 UI;切勿上传真实令牌。
- 赞助商 – FastAIToken、AiXor 和 星辰·AI 列为赞助商;他们提供商业 AI-API 网关服务。
许可证与免责声明
该仓库采用 MIT 许可证发布。作者警告:演示不应用于真实凭证,且运营令牌池网关可能违反底层提供商的使用条款。
总结 – Codex2API 提供一个功能完整的、Docker 就绪的网关,可聚合多个 Codex 账号,提供标准 OpenAI 兼容 API,并配备丰富的管理 UI 用于令牌管理、计费和可观测性。适用于需要更高吞吐量或希望集中管理令牌而无需自行编写调度器的团队。
相关
- Dispatch
- 项目
- 项目
- Dispatch
- Dispatch