2:59
Codex Desktop を使っていると、以下のような状況によく遭遇するのではないでしょうか。

毎回ほぼ必ず、5 回の再接続を試みた後にようやく応答が返ってきます。この 5 回の再接続は待ち時間が長すぎて、完全に時間の無駄です。
この原因は、Codex Desktop の新しいバージョンアップグレード(具体的なバージョンは不明)後に、デフォルトの接続方法が WebSocket プロトコルに変更されたことです。これが接続に失敗すると、ログに直接 WebSocket ハンドシェイクタイムアウトとして表示されます。
なぜこれが起こるのでしょうか?Codex Desktop はデスクトップアプリケーションであるため、ブラウザのようにシステムプロキシを自動的に継承しません。起動時に、プロキシを使用するために HTTP_PROXY や HTTPS_PROXY などの環境変数を明示的に読み取る必要があります。これらの変数が設定されていない場合、直接接続できると見なされ、長時間応答がなく再接続ループに陥ります。
macOS を例に
- ターミナルで次のコマンドを入力してプロキシ情報を確認します:
1scutil --proxy

上の画像は、http と https の両方のプロキシポートが 6152 であることを示しています。既存の ~/.codex/.env ファイルを手動で作成または編集し、プロキシ変数を書き込むことができます。
1HTTP_PROXY=http://127.0.0.1:61522HTTPS_PROXY=http://127.0.0.1:6152
~/.codex/.env を編集して保存した後、Codex Desktop を終了して再度開くと、この問題が解決します。
手動で行いたくない場合は、次のプロンプトを使用して Codex に送信することもできます:
1Codex Desktop が再接続を繰り返す問題を修正するのを手伝ってください。23現在使用しているマシンのプロキシポートとプロキシプロトコルを特定し、~/.codex/.env を作成または更新して、以下のプロキシ設定を書き込んでください。ポートはハードコードせず、実際のポートに置き換えてください。ファイルが既に存在する場合は、他の設定は保持してください。45HTTP_PROXY="http://127.0.0.1:<HTTP または混在ポート>"6HTTPS_PROXY="http://127.0.0.1:<HTTP または混在ポート>"78書き込み後、設定が正しいか確認し、Codex Desktop を再起動する方法を教えてください。
もちろん、私のワンクリック自動化スクリプト(macOS のみ)を試すこともできます:
1#!/bin/bash2# Detect macOS system proxy and update ~/.codex/.env34ENV_DIR="$HOME/.codex"5ENV_FILE="$ENV_DIR/.env"67# Read system proxy configuration8proxy_info=$(scutil --proxy)910http_enabled=$(echo "$proxy_info" | awk '/HTTPEnable/{print $3}')11http_host=$(echo "$proxy_info" | awk '/HTTPProxy/{print $3}')12http_port=$(echo "$proxy_info" | awk '/HTTPPort/{print $3}')1314https_enabled=$(echo "$proxy_info" | awk '/HTTPSEnable/{print $3}')15https_host=$(echo "$proxy_info" | awk '/HTTPSProxy/{print $3}')16https_port=$(echo "$proxy_info" | awk '/HTTPSPort/{print $3}')1718# Build proxy URLs19http_proxy=""20https_proxy=""2122if [[ "$http_enabled" == "1" && -n "$http_host" && -n "$http_port" ]]; then23 http_proxy="http://${http_host}:${http_port}"24fi2526if [[ "$https_enabled" == "1" && -n "$https_host" && -n "$https_port" ]]; then27 https_proxy="http://${https_host}:${https_port}"28fi2930# If neither HTTP nor HTTPS proxy is found31if [[ -z "$http_proxy" && -z "$https_proxy" ]]; then32 echo "❌ No system proxy detected; no proxy settings applied."33 exit 034fi3536# If HTTPS is not set separately, reuse HTTP proxy37if [[ -n "$http_proxy" && -z "$https_proxy" ]]; then38 https_proxy="$http_proxy"39fi4041echo "✅ System proxy detected:"42[[ -n "$http_proxy" ]] && echo " HTTP_PROXY=$http_proxy"43[[ -n "$https_proxy" ]] && echo " HTTPS_PROXY=$https_proxy"4445# Ensure directory exists46mkdir -p "$ENV_DIR"4748# If .env file doesn't exist, create it49if [[ ! -f "$ENV_FILE" ]]; then50 {51 [[ -n "$http_proxy" ]] && echo "HTTP_PROXY=$http_proxy"52 [[ -n "$https_proxy" ]] && echo "HTTPS_PROXY=$https_proxy"53 } > "$ENV_FILE"54 echo "📄 Created $ENV_FILE and wrote proxy configuration."55 exit 056fi5758# File exists, update or append59update_or_append() {60 local key="$1" value="$2"61 if grep -q "^${key}=" "$ENV_FILE"; then62 sed -i '' "s|^${key}=.*|${key}=${value}|" "$ENV_FILE"63 echo "🔄 Updated ${key}"64 else65 echo "${key}=${value}" >> "$ENV_FILE"66 echo "➕ Appended ${key}"67 fi68}6970[[ -n "$http_proxy" ]] && update_or_append "HTTP_PROXY" "$http_proxy"71[[ -n "$https_proxy" ]] && update_or_append "HTTPS_PROXY" "$https_proxy"7273echo "✅ $ENV_FILE update complete."
AI をすぐに始めたいけれど、何から手をつければいいかわからない?
AI Spark は、AI の基礎、ナレッジベース構築、ワークフローアプリケーション、主要な AI ツール、Obsidian、Codex、Skill、プロンプトの実践などをカバーする、無料の AI ナレッジベースをまとめています。
無料ナレッジベース:






