海外の開発者コミュニティで最近、「Claudex」という新しい言葉が流行しています。これは公式の製品名ではなく、開発者たちが「Claude Codeのシェルを使ってOpenAIのモデルを動かす」という手法に付けた愛称です。ある開発者がSNSでわずか3ステップの構成方法を共有し、「Codexクライアントをわざわざインストールする勇気がないなら、使い慣れたClaude Codeのインターフェースのまま、接続先をGPT-5.6 Solに向ければいい」と冗談交じりに投稿しました。これがTheo(t3.gg)氏によって拡散され、技術的な解説が加えられたことで急速に広まり、ここ数週間、AIプログラミングツール界隈で大きな話題となっています。本記事では、Claudexの意味、背後で利用されているCLIProxyAPIツールの仕組み、そして具体的な設定手順と環境変数を一つずつ解説します。

Claudex とは:インターフェースとモデルの融合
Claudexという名前はClaudeとCodexを組み合わせた造語で、Claude Codeのコマンドラインインターフェースとツール呼び出し機能を維持しつつ、実際の推論リクエストをOpenAIのGPT-5.6 Solモデルに転送するというハイブリッドな利用手法を指します。この組み合わせをわざわざ試す主な理由は、単なる好奇心ではありません。コミュニティ内で行われた比較テストにより、GPT-5.6 SolはClaude Codeのタスクオーケストレーション(編排)ロジック下で動かした方が、Codexのネイティブ環境よりも安定して動作することが判明したためです。
問題は、Codex公式ハーネス(harness)にある既知の欠陥にあります。GitHub上の開発者からの報告によると、GPT-5.6 Solはデフォルトでサブエージェントによるオーケストレーションモードに入ります。このモードでは agent_type、model、reasoning_effort、service_tier といった重要なフィールドが隠蔽されてしまいます。その結果、Solから派生するすべてのサブタスクが、本来は軽量なTerraやLunaモデルで十分な場合でも、Sol自身の高コストな設定を強制的に引き継いでしまうのです。つまり、Codex環境のサブエージェントルーティングメカニズム自体にバグがあり、Claude Codeのファイルベースのサブエージェント定義方式が、偶然にもこの制限を回避しているのです。
| 比較項目 | Codex ネイティブハーネス | Claude Code ハーネス(Claudexモード) |
|---|---|---|
| サブエージェントのモデル降格 | 制限あり(Solが重要フィールドを隠蔽) | 環境変数で明示的に指定可能 |
| サブエージェントの定義方式 | 内蔵オーケストレーションロジック | ファイルベースのサブエージェント定義 |
| ツール呼び出しの並行制御 | 固定ポリシー | CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY で調整可能 |
| ツール検索メカニズム | デフォルトで全ロード | ENABLE_TOOL_SEARCH で必要に応じて切り替え可能 |
ただし、標準的なコーディングタスクでは明確な性能差を感じないという開発者からのフィードバックもあります。この違いは、複雑なサブエージェントオーケストレーションに依存するタスクでより顕著に現れるようです。そのため、Claudexは無条件の最適解というよりは、「選択肢の一つ」としての実験的な構成と捉えるのが適切でしょう。
このような設定テクニックが急速に広まったのは、ある意味当然のことかもしれません。GPT-5.6シリーズのリリース以降、海外の開発者コミュニティでは「Solを動かすにはどのハーネスが最適か」という議論が絶えません。多くのユーザーはすでにClaude Codeの操作感やプラグインエコシステムに慣れており、新しいモデルを試すためだけに全く未知のツールチェーンに切り替えることを望んでいません。Claudexの考え方は、「最小限の変更で最大限の利益を得る」というものです。新しいコマンドラインツールを学び直すのではなく、リクエストの送信先だけを変更する。これこそが、単にCodexクライアントをインストールするよりも受け入れられやすい理由なのです。
CLIProxyAPI とは:プロトコル変換プロキシ
Claudex を実現するには、Claude Code から送られる Anthropic プロトコルのリクエストを、OpenAI Codex が理解できる呼び出し形式に変換するプロキシ層が不可欠です。これこそが CLIProxyAPI の役割です。これはオープンソースのローカルプロキシサービスであり、Codex、Claude Code、Gemini CLI といった多様な CLI ツールの OAuth セッションを、OpenAI、Gemini、Claude、Codex 互換の HTTP API インターフェースに統合します。同時に、ストリーミングレスポンス、関数呼び出し、マルチモーダル入力、そしてアカウントを跨いだ負荷分散もサポートしています。
その立ち位置は「プロトコル変換ゲートウェイ」に似ています。モデルベンダーごとに呼び出しロジックを個別に適応させる必要はなく、プロキシが標準インターフェースを統一して外部に公開します。このアプローチは、APIYI (apiyi.com) の考え方と非常に似ています。どちらも「各社のモデルインターフェースが統一されていない」という問題を解決していますが、CLIProxyAPI がローカルで既存の Claude や ChatGPT のサブスクリプションアカウントにログインすることを前提としているのに対し、APIYI のようなクラウドゲートウェイは API キーを使用して GPT-5.6 シリーズのモデルを直接呼び出せるため、ローカルで OAuth セッションやプロキシプロセスを維持する必要がないという違いがあります。
| コンポーネント | 役割 | 互換プロトコル |
|---|---|---|
| OAuth ログインモジュール | 既存の Claude / ChatGPT アカウントの再利用 | Anthropic OAuth、OpenAI OAuth |
| プロトコル変換層 | 標準インターフェースの統一公開 | OpenAI / Gemini / Claude / Codex |
| マルチアカウントルーティング | リクエストの分散、単一アカウントの制限突破 | 全てサポート |
| ローカルサービスプロセス | CLI ツール接続用のローカルポート待機 | HTTP / WebSocket |
デプロイ形態としては、CLIProxyAPI はバイナリパッケージと Docker イメージの両方を提供しています。リポジトリには docker-compose.yml と対応するビルドスクリプトも含まれており、コンテナ化されたサービスを直接立ち上げることが可能です。設定ファイルは YAML 形式で、リッスンポート、認証情報の保存ディレクトリ、マルチアカウントルーティングの有効化などが核心となります。公式リポジトリの config.example.yaml をコピーして、自分の環境に合わせて編集するのが一番の近道です。また、プロジェクト自体が Go SDK を提供しているため、プロキシ機能を単独のプロセスとしてではなく、自社サービスに組み込みたい場合にも対応可能です。

