8月20日、Matthias Bastianが「OpenAI fixes Codex bug that deleted real user files without permission」と題した記事を公開した。AIエージェントが「自律的に動く」ことの価値が語られる一方で、その自律性が誤った方向に向かったとき、ユーザーが気づく前に実データが失われる——今回のOpenAI Codexのバグは、そのリスクを具体的な形で示した事例だ。削除されたのはユーザーの実ファイルであり、原因はモデルの意図的な行動ではなくバグによる誤操作だったが、それゆえに「AIエージェントを本番環境に近い領域で動かすとはどういうことか」を改めて問い直す事例として注目に値する。
OpenAI CodexとGPT-5.6 Solとは
まず文脈を整理しておく。OpenAI Codexは、OpenAIが提供するクラウドベースのAIコーディングエージェントで、コードの記述・実行・ファイル操作などを自律的に行う能力を持つ。単なるコード補完ツールではなく、ターミナルやファイルシステムに対して直接アクションを起こせる「エージェント型」の設計が特徴だ。
今回バグの原因となったGPT-5.6 Solは、このCodex上で利用できるモデルのひとつ。OpenAIのモデルラインナップにおいては、推論・コーディング用途に特化した系譜に位置する。CodexはGPT-4oなど複数のモデルを切り替えて利用できる構成になっており、GPT-5.6 Solはその中でもコーディングタスクへの適用を主眼に置いたモデルとして提供されている。
また、本文で後述する「フルアクセスモード」とは、Codexがサンドボックス(隔離された仮想環境)の外でファイルシステムやシェルコマンドに対して直接アクセスできる動作モードを指す。サンドボックス内であれば操作の影響範囲は限定されるが、フルアクセスモードでは実際のホームディレクトリや本番ファイルに対して操作が及ぶため、誤操作時の被害が大きくなる。
何が起きていたか
OpenAI Codexで利用できるGPT-5.6 Solが、実行中にユーザーの許可なくファイルを自律的に削除するという問題が複数のユーザーから報告されていた。
根本原因はシンプルかつ深刻だ。モデルが一時作業ファイルを片付けるつもりで削除コマンドを実行した際、一時フォルダの指定に$HOMEのようなシステム変数を誤用し、実際のホームディレクトリを削除対象として指定してしまうというものだ。本来は「tempフォルダを掃除する」意図のコマンドが、ユーザーの実データに向かって走っていた。
この誤操作が「AIによる意図的な行動」ではなくバグである点は強調しておく必要がある。モデルが悪意を持ってファイルを消したわけではなく、パス解決の誤りという古典的なプログラミングバグがAIエージェントの実行権限と組み合わさった結果として生じた問題だ。しかし、それゆえに問題の構造的な深刻さが際立つ。エージェントが外部環境に対してアクションを起こす設計——とりわけ「フルアクセスモード」——において、意図せぬ破壊的操作が発生するリスクは、バグの有無に関わらず常に存在する。
OpenAIが実施した修正内容
OpenAIはセキュリティアップデートとして、以下の複数の対策を実装した。
- 削除対象の事前検証:削除コマンドを実行する前に、対象が正しいパスかを確認するステップを追加
- 一時フォルダの新規作成:毎回クリーンな一時ディレクトリを作成することで、既存ディレクトリへの誤爆を防止
- システム変数の誤用禁止:
$HOMEなどの変数を一時フォルダ指定に使わないよう制限 - 危険な削除コマンドの厳格チェック:リスクの高い削除操作をより厳しい条件でフィルタリング
- フルアクセスモードの誤起動防止:意図せずフルアクセスモードに切り替わらないよう制御を強化
OpenAIはユーザーに対し、サンドボックスモードの利用を推奨し、アプリを常に最新の状態に保つよう呼びかけている。
AIエージェントの「本番環境リスク」として見るべき事例
今回の問題が注目されるのは、バグの内容よりもその構造的な意味合いにある。
AIエージェントのセキュリティ設計において基本原則とされるのが、最小権限の原則(Principle of Least Privilege)だ。これは「エージェントにはタスクの遂行に必要な最小限の権限のみを与える」という考え方で、セキュリティ設計の基礎として広く知られる。今回のケースでは、フルアクセスモードでホームディレクトリへの書き込み・削除権限を持ったエージェントが、誤ったパスに対してその権限を行使した。最小権限原則に従い、削除操作の対象を一時ディレクトリに厳格に制限していれば、被害を防げた可能性がある。
類似した問題は他のAIエージェントでも報告されている。たとえば自律型エージェントが外部APIやファイルシステムを操作するシナリオでは、意図しない副作用(サイドエフェクト)が生じやすいことが研究者・開発者コミュニティで繰り返し指摘されている。AIエージェントのサンドボックス設計については、OWASP Top 10 for LLM ApplicationsでもInsecure Plugin Design(安全でないプラグイン設計)として言及されており、エージェントへの権限付与の在り方は業界横断的な課題となっている。
AIエージェントは「自律的に動く」ことが価値とされている一方で、その自律性が誤った方向に向かったとき、人間が気づく前にデータが失われる。今回は削除コマンドという比較的わかりやすいアクションだったが、エージェントが本番環境のファイルシステム、データベース、クラウドリソースに対して同様の誤操作を行うリスクは、今後のAIエージェント開発において避けて通れない論点だ。
OpenAIが今回の修正で実装した「実行前の対象検証」「サンドボックス優先」「システム変数の誤用禁止」の方針は、AIエージェントを本番環境に近い領域で動かす際の基本的なガードレールとして、他のエージェント開発者にとっても参考になる。自律エージェントを設計・運用する立場にある開発者は、権限設計とサンドボックス戦略を改めて見直す契機にしてほしい。
詳細はOpenAI fixes Codex bug that deleted real user files without permissionを参照していただきたい。