Communityコーディング&開発github.com

Claudex Gateway スキル

ローカルの claudex スタックをブートストラップ、管理、トラブルシューティングし、Claude Code を CLIProxyAPI 経由で Codex OAuth / ChatGPT Codex にルーティングします。

Claudex Gateway スキル とは?

このスキルは、ローカル環境でClaude CodeをCodex OAuth(ChatGPT Codex)に安全かつ一貫して接続するためのゲートウェイスタックを構築・運用します。主にClaude Code、CLIProxyAPI、そしてCodex OAuth認証を組み合わせたアーキテクチャを対象としており、ユーザーが手動でファイルを編集する代わりに、専用スクリプト(bootstrap_stack.py、sync_codex_auth.py、probe_stack.pyなど)を使用してスタック全体を管理します。 ポイントは、`.codex/auth.json`から認証情報を同期し、`claudex`ラッパーを介してClaude Codeを起動する点です。このラッパーは環境変数を注入し、引数をそのままClaude Codeへ渡します。また、CLIProxyAPIをビルドしてローカルプロキシとして動作させ、ChatGPTのCodexエンドポイントと通信します。 このスキルは、LiteLLMへの置き換えやポート変更をユーザーが明示的に指定しない限り行わないなど、既存の設定を尊重するルールが定められています。スタックの状態確認、認証情報の更新、プロキシの再起動といった日常的なメンテナンス操作を効率化し、初心者でも容易に運用できるよう支援します。

対応✓Claude Code✓Codex CLI~Cursor
npx skills add livoras/claudex-gateway-skill

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Claudex Gateway

概要

このスキルを使用して、ユーザーのローカル Claude Code → Codex OAuth ゲートウェイを安全かつ一貫して運用します。 デプロイされたスタックは、ユーザーが明示的に再設計を依頼しない限り、CLAUDEX_GATEWAY_HOME を信頼できる情報源として扱います。 このスキルでは、以下の規約を使用します。

  • SKILL_ROOT: この claudex-gateway スキルディレクトリのインストール先パス
  • CLAUDEX_GATEWAY_HOME: ローカルプロキシスタックの実行時ディレクトリ。設定されていない場合、ヘルパースクリプトは最初に ${XDG_DATA_HOME:-$HOME/.local/share}/claudex-gateway を、次にレガシーな ${XDG_DATA_HOME:-$HOME/.local/share}/cliproxyapi-codex-test を探します。
  • CLAUDEX_WRAPPER: claudex ラッパーのパス。設定されていない場合、デフォルトで ${HOME}/.local/bin/claudex になります。

クイックスタート

  • 新規マシンをブートストラップ: python3 "$SKILL_ROOT/scripts/bootstrap_stack.py"
  • ~/.codex/auth.json からローカル認証ファイルを更新: python3 "$SKILL_ROOT/scripts/sync_codex_auth.py"
  • ゲートウェイの現在の状態を確認: claudex status
  • ローカルプロキシを再起動: claudex restart
  • スタックのスモークテスト: python3 "$SKILL_ROOT/scripts/probe_stack.py"
  • ラッパーを介して Claude Code を起動: claudex --resume

ワークフロー

0. ゲートウェイスタックがまだ存在しない場合は、最初にブートストラップする

  • CLAUDEX_GATEWAY_HOME がない場合、ファイルを一つずつ手動で作成しないでください。
  • python3 "$SKILL_ROOT/scripts/bootstrap_stack.py" を実行して、ランタイムディレクトリ、設定、ランチャー、環境ファイル、status/start/stop/restart を備えた claudex ラッパー、およびビルド済みの cli-proxy-api バイナリを作成します。
  • ブートストラップスクリプトは以下を前提とします: codex と claude がすでにインストールされていること git と go が利用可能で、CLIProxyAPI のクローンとビルドが行えること
  • ブートストラップ後、デバッグを開始する前に認証を同期し、プロキシを起動します。

1. どのパスが使用されているか確認する

  • 動作パスは以下であると想定します: Claude Code → claudex ラッパー → CLIProxyAPI → chatgpt.com/backend-api/codex
  • ユーザーが現在の claudex セットアップについて質問している場合、LiteLLM から始めないでください。
  • アーキテクチャを変更したりトレードオフを説明する前に、current-stack.md を参照してください。

2. 動作が古くなっているように見える場合は、まず認証情報を更新する

  • python3 "$SKILL_ROOT/scripts/sync_codex_auth.py" を実行します
  • これにより、現在の Codex OAuth トークンが ~/.codex/auth.json からプロキシ認証ファイルにコピーされます: "$CLAUDEX_GATEWAY_HOME/auth/codex-current.json"
  • ユーザーが Codex からログアウトしている場合は、まず再認証を行ってください。

3. Claude Code に触れる前にローカルプロキシを確認する

  • ラッパーコマンドを raw のランナー呼び出しよりも優先します: claudex status claudex start claudex restart
  • ヘルスチェック、/v1/messages、ツール使用、トークンカウントをプローブ: python3 "$SKILL_ROOT/scripts/probe_stack.py"
  • ラッパー生成自体をデバッグする場合にのみ、raw の run.sh を使用します。

4. ユーザーがより深い変更を要求しない限り、モデルルーティングは env ファイル内でのみ変更する

  • ラッパー claudex は以下をソースとして読み込みます: "$CLAUDEX_GATEWAY_HOME/claude-code-gpt54.env"
  • 現在のマッピングはそこに保持されています。
  • CLAUDEX_WRAPPER 内のラッパー契約を維持します: サービスサブコマンドを優先 それ以外の場合は env をソースし、exec "$CLAUDE_BIN" "$@" を実行
  • 常に raw の引数パススルーを維持します。claudex --resume は、環境変数が注入された状態で claude --resume とまったく同じように動作する必要があります。

5. デプロイされたバイナリが存在しないか壊れている場合にのみ再ビルドする

  • デプロイされたバイナリは以下です: "$CLAUDEX_GATEWAY_HOME/cli-proxy-api"
  • 再ビルドが必要な場合は、アップストリームリポジトリを使用します: git clone --depth=1 https://github.com/router-for-me/CLIProxyAPI.git /tmp/CLIProxyAPI cd /tmp/CLIProxyAPI && go build -o "$CLAUDEX_GATEWAY_HOME/cli-proxy-api" ./cmd/server
  • ユーザーが明示的に要求しない限り、ランタイム設定と認証ディレクトリは変更しないでください。

重要なルール

  • ユーザーが明示的に再設計を要求しない限り、CLIProxyAPI を LiteLLM に置き換えてスタックを「修正」しないでください。
  • ポート、認証ファイルの場所、ラッパーのセマンティクスを黙って変更しないでください。
  • claudex の引数パススルーを壊さないでください。
  • 並列バリアントを作成するよりも、現在デプロイされているファイルを編集することを優先してください。
  • スタックについて説明するときは、動作パスが chatgpt.com/backend-api/codex を使用しており、直接 api.openai.com の Responses 呼び出しではないことを明確にしてください。

リソース

scripts/

  • bootstrap_stack.py: 新規マシンにローカルゲートウェイランタイムを作成します
  • sync_codex_auth.py: ~/.codex/auth.json からプロキシ認証ファイルを更新します
  • probe_stack.py: ヘルス、Claude メッセージ、ツール使用、トークンカウントをプローブします
  • show_status.sh: 現在のファイルレイアウト、環境マッピング、ポート状態を表示します

references/

  • current-stack.md: 背景、ファイルレイアウト、コマンド、トラブルシューティングメモ

関連スキル