james-6-23/codex2api

Codex2API 是一个基于 Go + Gin + React/Vite 的 Codex 反向代理与管理后台项目

Codex2API – プールされた Codex アカウント用の OpenAI 互換ゲートウェイ

何であるか – Codex2API は、複数の Codex(OpenAI 風)リフレッシュトークンまたはアクセストークンアカウントを1つの生産用 API エンドポイントに統合する自己ホスト型サービスです。OpenAI/Anthropic HTTP ルート(/v1/chat/completions/v1/images/.../v1/models など)をサポートしながら、トークンのリフレッシュ、ヘルススコアリング、動的並行処理、レート制限回復、使用量ベースの課金、管理者操作をすべて処理します。

なぜ重要か – 複数の個人用 Codex アカウントを取得してクォータ制限を回避する開発者が多くいます。これらのトークンを手動で管理するのはエラーが発生しやすく、セキュリティ上も危険です。Codex2API はプールを自動化し、最も健全なアカウントにリクエストをスケジューリングし、どのクライアント(Codex CLI、Claude Code、公式 OpenAI SDK など)でも呼び出せる統一された OpenAI 互換インターフェースを提供します。


コア機能

機能 得られるもの
統一された OpenAI 風 API チャット補完、応答、画像/動画生成、モデル一覧、ヘルスチェックのエンドポイントがすべて /v1/* の下で利用可能。
アカウントプールスケジューラ ヘルスティア、並行処理制限、クールダウン、最近の使用状況に基づいてアカウントを選択。round_robin および remaining_quota 戦略をサポート。
管理者ダッシュボード React + Vite UI でトークンのインポート、アカウントのテスト、APIキー管理、プロキシプール、プロンプトフィルタ、使用状況分析、システム設定を操作可能。
2種類のデプロイ形状 本番モード:PostgreSQL + Redis;軽量モード:SQLite + インメモリキャッシュ(単一コンテナ)。
課金と監視 アカウントごとの USD 課金追跡(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 のコンポーズファイルを使用:

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 でクライアントごとにキーを作成。キーはDBに保存され、無効化可能。
  • スケジューラ設定 – 設定ページから SchedulerModeMaxConcurrencyGlobalRPM などを調整。変更はすべて実行中のインスタンスに即時反映。

監視と課金

  • ダッシュボードではリクエスト数、レイテンシ、トークンの健全性、モデル使用状況を表示。
  • アカウントごとのコスト追跡(USD)は5時間/7日スライディングウィンドウを使用。クレジットクォータフラグで支出を制限可能。
  • Redisキャッシュ(またはインメモリフォールバック)は、継続呼び出し(previous_response_id)をサポートするための最近の応答コンテキストを保存。

どのデプロイモードを選ぶべきか

場合 推奨モード
複数のアカウントを扱う本番サービス、永続性と水平スケーリングが必要 PostgreSQL + Redis(標準コンポーズ)
小規模な個人利用、迅速なテスト、またはCIパイプライン SQLite + インメモリ(sqliteコンポーズ)
GoバックエンドやReact UIをカスタマイズしたい docker-compose.local.yml(または docker-compose.sqlite.local.yml)を使用してソースからビルド

コミュニティとサポート

  • イシューと貢献 – PRワークフローは docs/CONTRIBUTING.md を参照。
  • デモ – 公開デモは https://codex2api‑latest‑vu8j.onrender.com にホスト(パスワード: codex2api)。UIの探索にのみ使用。実際のトークンはアップロードしないでください。
  • スポンサー – FastAIToken、AiXor、星辰·AI がスポンサーとして掲載。商用AI-APIゲートウェイサービスを提供しています。

ライセンスと免責事項

リポジトリは MIT ライセンスでリリースされています。作者はデモを実際の資格情報で使用しないよう警告しており、トークンプールゲートウェイを運用することは、下位のプロバイダーの利用規約に違反する可能性があると述べています。


結論 – Codex2API は、多数の Codex アカウントを統合し、標準的な OpenAI 互換 API を提供し、トークン管理、課金、監視に富んだ豊かな管理者UIを備えた、完全に機能した Docker 対応ゲートウェイです。より高いスループットが必要なチームや、独自のスケジューラを書かずにトークン管理を集中化したいチームに適しています。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • Dispatch
  • Dispatch