5ステップの構成フロー:インストールから実行まで
前述の原理を実運用に落とし込むには、5つのステップが必要です。第1ステップは CLIProxyAPI のインストールです。公式のバイナリまたは Docker イメージを使用し、YAML 形式の設定ファイルでリッスンポートと認証情報の保存先を指定します。第2ステップは、Claude アカウントと OpenAI アカウントでそれぞれ OAuth 認証を行うことです。プロキシは両方の認証情報をローカルに保存し、リクエストに応じて適切なIDを自動選択します。
第3ステップは、Claude Code のリクエスト出口をローカルプロキシに向けることです。通常は ANTHROPIC_BASE_URL を CLIProxyAPI のアドレスに設定し、Claude Code が Anthropic の公式インターフェースにアクセスしていると誤認させ、実際にはトラフィックをプロキシ経由で転送させます。第4ステップは claudex というエイリアスを作成し、必要な環境変数をまとめて設定することです。これにより、コマンド一つで混合モードに入れます。第5ステップは、実際のタスクを実行して検証することです。単なるファイル修正ではなく、複数のサブタスクを含むオーケストレーション型の要件でテストし、サブプロキシのルーティングが正しく機能しているかを確認することをお勧めします。
この5ステップで最も問題になりやすいのは、第2ステップと第3ステップの連携です。OAuth トークンにはそれぞれ更新サイクルがあり、プロキシプロセスを長時間放置して再起動しないと、トークン期限切れによりリクエストが黙って拒否されることがあります。この場合、Claude Code が応答なしで固まってしまう現象が起きます。プロキシプロセスはシステムのプロセス管理ツール(systemd など)で管理し、定期的にログを確認して両アカウントのログイン状態が有効であることをチェックすることをお勧めします。
alias claudex='CLAUDE_CODE_SUBAGENT_MODEL=gpt-5.6-sol \
CLAUDE_CODE_ALWAYS_ENABLE_EFFORT=1 \
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY=3 \
ENABLE_TOOL_SEARCH=false \
claude --model gpt-5.6-sol'
🎯 設定のアドバイス:もし GPT-5.6 Sol の実力をまずは体験してみたいというだけであれば、必ずしも二重の OAuth 認証を通す必要はありません。まずは APIYI (apiyi.com) で API キーを取得し、標準の OpenAI 互換インターフェース経由で GPT-5.6 Sol、Terra、Luna を呼び出して検証することをお勧めします。それがうまくいった後に、ローカルプロキシの構築やアカウント管理のコストをかける価値があるか判断すると良いでしょう。
claudex エイリアス内の環境変数を徹底解説
上記のエイリアスコマンドは一見シンプルですが、4つの環境変数がそれぞれ異なる課題を解決しています。これらの役割を理解することで、この設定が自分の環境に適しているかどうかを判断できるようになります。
| 環境変数 | 役割 | なぜ必要なのか |
|---|---|---|
CLAUDE_CODE_SUBAGENT_MODEL |
すべてのサブエージェントに指定モデルを強制 | Codex harness の隠しフィールドによるダウングレード失敗を回避 |
CLAUDE_CODE_ALWAYS_ENABLE_EFFORT |
推論強度パラメータを常に有効化 | Sol が呼び出されるたびに指定した推論投入量を維持 |
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY |
ツール呼び出しの同時実行数を制限 | エージェント転送時にインターフェースの同時実行制限エラーを回避 |
ENABLE_TOOL_SEARCH |
オンデマンドのツール検索機能を無効化 | 一部のエージェント環境でツール検索がプロトコル変換と競合するため |
中でも CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY は特に注意が必要です。エージェント層の転送速度が Claude Code のツール呼び出しリクエストに追いつかない場合、400エラーが発生しやすくなります。これは公式 API を直接呼び出す際にも発生する問題で、本質的には同時リクエスト数がバックエンドの処理能力を超えていることが原因です。このようなエラーに遭遇した際は、この環境変数の数値を下げるだけでなく、同時実行性能の高い API 中継サービスへの切り替えを検討することで、制限回避のための設定調整にかかる時間を削減できます。

