Codex 入門 第5回
AGENTS.md で Codex にルールを伝える(/init)

この記事でわかること
- AGENTS.md の役割と、Codex が読み込む順番
- /init でひな形を作り、日本語で書いてもらう手順
- 読み込まれたかを /status で確かめる方法
確認した環境: Codex CLI 0.162.1(GPT-6.1-Sol・API キーで利用)/ 撮影は Linux のターミナル / 2026年10月11日に確認
AGENTS.md は、Codex が作業の前に読む指示書のファイルです。プロジェクトの説明や守ってほしい決まりを書いておけば、依頼のたびに同じ説明をしなくて済みます。この記事では、/init でひな形を作り、日本語で書いてもらうまでを、編集部の検証環境の画面で説明します。
AGENTS.md とは
AGENTS.md は、Markdown(# で見出し、- で箇条書きを書く書き方)で書くテキストのファイルです。Codex は作業を始める前にこのファイルを読み、書かれた指示を作業に生かします。
置き場所は 2 つあり、効く範囲が違います。
| 置き場所 | 効く範囲 | 公式の例に書かれている決まり |
|---|---|---|
~/.codex/AGENTS.md |
すべてのプロジェクト | JavaScript のファイルを変えたらテストを実行する、依存パッケージは pnpm で入れる など |
プロジェクトのフォルダの AGENTS.md |
そのプロジェクトだけ | プルリクエストを出す前に npm run lint を実行する など |
~ は自分のホームフォルダのことです。~/.codex は Codex のホーム(設定などを置くフォルダ)で、環境変数 CODEX_HOME で場所を変えられます。
読み込まれる順番

Codex は、次の順番で AGENTS.md を探します。
- 全体:
~/.codex/AGENTS.md - プロジェクト: プロジェクトのいちばん上のフォルダ(ふつうは Git のルート)から、今いるフォルダまで、1 つずつ下りながら探す
見つかったものは、順につなげて読みます。今いるフォルダに近いファイルほどあとに来るので、そちらの指示が優先されます。Git(ファイルの変更の履歴を残す仕組み)のルートが見つからないときは、今いるフォルダだけを見ます。
1 つのフォルダの中では AGENTS.override.md → AGENTS.md の順に探し、先に見つかった 1 つだけを使います。空のファイルは飛ばし、合計が 32 KiB(既定)に達したところで読むのをやめます。
/init で AGENTS.md を作る
/init は、今いるフォルダに AGENTS.md のひな形を作るコマンドです。編集部では、家計簿の CSV を集計する Python のスクリプトのフォルダ(~/kakeibo)で試しました。第 4 回で権限を「Read Only」に切り替えた会話の続きです。
-
AGENTS.md を置きたいフォルダで、/init と入力する
Codex の入力欄に
/initと打つと、①に「create an AGENTS.md file with instructions for Codex」(Codex 向けの指示を書いた AGENTS.md を作る)という説明が出ます。②の入力欄が/initになっていることを確かめて、Enter を押します。
/init と打ったところ。① コマンドの説明 ② 入力欄撮影・作図: 編集部 -
Codex がフォルダの中を調べるのを待つ
/init を実行すると、AGENTS.md を作るための依頼文(英語)が自動で送られます。Codex は、AGENTS.md がもうあるかを確かめてから、ファイルの一覧や Git の履歴を調べて、中身を書きます。
-
書き込みの確認が出たら、中身を見て選ぶ
編集部の環境は権限が Read Only だったので、ファイルを書き込む前に確認の画面が出ました。①は理由で、「AGENTS.md が無いこと」と「読み取り専用であること」が書かれています。②は、書き込む中身の始めの部分です。

書き込みの前に出た確認。① 理由 ② 書き込む中身(英語) ③ 選択肢撮影・作図: 編集部 ③の選択肢の意味は次のとおりです。
- 「1. Yes, proceed (y)」: このまま実行する
- 「2. No, and tell Codex what to do differently (esc)」: 実行しないで、どうしてほしいかを伝え直す
中身が英語だったので、編集部は Esc を押して断りました。
-
日本語で書くように頼み直す
断ると、①のように「You canceled the request」(実行を取り消した)と表示されます。続けて②のように、日本語で書くことと、返事も日本語にすることを頼みました。

断ったあとに頼み直したところ。① 実行を取り消した表示 ② 送った依頼撮影・作図: 編集部 -
日本語の中身を確かめて、Yes, proceed を選ぶ
もう一度、確認の画面が出ます。今度は①の理由も、②の中身も日本語です。中身を確かめて、③の「1. Yes, proceed」を選びます。

日本語で書き直した中身の確認。① 理由 ② 中身の始めの部分 ③ 実行する選択肢撮影・作図: 編集部 -
作成の報告を確かめる
①に、実行を許可したことが記録されます。②で「AGENTS.md (AGENTS.md) を日本語で作成しました。」と報告されれば完了です。

作成の報告。① 実行を許可した記録 ② 作成したという報告撮影・作図: 編集部
できた AGENTS.md の中身
編集部の AGENTS.md には、次の 6 つの見出しがありました。いちばん上の見出しは「Repository Guidelines」(英語)のままです。
| 見出し | 書かれていたこと |
|---|---|
| プロジェクト構成 | kakeibo.py の関数の役割と、expenses.csv がサンプルのデータであること |
| 実行・開発コマンド | 集計を実行する 2 つのコマンド。標準ライブラリだけなので、インストールは要らないこと |
| コーディング規約 | インデントは半角スペース 4 個、名前は snake_case にすること |
| テストと動作確認 | 自動のテストは無いこと。サンプルの CSV で実行し、費目ごとの合計(交通費 2,340 円など)を確かめること |
| コミットとプルリクエスト | コミットのメッセージと、プルリクエストに書くこと |
| 入力データの取り扱い | CSV の形式。空欄の金額を勝手に 0 にしないこと、個人の家計の情報をコミットしないこと |
1 行目の見出し「# Repository Guidelines」に続く、始めの部分は次のとおりです。
## プロジェクト構成
このリポジトリは、家計簿の CSV を読み込み、費目ごとの合計を表示する小規模な Python CLI です。
- `kakeibo.py`: CSV 読み込みの `load`、集計の `total_by_category`、実行入口の `main` を配置しています。
- `expenses.csv`: 動作確認用のサンプルデータです。
現在、テストやアセット専用のディレクトリはありません。機能追加時も、読み込み・集計・表示の役割を明確に保ってください。
## 実行・開発コマンド
- `python3 kakeibo.py`: カレントディレクトリの `expenses.csv` を集計します。
- `python3 kakeibo.py /path/to/expenses.csv`: 指定した CSV を集計します。
自分の決まりを書き足す
AGENTS.md はテキストのファイルなので、エディタで開いて書き足せます。公式のドキュメントにある、プロジェクトの AGENTS.md の例です。見出しと箇条書きで書いています。
## Repository expectations
- Run `npm run lint` before opening a pull request.
- Document public utilities in `docs/` when you change behavior.
1 つめは「プルリクエストを出す前に npm run lint を実行する」、2 つめは「動きを変えたら、共通で使う関数の説明を docs/ に書く」という決まりです。
家計簿のフォルダなら、たとえば次のように日本語で書き足せます。
## 作業のきまり
- 変更したら `python3 kakeibo.py` を実行して、費目ごとの合計を確かめる
- 返事は日本語で書く
AGENTS.md は、ふつう会話を始めるときに 1 回だけ読まれます。書き足したあとは、Codex を起動し直してから作業を頼みます。
すべてのプロジェクトに効く AGENTS.md
どのプロジェクトでも守ってほしいことは、Codex のホームのフォルダ(既定は ~/.codex)の AGENTS.md に書きます。フォルダが無いときは、先に作ります。
mkdir -p ~/.codex
~/.codex/AGENTS.md の公式の例は次のとおりです。JavaScript のファイルを変えたら npm test を実行する、依存パッケージを入れるときは pnpm を使う、本番用の依存を足す前に確認する、という 3 つの決まりです。
## Working agreements
- Always run `npm test` after modifying JavaScript files.
- Prefer `pnpm` when installing dependencies.
- Ask for confirmation before adding new production dependencies.
編集部の撮影では、/init のあとで「日本語で書いてください」と頼み直しました。どのプロジェクトでも日本語の返事がほしいときは、その決まりを全体の AGENTS.md に書いておく方法があります。
読み込まれたかを確かめる
/status を実行すると、今の会話で読み込んだ AGENTS.md が「Agents.md」の行に表示されます。編集部の環境では、Codex を起動し直したあとの /status に、①のように「AGENTS.md」と表示されました。

公式のドキュメントでは、Codex に「今の指示をまとめて」と頼んで確かめる方法も紹介しています。
codex --ask-for-approval never "Summarize the current instructions."
読み込まれていないときは、次のことを確かめます。
| 考えられる原因 | 確かめること |
|---|---|
| ファイルが空 | 中身を書く(空のファイルは飛ばされる) |
別に AGENTS.override.md がある |
override のファイルを探す(同じフォルダの AGENTS.md より先に使われる) |
| Codex のホームの場所が違う | echo $CODEX_HOME で確かめる |
| フォルダを信頼していない | フォルダを信頼する |
ほかの名前のファイルも指示として読ませる
設定ファイル ~/.codex/config.toml に書くと、AGENTS.md が無いフォルダで、ほかの名前のファイルを読ませられます。公式の例です。
project_doc_fallback_filenames = ["TEAM_GUIDE.md", ".agents.md"]
project_doc_max_bytes = 65536
この場合は、各フォルダで AGENTS.override.md → AGENTS.md → TEAM_GUIDE.md → .agents.md の順に探します。project_doc_max_bytes は、読み込む量の上限(バイト)です。
次の回では、Codex のよく使うコマンドと、設定ファイル config.toml の書き方を説明します。
参考にした公式の情報
この記事は、ハック!でAI編集部が AI を使って執筆しました。画面の画像は、編集部の検証環境で実際に操作して撮影したものです(引用の画像は出典を記載しています)。内容の誤りはお問い合わせからお知らせください。
連載
Codex 入門