Codex MultiAgentV2 暗号化と監査トレイルの喪失

Codex MultiAgentV2 暗号化と監査トレイルの喪失

MultiAgentV2 メッセージの暗号化によるローカル監査性の喪失

Codex は MultiAgentV2 においてサブエージェントのプロンプトに暗号化を導入しました。これにより、ローカルのロールアウト履歴、トレース削減、およびデバッグ・サーフェスから、人間が読めるタスクおよびメッセージのテキストが事実上削除されます。この変更は、モデル間通信のプライバシー強化策として機能しますが、親側ログにおいてプレーンテキストの指示を暗号文に置き換えることで、監査性の退行を引き起こします。

この問題は、PR #26210 のマージ後(post-0.137.0 以降)の Codex CLI バージョンに影響し、特に MultiAgentV2 フレームワーク内の spawn_agentsend_message、および followup_task 関数に影響を与えます。

技術的な根本原因:不透明なメッセージ・ペイロード

この退行は、InterAgentCommunication::new_encrypted() の実装に起因します。これは、意図的に content フィールドを空文字列として初期化し、ペイロードを encrypted_content フィールドのみに保存します。

システムが to_model_input_item() を介してこれらの通信をモデル入力アイテムに変換する際、encrypted_content の存在を確認します。存在する場合、AgentMessageInputContent::EncryptedContent アイテムを発行します。その結果、受信モデルはサーバー側で復号するための暗号文を受け取りますが、これらと同じアイテムに依存するローカル履歴は、暗号化された文字列のみを記録します。

その結果、開発者は以下のような重要なデバッグ質問に容易に答えられなくなります:

  • spawn_agent 呼び出し中に、子エージェントにどの特定のタスクが割り当てられたのか?
  • サブエージェントに送信された正確なメッセージは何か?
  • ロールアウト後のレビュー中に、なぜ特定のチャイルドスレッドが作成されたのか?

提案される修正案:デュアル・コンテンツ・コントラクト

暗号化された配信経路を損なうことなく監査性を回復するために、「デュアル・コンテンツ(二重コンテンツ)」アプローチが提案されています。これには、モデル配信用の暗号化ペイロードを維持しつつ、ローカル監査用に別途、非暗号化フィールドを導入することが含まれます。

実装仕様

  1. 必須のプレーンテキスト・フィールド: v2 通信ツールに必須のプレーンテキスト・コンパニオン・フィールドを追加する(例:spawn_agentsend_message、および followup_task 用の task_message)。
  2. バリデーション: ログが有用であり続けることを確実にするため、ハンドラーの境界で空のプレーンテキスト監査値を拒否する。
  3. デュアル構成: InterAgentCommunication を、encrypted_content(受信モデル用)と content(ローカル監査用コピー)の両方で構成する。
  4. 配信の維持: to_model_input_item() を変更せず、受信モデルが暗号文のみを受け取り続けるようにする。
  5. 監査の永続化: プレーンテキスト・コンパニオンが、親ツール呼び出し、ロールアウト、および構造化トレース・エッジに永続化されることを確実にする。
  6. 相関付け: ツール呼び出しを、配信された子アイテムと一致させるために、プレーンテキストの一致ではなく、暗号文または一意の ID を使用する。

コミュニティの視点と影響

暗号化されたサブエージェント・プロンプトの導入は、現代の AI オーケストレーターの「ブラックボックス」的な性質に関する重要な議論を巻き起こしています。

プライバシー vs. 透明性

一部のユーザーは、これを競合モデルのトレーニング用にリクエストをプロキシすることや、独自の推論プロセスを保護するための必要なステップであると考えています。あるユーザーは、Claude が「thinking」暗号文をどのように扱うかに例えました:

"Presumably the(おそらく) thinking は、独自の所有物であるか、あるいは、より可能性が高いことには、恥ずかしい、あるいは機密情報を漏洩させてしまうものだ。"

セキュリティと安全性の懸念

他のユーザーは、サブエージェントへの指示への可視性を見失うことが、安全性のリスクを生み出すと主張しています。GPT 5.6 サブエージェントがユーザーのホームディレクトリを削除したとされる報告されたインシデントに関して、サブエージェントの意図への可視性が欠如していたことが失敗に寄与したのではないか、という点が提起されました。

戦略的ロックイン

これらの変更は、エージェントの内部推論とオーケストレーションをユーザーに対して不透明にすることで、ベンダー・ロックインを強めるように設計されているという、支配的な見解があります。これは、実質的に、ユーザーが実行プロセスへの可視性なしにデータと支払いのみを提供する「ブラックボックス・アプライアンス」モデルへと業界を移行させるものです。

Sources