よくあるエラーのトラブルシューティング:フリーズからレート制限まで
この構成を導入する過程で発生しやすいエラーをまとめました。あらかじめ原因と対策を知っておくことで、無駄な試行錯誤を減らすことができます。
| 現象 | 考えられる原因 | 確認ポイント |
|---|---|---|
| Claude Code が長時間応答しない | プロキシプロセスの OAuth トークン期限切れ | プロキシログを確認し、ログインフローを再実行 |
| 400 エラー(同時実行制限) | ツール呼び出しの同時実行数が上限超過 | CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY を下げる |
| サブエージェントが高コストモデルを使用 | 環境変数が現在のシェルに反映されていない | Claude Code を起動した同一セッションでエイリアスが定義されているか確認 |
| ツールリストの読み込みが極端に遅い | ツール検索機能とプロトコル変換の競合 | ENABLE_TOOL_SEARCH の設定を切り替えてみる |
中でも同時実行制限によるエラーは最も一般的です。これは公式 API を直接呼び出す際と同じく、リクエストレートがバックエンドの処理能力を超えていることが原因です。トラブルシューティングの基本は、ローカルプロキシ経由か直接クラウド API を呼び出しているかにかかわらず、「まずは同時実行数を下げてから、徐々に上限を探る」という手順をとることです。いきなりパラメータを大きくするよりも、この方法の方が問題の特定が容易になります。
GPT-5.6 シリーズ:どのモデルを選ぶべきか
Claudex の設定ではデフォルトで GPT-5.6 Sol が指定されていますが、これは GPT-5.6 ファミリーの中で最も上位に位置するモデルです。この命名体系では、数字でモデルの世代を、Sol、Terra、Luna という名称で独立して反復可能な3つの能力階層を識別しており、それぞれ異なるタスクの複雑さとコスト予算に対応しています。
| モデル | 位置付け | 適したシナリオ |
|---|---|---|
| GPT-5.6 Sol | 複雑な推論と長大なタスク向けのフラッグシップ | マルチエージェントのオーケストレーション、研究レベルの分析、セキュリティ監査 |
| GPT-5.6 Terra | 日常的な主力モデル | 通常のコーディング、ドキュメント処理、バッチ処理 |
| GPT-5.6 Luna | 軽量・高頻度モデル | 単純な反復タスク、迅速な応答が必要な場面 |
Claudex のサブエージェントルーティングスキームを組み合わせる意義は、複雑なメインタスクを Sol に任せ、分割された軽量なサブタスクを自動的に Terra や Luna にダウングレードさせることで、モデル呼び出しの全体コストを最適化できる点にあります。ローカルプロキシを管理したくない場合は、APIYI (apiyi.com) プラットフォームを通じてこれら3つのモデルをオンデマンドで呼び出すことも可能です。同一のアカウント体系でタスクの計画からサブタスクの実行までを一貫して行えるため、サブエージェントのルーティングが harness によって制限されるかどうかを気にする必要はありません。
モデル選定の際、「最も高価なモデルを使わなければならない」と悩む必要はありません。Sol の価格設定は Terra や Luna よりも明らかに高いため、タスク自体に深い推論や長大なオーケストレーションが含まれていないのであれば、Terra を使用するだけで同等の結果が得られ、コストを大幅に削減できます。これこそが、単にモデルを一つ選ぶことよりも、サブエージェントのダウングレードメカニズムを理解することが重要な理由です。全体的なコストを決定づけるのは、メインタスクでどのモデルを使ったかではなく、分割された大量のサブタスクが安価なモデルに適切に割り振られているかどうかだからです。
よくある質問(FAQ)
Claudex は Anthropic や OpenAI の公式製品ですか?
いいえ、違います。これは開発者コミュニティが CLIProxyAPI のようなサードパーティ製のプロキシツールをベースに構築したハイブリッドな利用手法であり、本質的には両社のインターフェースとモデル機能を組み合わせたものです。いずれの企業の公式見解も代表するものではありません。
なぜ Codex クライアントから直接 GPT-5.6 Sol を呼び出さないのですか?
直接呼び出すことも可能ですが、一部の開発者からは、Codex のネイティブな harness がサブエージェントのオーケストレーションにおいてルーティングの欠陥を抱えており、軽量なサブタスクをより安価なモデルへダウングレードできないという報告があります。複雑なサブエージェントの分割を伴わないタスクであれば、この違いを感じることは少ないでしょう。
CLIProxyAPI プロキシの構築にセキュリティリスクはありますか?
ローカルプロキシにはアカウントの OAuth 認証情報が保存されるため、設定ファイルへのアクセス権限に注意し、公開アクセス可能なサーバー上にデプロイしないようにしてください。モデルの効果検証を迅速に行いたいだけであれば、APIYI (apiyi.com) のようなクラウドゲートウェイと個別の API キーを組み合わせる方が、アクセス制御や利用状況の監査が容易です。
チーム内でこの設定を複数人で共有したい場合はどうすればよいですか?
CLIProxyAPI は複数アカウントのローテーションに対応しているため、理論上はチームメンバーのサブスクリプションアカウントを同一のプロキシインスタンスに接続してリクエストを分散させることが可能です。しかし、この方法では認証情報の管理が非常に複雑になり、特定のアカウントで異常が発生した際にチーム全体の呼び出しに影響が出るリスクがあります。チームでの利用シーンでは、統一された API ゲートウェイを使用してメンバーごとに個別のキーを割り当てることを推奨します。これにより、問題が発生した際に誰が呼び出したのかを正確に特定でき、全員で一つのローカルプロキシプロセスを共有するよりも安全です。
最後に
Claudex は、結局のところコミュニティが自発的に編み出したエンジニアリング上の回避策に過ぎません。その価値は、各ベンダーのハーネス(harness)がサブエージェントのオーケストレーションにおいてどのような実装の違いがあるかを明らかにした点にあり、特定のモデルやツールが絶対的に優れていることを示すものではありません。こうした開発者が自発的に組み合わせた手法は、その寿命が短いことがよくあります。Codex が公式にサブエージェントのルーティングにおけるフィールド隠蔽の問題を修正すれば、Claudex が存在する理由はなくなるかもしれません。しかし、「ハーネスの設計がモデルのパフォーマンスに実質的な影響を与える」という洞察は、今後 AI プログラミングツールを評価する上で非常に参考になります。もし GPT-5.6 Sol の推論能力を試してみたいだけであれば、すぐに時間をかけて CLIProxyAPI を構築したり、二重の OAuth ログインを処理したりする必要はありません。まずは APIYI (apiyi.com) を通じて標準インターフェースで一度実行し、その効果を確認してから、ローカルプロキシという道に深く踏み込む価値があるかどうかを判断することをお勧めします。
