コンテンツにスキップ

OpenAI / ChatGPT ガイドハブ

Codex CLI「ネットワーク制限」を2コマンドで解除する方法(2026年)

Codex CLI 完全ガイド

✨ Codex CLI v0.102.0(2026年2月)対応

最新モデル: GPT-5.3-Codex(2026年2月5日)とGPT-5.3-Codex-Spark(2026年2月12日)がCodex CLIの/modelから利用可能です。v0.93.0+ではGPT-5.2-Codex(2025年12月18日リリース)がデフォルトとなり、コンテキストコンパクション、大規模コード変更時のパフォーマンス向上、Windows環境性能の改善、サイバーセキュリティ機能の強化、ポリシー適用付きSOCKS5プロキシサポートが導入されました。ネットワーク制限の設定方法は全モデルで互換性があります。v0.102.0では構造化ネットワーク承認プロンプトが追加され、サンドボックス権限の変更がより明示的になりました。

出典: Introducing GPT-5.2-Codex | OpenAI · Codex CLI Changelog

クイックアクション(v0.93.0+、実環境で検証済み)

  • ネットワーク操作の各ターン前に /status を実行:sandbox_mode: workspace-writenetwork_access: true を確認。そうでなければネットワークフラグを再適用(この記事のポイント参照)。
  • ドメインレベルのフィルタリング(npm/GitHubのみ)には、Web(クラウド)環境のInternet Access設定を使用してください。CLIのネットワーク設定はバイナリ(有効/無効)です。
  • codex re-connecting...が表示されたら、ネットワーク有効プロファイルを保持したまま再接続ガイドに従い再起動し、--transcript ... --appendでリプレイして重複作業を防止。

🚨 よくある問題:「Codexでインターネットにアクセスできない」

Codex CLIの新規ユーザーが多く遭遇する問題です:

# npmパッケージのインストールが失敗
codex run "npm install axios"
# Error: Network access is restricted

# APIにアクセスできない
codex run "curl https://api.example.com"
# Error: Network request blocked by sandbox

原因: Codexはデフォルトでセキュリティサンドボックス内で動作し、インターネットアクセスが完全にブロックされています。

この記事のポイント:2つのコマンドで解決

対象: 全レベル — エラーを最速で解決するための手順です。

コマンド1~/.codex/config.tomlに2行追加(初回のみ):

[sandbox_workspace_write]
network_access = true

コマンド2 — 任意のネットワークコマンドで検証:

codex --sandbox workspace-write "curl -I https://registry.npmjs.org"

ファイル編集なしのワンライナーで設定をインラインで渡すことも可能です:

# 本記事の以降の部分では「ネットワークフラグ」と呼びます
codex --sandbox workspace-write \
  -c 'sandbox_workspace_write.network_access=true' \
  "npm install express"

以上です

ほとんどのユーザーはconfig.tomlの編集だけで問題が解決します。以下の内容では、制限の理由、代替方法(Web UI、Docker)、セキュリティのベストプラクティス、高度なトラブルシューティングを解説します。


なぜデフォルトで制限されているのか?

OpenAIの公式見解

"Codex operates with network access disabled and file edits restricted to the current workspace by default" — OpenAI Codex Security Guide

リンク確認に関する注記

上記URLはOpenAI公式ドキュメントで引用されています。リンクが404を返す場合は、Codex GitHubリポジトリで最新のセキュリティドキュメントを確認してください。

主なセキュリティリスク

リスク説明重大度
プロンプトインジェクション悪意のあるWebコンテンツがCodexの動作を乗っ取る
データ漏洩コードやAPIキーが外部に送信される致命的
マルウェア混入信頼できないパッケージやスクリプトの実行
ライセンス違反制限付きライセンスのコードを無断使用

Web Search ≠ ネットワークアクセス

Codexの組み込みweb_searchツールは事前キャッシュされたインデックスを使用しており、network_access = true不要です。ドキュメントの検索だけが必要な場合、ネットワーク設定の変更は不要です。

