ChatGPT Codex Bridge
ChatGPT Codex Bridge
简体中文 | Security | Contributing
ローカルファーストのMCPブリッジ。ChatGPTが登録済みのCodexプロジェクトを検査し、Codexセッション履歴を読み取り、確認済みのタスクをローカルのCodex CLIにディスパッチできるようにします。
[!IMPORTANT] これは独立したコミュニティプロジェクトです。OpenAIの公式製品ではなく、OpenAIとは提携しておらず、OpenAIによる推奨も受けていません。ChatGPT、Codex、OpenAIはそれぞれの権利所有者の商標です。
機能
ホームディレクトリ全体へのアクセスを許可することなく、Codex Desktopに登録済みのプロジェクトを検出します。
分析と計画をCodexの読み取り専用サンドボックス内で実行します。
ワークスペースへの書き込み前に、短時間有効な使い捨て確認トークンを要求します。
カーソルページネーションと編集(redaction)付きで、表示可能なCodexセッションを一覧表示・読み取りします。
数ギガバイトの履歴をメモリに読み込むことなく、境界付きのプロジェクト履歴コンテキストを構築します。
ローカルのCodexアプリサーバープロトコルを通じて、永続的なCodex Desktopセッションを作成・継続します。
ChatGPTが提供するコンテキストを、シークレット検出付きの信頼できない参照テキストとしてCodexに渡します。
バックグラウンドジョブを使用するため、長時間実行されるCodexタスクがMCPトンネルリクエストを開いたままにしません。
このブリッジは任意のシェルツールを公開せず、パブリックポートで待ち受けることもありません。リモートアクセスは公式のOpenAI Secure MCP Tunnel clientによって提供されます。
アーキテクチャ
flowchart LR
A[ChatGPT] -->|MCP connector| B[OpenAI Secure MCP Tunnel]
B -->|outbound tunnel| C[tunnel-client on your machine]
C -->|stdio MCP| D[ChatGPT Codex Bridge]
D -->|sandboxed commands| E[Codex CLI]
D -->|read-only indexes| F[Codex projects and sessions]
D -. optional local IPC .-> G[Codex Desktop sidebar refresh]オプションのサイドバー更新パスは、非公開でサポート対象外のCodex Desktop拡張機能に依存しており、このリポジトリには含まれていません。コアブリッジはこれなしで動作します。新しく作成された永続セッションは、サイドバーに表示される前にCodex Desktopの再起動が必要な場合があります。
要件
Python 3.11+ を搭載したmacOSまたはLinux
動作する
codexCLIのインストールとサインイン自動プロジェクト検出とセッション履歴機能のためのCodex Desktop
ドキュメント記載のTunnelインストールパスのためのHomebrew
Secure MCP TunnelsへのOpenAI組織アクセス
このプロジェクトは現在macOSでテストされています。オプションのDesktop通知パスがUnixソケットを使用するため、Windowsはサポートされていません。
クイックスタート
git clone https://github.com/AaAndrew233/chatgpt-codex-bridge.git
cd chatgpt-codex-bridge
./scripts/bootstrap.shbootstrap.shはローカルの仮想環境を作成し、レビュー済みの依存関係ロックをインストールし、追跡対象外のconfig.jsonと.mcp.jsonファイルを生成します。既存の設定を上書きすることはありません。
config.jsonを開き、認証ソースを1つ選択します:
{
"codex_command": "codex",
"model": null,
"codex_project_catalog": "~/.codex/.codex-global-state.json",
"allowed_roots": []
}modelをnullのままにして、現在のCodex設定を継承します。allowed_rootsを空のままにして、Codex Desktopに登録されているプロジェクトのみを使用します。自動検出が利用できない場合にのみ、狭いプロジェクトディレクトリを
allowed_rootsに追加します。/やホームディレクトリを許可しないでください。ブリッジは両方を拒否します。
ローカルチェックを実行します:
./scripts/check_public_release.py
.venv/bin/python -m unittest discover -s tests -vSecure MCP Tunnel経由で接続
公式クライアントをインストールします:
brew install openai/tools/tunnel-client
tunnel-client --version
tunnel-client help quickstartランタイムキーをこのリポジトリの外のファイルに保存し、その権限を制限します:
chmod 600 /ABSOLUTE/PATH/TO/runtime-key管理対象のバックグラウンドランタイムを作成します。すべてのプレースホルダー値を置き換えてください:
tunnel-client runtimes connect \
--alias codex-bridge \
--profile codex-bridge \
--tunnel-id '<YOUR_TUNNEL_ID>' \
--runtime-api-key 'file:/ABSOLUTE/PATH/TO/runtime-key' \
--mcp-command '/ABSOLUTE/PATH/TO/chatgpt-codex-bridge/scripts/run_server.sh'管理対象ランタイムが実行中で、正常で、準備完了であることを確認します:
tunnel-client runtimes status codex-bridge --json次に、ChatGPTコネクタ設定でコネクタを作成または更新します。組織のロール、トンネルID、ランタイムキー、現在のコマンドについては、公式のTunnelオンボーディングガイドが信頼できる情報源です: openai/tunnel-client/docs/onboarding.md
長時間実行されるランタイムに管理者キーを使用しないでください。ランタイムキー、トンネルID、生成されたプロファイル、config.json、.mcp.jsonをコミットしないでください。
ChatGPTでの最初のテスト
コネクタを有効にして新しいChatGPT会話を開始し、次のように尋ねます:
Call codex_status. Show only whether the bridge is healthy, the available tool names,
and the registered project names. Do not modify files.次に、読み取り専用タスクをテストします:
Use codex_analyze on <PROJECT_PATH> to summarize the project structure and identify
the three highest-risk areas. Poll the job until it finishes and retrieve every output page.
Do not modify files.書き込みの場合、ChatGPTは最初にcodex_prepare_applyを呼び出し、正確な計画を表示し、あなたの明示的な確認を得て、その後にのみ返されたトークンを使用してcodex_applyを呼び出す必要があります。
MCPツール
ツール | 目的 | 書き込み確認 |
| ヘルス、機能、プロジェクト、ジョブ、互換性のスナップショット | なし |
| 承認済みのCodexプロジェクトを一覧表示 | なし |
| 境界付き・ページネーション付きのプロジェクト履歴コンテキストを構築 | なし |
| 読み取り専用のCodexタスクを送信 | なし |
| 計画のみのCodexタスクを送信 | なし |
| 1つの正確な書き込みリクエスト用の短時間有効なトークンを発行 | なし |
| ワークスペース書き込みのCodexタスクを送信 | あり |
| バックグラウンドジョブをポーリング | なし |
| 出力ページネーション付きで完了した結果を読み取り | なし |
| キュー済みまたは実行中のジョブをキャンセル | なし |
| ページネーション付きで表示可能なCodexセッションを一覧表示 | なし |
| 編集(redaction)付きで表示可能なユーザーおよびアシスタントメッセージを読み取り | なし |
| 永続的なCodex Desktopセッションを作成 | 書き込みモードのみ |
| 永続セッションを継続 | 書き込みモードのみ |
| 明示的なChatGPTコンテキストでセッションを作成 | 書き込みモードのみ |
セキュリティモデル
信頼境界は意図的に狭く設定されています:
プロジェクトアクセスは、検証済みのCodexプロジェクトルートまたは明示的な狭いルートに制限されます。
.ssh、.aws、.gnupg、.kube、.config、Libraryなどの機密ディレクトリは、自動検出中に拒否されます。Codexサブプロセスは最小限の環境を受け取り、明示的なサンドボックスモードで実行されます。
書き込みトークンは期限切れになり、使い捨てであり、正確なプロジェクトとリクエストにバインドされます。
セッション出力はユーザー表示メッセージにフィルタリングされ、マシンから出る前に編集(redact)されます。
リクエスト、出力、スキャン、並行性、保持、タイムアウトの制限は境界付きです。
ChatGPTコンテキストは信頼できない入力として扱われ、ローカルポリシーを上書きできません。
ブリッジをチームに公開する前にdocs/security-model.mdをお読みください。脆弱性レポートはSECURITY.mdに従ってください。
運用上の制限
デフォルトの制限はconfig.example.jsonに文書化され、起動時に適用されます。重要なデフォルトには、2つの同時ジョブ、30分の完了ジョブ保持、120,000文字のリクエスト上限、ページネーション付き100,000文字のジョブ出力、プロジェクト履歴の境界付きストリーミングスキャンが含まれます。
scan_completeは、設定されたソーススキャンが完了したかどうかを示します。context_completeは、スキャンされたすべてのテキストが返されたコンテキスト予算に収まったかどうかを別途示します。スキャンの完了は、無制限のエクスポートと同じではありません。
開発
./scripts/bootstrap.sh
.venv/bin/python -m unittest discover -s tests -v
.venv/bin/python -m compileall -q \
bridge_core.py conversation_catalog.py desktop_assignment.py \
desktop_sessions.py project_context.py server.py貢献ルールについてはCONTRIBUTING.mdを、モジュール境界についてはdocs/architecture.mdを参照してください。
ライセンス
Apache License 2.0。LICENSEを参照してください。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage
Give AI agents secure access to ZERNO project briefs, tasks, and context over remote MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AaAndrew233/chatgpt-codex-bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server