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_robinremaining_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 下為每個客戶端建立金鑰;金鑰儲存在資料庫中,可撤銷。
  • 排程器設定 – 透過設定頁面調整 SchedulerModeMaxConcurrencyGlobalRPM 等;變更將傳播至所有執行中的實例。

可觀測性與計費

  • 儀表板顯示請求量、延遲、權杖健康度與模型使用情況。
  • 按帳號追蹤成本(美元)使用 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)從原始碼建構

社群與支援


許可證與免責聲明

此倉儲採用 MIT 許可證發布。作者警告:示範不應使用真實憑證,且運營權杖池閘道可能違反底層提供者的使用條款。


總結 – Codex2API 提供一個功能完整的、Docker 就緒的閘道,可聚合多個 Codex 帳號,提供標準 OpenAI 兼容 API,並配備豐富的管理 UI 用於權杖管理、計費與可觀測性。適用於需要更高吞吐量或希望集中管理權杖而無需自行撰寫排程器的團隊。

相關

  • Dispatch
  • 專案
  • 專案
  • Dispatch
  • Dispatch