Codex CLIを「会話中心で使いたい」と考え、私はまずAGENTS.mdに方針を書きました。
コード作成などの必要がないときには「不用意に実行しない」ことを軸に置きたかったからです。
1. 対話用途という前提をAGENTS.mdに書く
最初にやったのは、作業ディレクトリの AGENTS.md に「対話用途」「破壊的変更を避ける」「セキュリティ配慮」といった方針を書いておくことでした。
AGENTS.mdは“この場所でのルール”に近いので、ここに書いておけば会話のたびに前提が共有されます1。
私は「実務で運用するメモ帳」に近い感覚で使いました。
具体的には次のような内容を入れました。
- この環境は対話・相談用途を主目的とする
- 明確な依頼がない限り、ファイル編集やコマンド実行はしない
- 破壊的変更は望まない。必要なら事前確認
- 権限や外部アクセスは最小限にする
あくまで「守りたい方針」を短く書くのがコツだと思います。
長文にすると読まれにくいので、私は4行に抑えました。
ちなみに、このAGENTS.mdは、フォルダごとにあります。
ほかの人が管理するフォルダ(外部レポジトリなど)で、codexを利用するときには、そのAGENTS.mdが読み込まれるので注意が必要です2。
2. sandbox_mode と approval_policy の考え方
もう一段踏み込むと、CLIには「サンドボックス」と「承認ポリシー」という仕組みがあります3。
これは車の例で言うと、サンドボックスが“道路の制限”、承認ポリシーが“運転者の確認”みたいなものです。
- sandbox_mode=read-only:
読み取り専用。ファイルの書き込みや実行はできない - approval_policy=on-request:
何か実行が必要になると承認を求められる
この組み合わせだと、日常的な対話は安全に進みます4。
もちろん、逆に言えば、承認を出してしまえば変更が起こる可能性はゼロではありません。
3. うまくいった点と課題
うまくいった点は、会話の安心感です。
「勝手に動かない」と分かっていると、質問が素直になります。
一方で課題もありました。
read-onlyのままだと、手元のファイルを更新してほしい場面で一度切り替えが必要になります5。
ここは「便利さと安全性のトレードオフ」だと捉えています。
4. まとめではなく、今の結論
私は「AGENTS.mdに対話用途を明記し、read-onlyを基本にする」という運用が、安心と実用性のバランスを取りやすいと感じました。
便利さを求めて強い権限を渡すよりも、必要なときだけ一段階上げる方が、結果的に使い続けられる気がします。
ここまでの設定は、派手な効果よりも“事故を減らす”ための地味な工夫です。
それでも、地味な仕組みほど日常では頼りになる、と私は思っています。
- AGENTS.mdは、AI CLIツールが自動的に読み込む設定ファイルの標準規格です。OpenAI Codex CLIを含む多くのツールがこの形式をサポートしており、プロジェクトのルートディレクトリに配置することで、AIエージェントに対してプロジェクト固有の指示を与えることができます。 – Custom instructions with AGENTS.md
- 2025年12月に、Codex CLIにコマンドインジェクション脆弱性(CVE-2025-61260)が発見されました。この脆弱性は、プロジェクトローカルの設定ファイルを通じて、悪意のあるコマンドが自動実行される可能性があるものです。信頼できないリポジトリでCodex CLIを実行する際は特に注意が必要です。 – OpenAI Codex CLI Command Injection Vulnerability
- OpenAI Codex CLIの公式ドキュメントによれば、sandbox_modeは「read-only」「workspace-write」「danger-full-access」の3つのモードがあり、approval_policyは「untrusted」「on-request」「on-failure」「never」の4つのオプションから選択できます。これらは~/.codex/config.tomlファイルで設定します。 – Basic Configuration
- 公式ドキュメントでは、read-onlyモードがデフォルトの安全な設定とされており、approval_policy=on-requestは「モデルが必要と判断したときに承認を求める」動作をします。より厳格な設定としてapproval_policy=untrusted(安全なコマンドのみ自動実行)も選択可能です。 – Security
- Codex CLIでは、セッション中に/approvalsコマンドを使用することで承認モードを動的に切り替えることができます。また、–full-autoフラグを使用すると、workspace-writeモードとon-request承認ポリシーを同時に有効化できるため、よりスムーズな操作が可能です。 – Codex CLI features