network_access = trueが必要なのは、ライブのアウトバウンド接続(npm install、curl、実行時のAPI呼び出し)のみです。

📋 詳細な設定方法

方法1:Codex CLIコマンドライン設定

対象: CLIユーザー(本記事の大半の読者)

公式のconfig.tomlファイルまたはCLIフラグでネットワークアクセスを設定します。

永続設定(config.toml)— 推奨

~/.codex/config.tomlを作成または編集:

# workspace-writeサンドボックスモードでネットワークアクセスを有効化
[sandbox_workspace_write]
network_access = true

保存後、以降のすべてのcodex --sandbox workspace-writeセッションでネットワークアクセスが自動的に有効になります。

macOS: config.tomlがSeatbeltサンドボックスに無視される(GitHub Issue #10390)

macOSでは、config.tomlのnetwork_access = trueがSeatbeltサンドボックスによって静かに無視されますopenai/codex#10390)。

回避策: --sandbox danger-full-accessを使用してください:

codex --sandbox danger-full-access "npm install express"

Linux(Landlockサンドボックス)はconfig.tomlを正しく読み取るため、影響を受けません。

一時的な設定(CLIフラグ)

# -cフラグを使って単一セッションでネットワークアクセスを有効化(「ネットワークフラグ」)
codex --sandbox workspace-write \
  -c 'sandbox_workspace_write.network_access=true' \
  "npm install express"

# 現在のサンドボックス状態を確認
codex --sandbox workspace-write \
  -c 'sandbox_workspace_write.network_access=true' \
  "curl -I https://registry.npmjs.org"

WebとCLIの設定は別系統

Web(クラウド)環境: ChatGPTインターフェースの「Internet Access」設定を使用(以下の方法2)。

ローカルCLI: ここに示すconfig.tomlまたは-cフラグを使用。これらは別々の設定システムであり、一方を変更しても他方には影響しません。

方法2:Codexクラウド環境(ChatGPT Plus/Pro)

対象: Web上のCodexを使うChatGPT Plus/Proサブスクライバー

CLIとクラウドは別システム

Codexクラウド環境(Webインターフェース)とCodex CLI(ターミナル)は別々のシステムであり、設定の仕組みが異なります。一方の設定変更は他方に影響しません。このセクションではクラウド環境のみを説明します。

2025年6月以降、ChatGPT Plus/ProユーザーはEnvironment設定からネットワークアクセスを制御できます。

  1. Environment Settingsを開く
  2. ChatGPTでCodexセッションを開始
  3. 右上の設定アイコンをクリック
  4. 「Environment Settings」を選択

  5. Internet Accessトグル

Internet Access:
  - Off          # デフォルト: ネットワークアクセスなし
  - On           # アウトバウンド接続を有効化
  1. ドメインプリセット(Internet AccessがOnの場合)
Domain Preset:
  - None                 # 事前承認ドメインなし
  - Common dependencies  # npm、PyPI、GitHub等
  - All                  # 無制限(非推奨)

クラウド環境は2ステップモデルを採用しています:まずInternet Accessのオン/オフを切り替え、次にサンドボックスがアクセスできるホストを制御するドメインプリセットを選択します。

方法3:Docker/WSL環境での安全な設定

対象: DevOps / セキュリティを重視するチーム

最も安全なアプローチは隔離環境での実行です:

# Dockerfile
FROM node:22
WORKDIR /app

# Codex CLIのインストール
RUN npm install -g @openai/codex

# ネットワークポリシー設定
COPY config.toml /root/.codex/config.toml

CMD ["codex"]

未検証の環境変数

以下の環境変数(CODEX_SANDBOX_ENABLEDCODEX_NETWORK_MODE)は例として示していますが、2026年2月時点の公式Codex CLIドキュメントでは確認できませんでした。互換性を保証するにはconfig.tomlまたは-cフラグを使用してください。これらの変数に依存する場合は、まず環境でテストしてください。

# Docker起動スクリプト
docker build -t codex-secure .
docker run -it --network=bridge \
  --cap-drop=ALL \
  --security-opt=no-new-privileges \
  codex-secure

🆕 事前確認チェックリスト(v0.93.0+)

よくあるサポートパターンとして、codex re-connecting…バナーやVPN接続時のcurl失敗(ネットワーク有効化後でも)があります。v0.93.0(GPT-5.2-Codexデフォルト)以降、v0.102.0までで信頼性が大幅に改善されました。ネットワーク操作の前にこの事前確認チェックリストを実行してください:

チェックコマンド期待する出力
サンドボックス状態/statussandbox_mode: workspace-write + network_access: true
実ネットワーク疎通codex --sandbox workspace-write -c 'sandbox_workspace_write.network_access=true' "curl -I https://pypi.org/simple/"HTTP/2 200(またはエンドポイントのレスポンス)
監査証跡codex --full-auto --transcript analysis/20260217_network.loganalysis/配下にJSONL形式のトランスクリプトが保存

追加の疎通コマンド

# GitHub CLI認証 & API疎通(ネットワークフラグ付き)
codex --sandbox workspace-write \
      -c 'sandbox_workspace_write.network_access=true' \
      "gh auth status && gh api user"

# Python依存パッケージのドライラン(ダウンロードなし)
codex --sandbox workspace-write \
      -c 'sandbox_workspace_write.network_access=true' \
      "python -m pip install requests --dry-run"

# DNS / プロキシの健全性チェック
codex --sandbox workspace-write \
      -c 'sandbox_workspace_write.network_access=true' \
      "nslookup api.openai.com"
  • gh auth statusの正常な出力はLogged in to github.com as ...と表示されるはずです。
  • pip --dry-runWould install ...で終了し、TLSエラーがなければ成功です。
  • nslookupはVPN/プロキシ経由でも公式エンドポイントが正しく解決されることを確認します。

codex re-connecting…が続く場合は、通常ファイアウォールではなくSSEストリームが原因です。同じネットワーク有効プロファイルを維持したまま再接続ガイドに従ってセッションを再起動してください。

🛡️ セキュリティベストプラクティス

やるべきこと ✅

  1. 最小権限の原則
  2. 必要なドメインのみ許可
  3. GETメソッドから始めて段階的に拡大

  4. 環境の隔離

  5. 本番コードとは別の環境で実行
  6. WSL/Docker/VMの使用を推奨

  7. 監査ログの確認

    # トランスクリプトで監査証跡を残す
    codex --full-auto --transcript analysis/network_audit.jsonl "your command"
    # ~/.codex/log/ のログも確認
    

避けるべきこと ❌

  1. 本番環境でUnrestrictedモードを使用すること
  2. 機密情報を含むプロジェクトでネットワークを開放すること
  3. 未検証のドメインへのアクセスを許可すること

🔗 関連リソース

公式ドキュメント

関連Codex CLIガイド

トラブルシューティング

よくあるエラーメッセージとクイックフィックス

エラーメッセージ原因解決策
Network access is restrictedデフォルトのサンドボックスポリシーconfig.tomlにnetwork_access = trueを追加(この記事のポイント参照)
codex re-connecting...SSEストリームが中断再接続ガイドを確認
npm ERR! network timeoutネットワークアクセスが無効config.tomlまたはネットワークフラグでネットワークを有効化
curl: (6) Could not resolve hostサンドボックスでDNSがブロックネットワークを有効化 + プロキシ設定を確認
macOSでnetwork_access = trueを設定しても接続できないmacOS Seatbeltサンドボックスがconfig.tomlを無視(#10390--sandbox danger-full-accessを使用。上記のmacOS警告を参照

npmパッケージのインストール

# config.tomlが設定済みなら:
codex --sandbox workspace-write "npm install express axios dotenv"

# package.jsonからの一括インストール
codex --sandbox workspace-write "npm ci"

ステージング環境のAPIテスト

# config.tomlが設定済みの場合:
codex --sandbox workspace-write "npm run test:integration"

ドメインレベルの制限

ドメインレベルのホワイトリストについては、ChatGPTのWeb(クラウド)環境設定(方法2)を使用してください。CLIのnetwork_access設定はバイナリ(有効/無効)であり、ドメインごとのフィルタリングには対応していません。

設定変更後もネットワークが動作しない場合

# config.tomlの設定を確認
cat ~/.codex/config.toml

# 明示的なフラグでテスト
codex --sandbox workspace-write \
  -c 'sandbox_workspace_write.network_access=true' \
  "curl -I https://example.com"

# それでも失敗する場合はプロキシ/VPN設定を確認

特定のnpmパッケージだけインストールに失敗する場合

プライベートレジストリは認証設定が必要です:

# まず.npmrcを設定
echo "//registry.company.com/:_authToken=${NPM_TOKEN}" > .npmrc

# ネットワークアクセスを有効にして実行
codex --sandbox workspace-write "npm install @company/package"

GitHub Actionsの自動化でエラーが発生する場合

未検証の環境変数

以下の環境変数(CODEX_NETWORK_MODECODEX_ALLOWED_DOMAINSCODEX_SANDBOX_ENABLED)は概念的な例として示しています。2026年2月時点の公式Codex CLIドキュメントでは確認されていません。本番のCI/CDパイプラインで使用する前に、Codex CLIリポジトリでサポート状況を確認してください。

# .github/workflows/codex.yml(概念的な例 — 環境変数のサポートを要確認)
env:
  CODEX_NETWORK_MODE: limited
  CODEX_ALLOWED_DOMAINS: "registry.npmjs.org,github.com"
  CODEX_SANDBOX_ENABLED: true

クイックFAQ(v0.93.0+)

再接続後もネットワークアクセスのプロファイルが維持されているかどう確認する?

再接続バナーが表示された直後に/statusを実行してください。network_accessがfalseに戻っていた場合は、ネットワークフラグ付きで再起動し、--transcript ... --appendを使って最後のターンをリプレイして監査可能にします。v0.93.0以降、再接続時の安定性は大幅に改善されています。

GitHub + npmだけを許可する最も安全な方法は?

CLIではconfig.tomlnetwork_access = trueを設定してネットワークアクセスを有効化します。ドメインレベルのフィルタリング(GitHub + npmのみ)が必要な場合は、ChatGPTのWeb(クラウド)環境のInternet Access設定を使用してください。CLIのサンドボックスはバイナリのネットワーク制御のみ提供し、ドメインレベルのホワイトリストには対応していません。

ネットワーク有効化セッションのログを関係者に証明するには?

--transcript analysis/<date>_network.jsonl --append付きでCodexを起動し、/statusと最初のcurl/gh api成功出力を同じログに含めてください。

GPT-5.3-Codexはネットワークの信頼性を改善する?

GPT-5.2-Codex(2025年12月18日リリース、CLI v0.93.0+でデフォルト)ではイベントストリームが改善され、ネットワーク操作の処理が向上しました。GPT-5.3-Codex(2026年2月5日)とGPT-5.3-Codex-Spark(2026年2月12日)もこの改善を継続しています。Windowsユーザーは特にPowerShell解析とConPty統合の強化の恩恵を受けます。最適な結果を得るにはv0.102.0+にアップデートしてください。

まとめ

Codexのネットワーク制限は重要なセキュリティ機能です。解除する際は:

  1. リスクを理解する
  2. 最小限の権限から始める
  3. 段階的に拡大する

このアプローチにより、セキュリティを維持しながら必要な機能を実現できます。


💡 次のステップ: より高度な設定とワークフローについてはCodex CLIベストプラクティスをご覧ください。