ホームへ戻る

AI coding tools

Codex CLI 0.151.0、MCP結果のインターセプトを開放——拡張機能がモデルによる読み取り前にツール出力を書き換え可能に

新バージョンでは`on_mcp_tool_result`ライフサイクルインターフェースが追加され、拡張機能がMCPの成功結果とエラー結果を検査または置換できるようになった。これはデータマスキングと出力正規化のための新たな制御ポイントを提供する一方、拡張機能を監査が必要なエージェントの信頼境界へと押し上げる。

European Commission - Photographer: Aurore Martignoni · CC BY 4.0 · Image source
zh-Hant

OpenAIは8月29日、Codex CLI 0.151.0をリリースした。最も重要なアーキテクチャ上の変更はインターフェース機能ではなく、MCPツールの結果がモデルへ送られる前のデータパスに、拡張機能が介入できるようになったことだ。新たに追加された`ToolLifecycleContributor::on_mcp_tool_result`は、実行済みツールのコンテキスト、書き換え後の引数、拡張機能のデータストア、および変更可能なサーバー結果を受け取れる。処理対象には、正常な戻り値と構造化エラーの両方が含まれる。

このhookは、MCP completionイベントの発行およびモデル入力の準備より前に実行される。テストでは、元の結果を維持すること、結果全体を置換すること、エラーを処理することが可能だと示されている。直接的なMCP呼び出しとCode Modeの両方が対象となる。企業向けエージェントプラットフォームにとって、これは機密フィールドのマスキング、旧バージョンのツール出力の変換、結果の要約、ポリシータグの付与、テスト用データの注入を、個々のMCP serverを変更せずに実施できることを意味する。しかし、モデルが認識する事実を書き換えられる拡張機能は、エラーの隠蔽、証拠の改ざん、命令の注入にも利用され得る。導入時にはバージョンを固定し、インストール元を制限するとともに、監査のために未加工の結果と処理後の結果を別々に保存すべきだ。

0.151.0では、権限状態に関する複数の問題も修正された。過去の会話を復元した際に元のpermission profileが保持されるようになり、`/cd`で以前のsandboxモードを安全にマッピングできない場合は、操作を即座に拒否する。リモート実行でも、executorの実際のホームディレクトリ、OS、パスセマンティクスが使用されるようになった。Guardianの古い分類は権限変更後に再利用できなくなり、モデルの切り替えまたはfallback時におけるツール一覧とreasoning effortも修正された。これらの更新は、エージェントのセキュリティでは最終的なshellコマンドだけを検査すればよいわけではなく、ツール結果、モデルルーティング、作業ディレクトリ、キャッシュされた承認が、すべて同じ認可チェーンに属することを示している。今後注目すべき点は、拡張機能がより細粒度な権限宣言を持つようになるか、また機密情報を露出させることなく、未加工のMCP結果から標準化された監査ログを作成できるようになるかどうかだ。

出典

  1. Release 0.151.0 · openai/codex
  2. Codex 0.151.0 changelog