01 AGENTS.MD
AGENTS.md(vs CLAUDE.md)
基本
プロジェクトの「約束ごと」を書いておく指示ファイル。会話のはじめにCodexが読み込みます。Claude CodeのCLAUDE.mdにあたるもので、名前と置き場所がちがうだけ、と考えると分かりやすいです。
たとえるなら新しいスタッフに渡すお店のルールブック。毎回口で説明する代わりに、紙に書いて渡しておけば、来るたびに読んでから働いてくれます。
関連コマンド/initAGENTS.mdconfig.toml
① やさしい定義
AGENTS.md は、プロジェクトのフォルダに置いておく「指示書」です。Codexは毎回の会話のはじめにこれを読むので、「うちのルール」「テストの回し方」などを書いておくと、何度も説明しなくてすみます。Claude Code の CLAUDE.md と同じ役割で、どちらも良いしくみ。中身は Markdown(=見出しや箇条書きの書ける文章)です。動作の細かい設定を書く ~/.codex/config.toml(=TOML形式の設定ファイル)とは別物なので、混同しないのがコツです。
② たとえ話
新しく入ったスタッフに渡す「お店のルールブック」です。新人が来るたびに全部を口で説明するのは大変なので、「うちのやり方はこれ」「困ったらここを見てね」を1冊にまとめて渡しておく。Codexは働き始める前に必ずそれを読んでくれます。「同じ説明をもう一度することになりそう」な内容を書くのが向いています。
③ よく使うコマンド
/init対話中に打つと、コードを見て AGENTS.md のたたき台を作ってくれる
AGENTS.mdプロジェクト直下に置く指示ファイル本体。手で書き足してもOK
~/.codex/config.tomlこちらは「設定」ファイル(TOML)。指示ではなく動作の既定を決める別物
④ いつ使うか
同じ説明を2回したら、書き足すサインです。プロジェクト直下に置けばチームで共有でき、ホーム(~/.codex/AGENTS.md)に置けば自分の全プロジェクト共通のメモになります。ただし太らせすぎ注意。「この行を消したらCodexが間違える?」の答えが「いいえ」なら、その行は削って身軽にしておくと読み込みも軽くなります。
⑤ ミニ実例
こう頼む:プロジェクトのフォルダで /init と打ち、できた AGENTS.md に「テストは npm test で実行する」と一行足す。
こうなる:次の会話からは何も言わなくても、Codexが自動で npm test を使ってくれるようになります。
02 APPROVAL POLICY
承認ポリシー
安全
Codexが操作をする前に「やっていい?」とどれくらい確認するかの設定。on-request(必要なとき確認)/ never(聞かない)から選びます。
たとえるなら助手席からの声かけの多さ。慣れるまでは一つずつ「これ曲がっていい?」と確認、慣れたら任せる範囲を広げる、というイメージです。
関連コマンド-a on-request/permissions/approve
① やさしい定義
承認ポリシーは、Codexがファイル編集やコマンド実行をする前に、あなたに「これ、やっていいですか?」と確認する度合いの設定です。on-request(必要なときに確認)と never(確認しない=人が見ていない自動実行向け)の2つが基本。以前あった untrusted は廃止されたので、慎重に進めたいときは承認を on-request にしたうえで、サンドボックスを read-only(読むだけ)にします。あなたがOKを出すまで実行されないのが、安心して任せられる土台になります。
② たとえ話
車の運転で、助手席の人にどれだけ声をかけるかに似ています。教習所モード(毎回確認)は安全だけど少し手間。慣れてきたら確認の回数を減らして、任せる範囲を広げていく。信頼と場面に合わせて「確認の細かさ」を選ぶのがコツで、はじめのうちは on-request で十分です。
③ よく使うコマンド
codex -a on-request起動時に承認の度合いを指定(-a は --ask-for-approval の短い形)
/permissions対話中に今の権限を確認・調整。以前の /approvals は現在これに名称変更
/approveその場で出てきた操作を承認する
approval_policy = "on-request"config.toml に既定を書く。値は on-request / never(untrusted は廃止)
④ いつ使うか
ふだんの対話は on-request が安心です。人が見ていないCIやスクリプトでは never(聞かない)にしますが、その代わりサンドボックスで「触れる範囲」を狭めてバランスを取ります。なお、かつてあった on-failure は現在は非推奨なので、on-request か never を選ぶのがおすすめです。
⑤ ミニ実例
こう頼む:codex -a on-request で起動して作業を任せる。
こうなる:ファイルを書き換える前などに「これ実行していいですか?」と一度たずねてくれるので、内容を見て納得してから進められます。
03 SANDBOX
サンドボックス
安全
Codexが触れてよい範囲を制限する「安全な箱」。read-only(読むだけ)/ workspace-write(作業フォルダだけ書き込みOK)/ danger-full-access(制限なし=危険)から選びます。
たとえるなら工作をするときの作業マット。「このマットの上だけでやってね」と決めておけば、机全体やほかの部屋を汚さずにすみます。
関連コマンド-s read-only-s workspace-writesandbox_mode
① やさしい定義
サンドボックス(=AIが触れる範囲を制限する安全な箱)は、Codexが「どこまで触れてよいか」を決めるしくみです。read-only(読むだけ・何も書き換えない)→ workspace-write(今の作業フォルダの中だけ書き込みOK)→ danger-full-access(制限なし・パソコン全体に手が届く=危険)の3段階。承認ポリシーが「聞く度合い」なのに対し、こちらは「触れる範囲」を決める、別の軸です。
② たとえ話
工作やお菓子づくりのときに敷く「作業マット」です。マットの上だけで作業してね、と決めておけば、うっかりしても机全体やほかの部屋までは汚れません。read-only は「見るだけで触らない」見学モード、workspace-write は「マットの内側なら自由」モード、というイメージです。
③ よく使うコマンド
codex -s read-only読むだけモードで起動(-s は --sandbox の短い形)
codex -s workspace-write作業フォルダ内だけ書き込みを許可
sandbox_mode = "workspace-write"config.toml に既定を書く
[sandbox_workspace_write] network_access = true書き込みモード中のネット接続の可否を切り替える
codex sandbox -- <コマンド>サンドボックスの中で試しにコマンドを走らせる
④ いつ使うか
まず全体像を知りたい・下調べだけしたいときは read-only。実際に直してもらうなら workspace-write。danger-full-access は、こわれても困らない隔離された環境(=ほかと切り離した使い捨ての作業場所)でだけにしておくのが安心です。「まず読むだけで探索、必要になったら書き込み」の順が、失敗しにくい流れです。
⑤ ミニ実例
こう頼む:codex -s read-only で起動して「このリポジトリの構造を説明して」とお願い。
こうなる:コードを読んで説明はしてくれますが、ファイルは書き換えられないので、安心して全体像を把握できます。
04 APPROVAL × SANDBOX
承認×サンドボックスの併せ技
安全
「聞く度合い(承認)」と「触れる範囲(サンドボックス)」は別々の設定。この2つを組み合わせて、安全さと自動さのちょうどいいバランスを作ります。
たとえるなら音量と明るさの2つのつまみ。別々に回せるから、場面に合わせて「静かで明るい」「大きくて暗め」など細かく調整できます。
関連コマンド-a-s-s workspace-write--yolo⚠
① やさしい定義
承認ポリシーとサンドボックスは、それぞれ独立した設定です。承認は「どれくらい確認するか」、サンドボックスは「どこまで触れるか」。この2つをかけ合わせると、たとえば「聞かない(never)× 読むだけ(read-only)」=勝手にどんどん進むけれど何も壊せない、といった安全な自動化ができます。片方だけでなく、2つセットで考えるのがポイントです。
② たとえ話
オーディオの「音量」と「明るさ」のつまみです。片方だけ回してもしっくりこないことがありますが、2つを別々に調整できるからこそ、部屋の雰囲気にぴったり合わせられます。Codexも「確認の細かさ」と「行動できる範囲」を別々に回して、その日の作業に合う設定を作ります。
③ よく使うコマンド
codex -a on-request -s workspace-write承認とサンドボックスを同時に指定して起動
codex exec --sandbox workspace-write "…"exec(非対話)で、作業フォルダ内だけ書き込みを許して進める。以前の --full-auto は Codex 0.147.0 で削除され、この書き方に置き換わりました
--dangerously-bypass-approvals-and-sandbox別名 --yolo。承認もサンドボックスも両方外す。隔離環境だけで慎重に⚠
④ いつ使うか
対話で安全に進めたいときは「on-request × workspace-write」。CIなどで自動化したいときは「never × read-only(または workspace-write)」のように、聞かない代わりに触れる範囲を狭めます。--yolo のように両方外す設定は、こわれても困らない隔離環境でだけ。便利に見えても、安全のつまみを2つ同時に外すのは慎重に、が合言葉です。
⑤ ミニ実例
こう頼む:下調べだけ自動でしてほしいので codex exec -a never -s read-only "依存関係を調べて表にして" と実行。
こうなる:確認なしでどんどん調べてくれますが、読むだけなので何も壊れません。安心して席を外せます。