
カスタムプロバイダーでCodex CLIを使う:config.toml、GPTとClaudeのモデル、IDE拡張機能、問題の解決方法
Codexが読み取るファイルは ~/.codex/config.tomlで、CLI、 codex exec およびIDE拡張機能で共有されます。このファイルにカスタムプロバイダーを設定すると、Codexの接続先がこのゲートウェイになり、同じ設定でGPTモデルとClaudeモデルを実行できます。現在のCodexバージョンはResponses API(wire_api = "responses")のみを使用するため、 wire_api = "chat" を使用する古いガイドは、現在では機能しません。
Codexをインストール
# macOS / Linux
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# or with a package manager
npm install -g @openai/codex
brew install --cask codex
codex --versionpowershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"VS Code、Cursor、Windsurf向けのCodex拡張機能は、エディターの拡張機能マーケットプレイスからインストールでき、CLIと同じ ~/.codex/config.toml を使用するため、以下の内容は両方に適用されます。
適切なグループのキーを使用
ゲートウェイのキーは特定のグループに属し、そのグループによってキーで呼び出せるモデルが決まります。GPTモデルの場合は、ダッシュボードの**Codex**グループでキーを作成してください。Claudeモデルの場合は、Claudeの従量課金キーならどれでも使用できます。無制限グループのキーには有効なプランが必要です。有効なプランがないと、すべてのリクエストが次のエラーで失敗します: No active subscription found for this group.
export AIPRIME_CODEX_KEY=key_from_the_codex_group # GPT models
export AIPRIME_CLAUDE_KEY=key_from_a_claude_group # Claude modelssetx AIPRIME_CODEX_KEY "key_from_the_codex_group"
setx AIPRIME_CLAUDE_KEY "key_from_a_claude_group"
# open a new terminal afterwardsGPTモデル用のconfig.toml
model_provider = "aiprime"
model = "gpt-6-astra"
model_reasoning_effort = "high"
[model_providers.aiprime]
name = "AI Prime Tech"
base_url = "https://aiprimetech.io/v1"
env_key = "AIPRIME_CODEX_KEY"
wire_api = "responses"
supports_websockets = false| 設定として | 理由 |
|---|---|
[model_providers.aiprime] | 予約済みの次の値を除く任意のID: openai, ollama と lmstudio |
base_url = "https://aiprimetech.io/v1" | Codexが /responses を末尾に追加します |
env_key | キー自体ではなく、キーを格納する環境変数の**名前** |
wire_api = "responses" | 現在のCodexが受け付ける唯一の値 |
supports_websockets = false | Codexで通常のHTTPストリーミングを使用し続けるため、どのプロキシやVPN経由でも動作します |
requires_openai_auth = true または experimental_bearer_token このプロバイダーでは、次の設定を使用すると、 requires_openai_auth = true Codexは次の設定を無視し、 env_key 代わりにChatGPTまたはOpenAIのログイン情報を送信するため、ゲートウェイに拒否されます。ClaudeモデルでCodexを実行
ゲートウェイはClaudeモデル向けのResponses APIリクエストを受け付けて変換するため、CodexでClaudeを使用することもできます。Claudeのキーを使用する別のプロバイダーを追加し、そのプロバイダーに切り替えるためのプロファイルを追加してください。
[model_providers.aiprime_claude]
name = "AI Prime Tech (Claude)"
base_url = "https://aiprimetech.io/v1"
env_key = "AIPRIME_CLAUDE_KEY"
wire_api = "responses"
supports_websockets = falsemodel_provider = "aiprime_claude"
model = "claude-sonnet-5"
model_reasoning_effort = "high"codex --profile claude
codex exec --profile claude "review the last commit for bugs"Codex 0.134.0以降、プロファイルは個別のファイル ~/.codex/<name>.config.tomlとなり、そのキーは最上位に配置します。 [profiles.<name>] 内のテーブルは config.toml で読み取られなくなりました。プロファイルとプロバイダーはユーザー設定でのみ設定できます。プロジェクトの .codex/config.toml は次の設定を無視します: model_provider と model_providers.
モデルと推論の強度
| モデルID | プロバイダー | 用途 |
|---|---|---|
gpt-6-astra | Codexグループのキー | ゲートウェイで最も強力なGPTモデル。長時間のエージェントタスク向け |
gpt-6-sol | Codexグループのキー | 日常的なコーディング向けの、より高速で安価なGPT |
gpt-5.6-terra | Codexグループのキー | 軽いタスクと簡単な編集 |
claude-sonnet-5 | Claudeのキー | コーディング作業向けの標準的なClaude |
claude-opus-5-5 | Claudeのキー | より難しい推論と大規模なリファクタリング |
claude-fable-5-1 | Claudeのキー | 最も高性能で、最も高額 |
model_reasoning_effort が受け付ける値は low, medium, high, xhigh または maxで、モデルによって異なります。次の値は設定しないでください: none。これらのモデルは次のエラーで拒否します: 'none' is not supported. review_model で、次の用途に別のモデルを設定できます: /review 。別のモデルを使用したい場合に設定してください。ダッシュボードには、キーのグループで呼び出せるすべてのモデルが表示されます。
IDE拡張機能とcodex exec
IDE拡張機能は同じ config.tomlを読み取りますが、 env_key はエディター自身の環境から解決されます。Dockやスタートメニューから起動したエディターでは、次のファイルでエクスポートした変数を参照できません: .bashrc。そのため、Codexは次のエラーで失敗します: Invalid API key 。一方、CLIは動作します。変数をシステム全体で設定するか(Windowsでは setx で設定できます)、ターミナルからエディターを起動してください。例: code ..
codex exec は対話型UIを使わずに単一のタスクを実行するため、スクリプトやCIに適しています。同じ設定とプロファイルを使用します:
codex exec "write unit tests for utils.py"
codex exec --profile claude "summarise the changes on this branch"
codex login status # which authentication method is activeリトライとタイムアウト
各プロバイダーには、それぞれ再試行とストリームの設定があります。デフォルトは、リクエストの再試行が4回、ストリームの再接続が5回、ストリームごとのアイドルタイムアウトが5分です。長い推論ターンでは、しばらく出力がない状態になることがあるため、推論の強度が高い場合はアイドルタイムアウトを延長すると効果的です。
[model_providers.aiprime]
# ...settings from above...
request_max_retries = 6
stream_max_retries = 8
stream_idle_timeout_ms = 600000トラブルシューティング:Codexユーザーが遭遇するエラー
以下は、このゲートウェイでCodexクライアントが実際に出力するエラーを、よく発生する順に並べたものです。
| 表示される内容 | 原因 | 対処方法 |
|---|---|---|
403 No active subscription found for this group | キーが、有効なプランのない無制限グループに属している | 従量課金グループのキー(GPTの場合はCodex)を使用するか、プランを購入してください |
401 Invalid API key | Codexを実行しているプロセス(多くの場合はIDE)で変数が空になっている、または requires_openai_auth = true によってCodexが別のログイン情報を送信している | echo $AIPRIME_CODEX_KEY。次の設定を削除してください: requires_openai_auth。エディターを再起動してください |
404 Model "..." is not supported by any configured account in this group | モデルがキーのグループに属していない。例:GPTのキーでClaudeモデルを使用している | キーとモデルが一致するように、プロバイダーまたはプロファイルを切り替えてください |
426 WebSocket upgrade required | WebSocketトランスポートが有効だが、接続がアップグレードされていない | supports_websockets = false。また、次の設定を削除してください: responses_websockets_v2 。削除元: [features] |
403 Your API key has expired | キーが有効期限付きで作成されている | ダッシュボードで新しいキーを作成してください |
'none' is not supported | 推論の強度が次の値に設定されている: none | 使用するモデルは、 low 以上 |
404 page not found | base_url に次の内容が含まれている: /v1 重複 | 次の値をそのまま使用してください: https://aiprimetech.io/v1 |
次の項目に関する設定エラー: wire_api アップグレード後 | A wire_api = "chat" 古いガイドに記載された行 | 設定する項目: wire_api = "responses" |
Your balance is used up | 残高がない | チャージ |
Concurrency limit exceeded for user | 複数のCodexエージェントまたはウィンドウを同時に実行している | 並列実行数を減らすか、サポートに同時実行数の上限引き上げを依頼してください |
どちらかに決める前にCodexとClaude Codeを比較したい場合は、こちらをご覧ください Claude CodeとCodexの比較.
よくある質問
Codexの設定ファイルはどこにありますか?
Codex CLIでClaudeモデルを使用できますか?
Codexでwire_api = "chat"はまだ使えますか?
CLIでは動作するのに、CodexのVS Code拡張機能でAPIキーが無効と表示されるのはなぜですか?
Codexの「このグループに有効なサブスクリプションが見つかりません」とはどういう意味ですか?
APIキーを取得 — Anthropicアカウントもウェイトリストへの登録も不要です。
APIキーを取得AI Prime Techは独立したAPIゲートウェイです。Anthropicとの提携関係はなく、同社の承認を受けておらず、同社の再販業者でもありません。Claudeおよび関連するモデル名は、それぞれの所有者の商標です。