AGENTS.mdとは?Codex・Copilot code reviewにプロジェクトルールを伝える基本
AGENTS.mdは、CodexやGitHub Copilot code reviewなどのAIエージェントに、プロジェクトの前提・禁止事項・build/check手順を伝える指示ファイルです。書くべき内容、CLAUDE.mdやcopilot-instructionsとの違い、個人開発での安全ルールを初心者向けに解説します。
公開 2026.05.25 / 更新 2026.08.10
この記事のポイント
- AGENTS.mdとは、AIエージェントに作業方針と禁止事項を伝えるためのファイル
- 実行コマンド、デザイン方針、SEO方針、確認手順を書くと事故が減る
- 秘密情報や長すぎるルールは書かず、プロジェクトごとに更新する
冒頭の結論:AGENTS.mdはAI向けの作業ルール
AGENTS.mdとは、CodexのようなAIエージェントに対して、プロジェクトの前提、作業ルール、禁止事項、確認方法を伝えるための指示ファイルです。人間でいえば、開発前に読む作業メモや運用ルールに近いものです。
毎回チャットで「このサイトはReact + Viteです」「公開URLは変えないでください」「buildを通してください」と説明するより、AGENTS.mdにまとめておく方が安定します。個人開発でも、AIに作業を頼む回数が増えるほど効いてきます。
この記事で分かること
- AGENTS.mdとは何か、Codexのプロジェクト設定でなぜ重要なのか
- AGENTS.mdの書き方と、書くべき項目
- 書かない方がいい内容と、更新を放置する危険
- 個人開発サイト向けのAGENTS.md例
AGENTS.mdに書くべきこと
AGENTS.mdには、AIが作業を始める前に知っておくべきことを書きます。プロジェクト概要、使用技術、ディレクトリ構成、実行コマンド、やってはいけないこと、デザイン方針、SEO方針、ビルド確認方法、デプロイ時の注意点などです。
Codexでなぜ重要なのか
Codexは実際のファイルを読んで修正できるため、毎回のチャット指示だけに頼ると作業範囲や確認手順がぶれます。AGENTS.mdに「触ってよいフォルダ」「buildコマンド」「upload反映の有無」「push前に人間が確認すること」を書いておくと、AIに任せる作業と人間が判断する作業を分けやすくなります。
| 項目 | 書くべき内容 | 書かない方がいい内容 | 理由 |
|---|---|---|---|
| プロジェクト概要 | 何のサイトか、誰向けか | 抽象的な理念だけ | 判断基準として使える情報が必要 |
| 使用技術 | React + Vite、CSS、データ管理場所 | 未導入の技術予定を断定 | AIが存在しない構成で作業するのを防ぐ |
| 実行コマンド | npm run build、npm run devなど | 環境依存で動かない古いコマンド | 確認手順を固定するため |
| 禁止事項 | URL変更、秘密情報表示、大量削除、本番反映 | 曖昧な「危ないこと禁止」だけ | 具体的でない禁止は守りにくい |
| SEO方針 | title、description、canonical、OGP確認 | キーワードを詰め込む指示 | 検索より読者体験を優先するため |
個人開発サイト向けのAGENTS.md例
# Project Rules
- This is a React + Vite static site.
- Run `npm run build` before finishing changes.
- Do not change public URLs without confirmation.
- Keep the design clean and readable.
- SEO title, description, canonical, and OGP must be checked when adding pages.Obsidianや作業ログとの違い
Obsidianや作業ログは、人間が後から経緯を振り返るための場所です。一方でAGENTS.mdは、Codexに作業前提を伝えるための場所です。判断ログや会話全文を詰め込むのではなく、AIが作業時に守るべきルールだけを短く置くと使いやすくなります。
この例は短いですが、最初はこのくらいで十分です。AGENTS.mdに禁止事項を書く前に、Codexのフルアクセス相当の権限で危険になりやすい操作を確認し、よく起きる事故、毎回確認してほしいこと、触ってほしくないファイルを少しずつ足していく方が続きます。
個人開発者にとって重要な理由
個人開発では、開発者、編集者、デザイナー、運用担当が同じ人になりがちです。Codexに依頼するたびにルールが変わると、サイトの文体、デザイン、URL、SEO設定がぶれます。AGENTS.mdは、そのぶれを減らすための足場です。
向いているケース
- 同じプロジェクトでCodexに何度も作業を頼む
- 記事追加、CSS調整、SEOメタ修正など定型作業がある
- 公開URLや納品フォルダなど、守るべき運用ルールがある
- AIに触ってよい範囲と触ってほしくない範囲を分けたい
向いていないケース・注意点
- 長すぎるルールは読みにくく、重要事項が埋もれる
- 古いコマンドや古いディレクトリ構成を放置すると逆効果
- Codexが必ず完璧に守るとは限らないので最終確認は必要
- プロジェクトごとに内容を変えず使い回すと、誤作業の原因になる
よくある誤解
AGENTS.mdを書けばAIが絶対にミスをしない、というわけではありません。AGENTS.mdは事故を減らすための補助線です。最終的には、人間が差分、ビルド結果、公開前の表示を確認する必要があります。
AGENTS.mdのFAQ
AGENTS.mdとは何ですか?
CodexのようなAIエージェントに、プロジェクトの目的、作業ルール、禁止事項、確認コマンドを伝えるためのファイルです。
CodexでAGENTS.mdはなぜ重要ですか?
Codexは実ファイルを編集できるため、触ってよい範囲、build手順、公開前確認、秘密情報の扱いを先に伝えると事故を減らせます。
AGENTS.mdに秘密情報を書いてもいいですか?
書かないでください。APIキー、パスワード、Cookie、秘密鍵、個人情報はAGENTS.mdではなく安全な秘密情報管理の仕組みで扱います。
個人開発サイトでは何を書けばいいですか?
使用技術、主要ファイル、buildコマンド、upload反映ルール、URL変更禁止、SEO確認、pushやdeploy前の人間確認を書くと実用的です。
Obsidianの作業ログとAGENTS.mdは同じですか?
違います。作業ログは人間が経緯を振り返る場所で、AGENTS.mdはAIに守らせる作業ルールを短く伝える場所です。
まとめ:AGENTS.mdは短く、具体的に、更新する
AGENTS.mdとは、Codexにプロジェクトルールを伝える基本のファイルです。完璧な長文を書くより、守ってほしいことを短く具体的に書き、運用しながら更新する方が実用的です。
AGENTS.mdにはレビューを軽くする情報を書く
AGENTS.mdは、AIにプロジェクトの作法を伝えるだけでなく、レビューしやすい差分を作らせるための安全装置です。禁止ファイル、build/check、upload/sitemap、完了報告フォーマットを短く固定します。
| 見る観点 | 確認すること | 関連する新規記事 |
|---|---|---|
| 禁止操作 | Secrets、依存追加、deploy、DB、force push | agents-md-reduces-ai-coding-review-load |
| 確認コマンド | build、check、diff、sitemap、upload | how-to-review-codex-completion-report |
| 報告形式 | 変更内容、確認結果、残課題、commit/push | how-to-review-codex-completion-report |
AIコーディング生産性まわりの補足FAQ
AGENTS.mdは長いほどよいですか?
長ければよいわけではありません。安全、確認コマンド、変更範囲、完了報告など、レビューに効く情報を優先して短く整理します。
ZCodeもAGENTS.mdを読むが、CLAUDE.mdとは役割が違う
ZCode公式docsでは、~/.zcode/AGENTS.mdと現在workspaceのAGENTS.mdを読むと説明されています。CLAUDE.mdは継続的に読むのではなく、既存Claude Code projectのonboarding時の移行元として扱われます。
| ZCodeで見る項目 | 確認すること | 詳しく読む |
|---|---|---|
| Global AGENTS.md | ~/.zcode/AGENTS.mdに共通ルールを書く | zcode-mcp-agents-md-subagents |
| Workspace AGENTS.md | repo固有のbuild/check、禁止操作を書く | zcode-mcp-agents-md-subagents |
| CLAUDE.md | 移行元として扱い、継続runtimeとは分ける | zcode-mcp-agents-md-subagents |
ZCode補足FAQ
ZCodeは複数階層のAGENTS.mdを全部読みますか?
公式docsではglobalと現在workspaceのAGENTS.mdを読むと説明され、子directoryを自動scanするとは説明されていません。
AGENTS.mdは、長時間エージェントに仕事の境界を渡すファイルになる
AI利用が委任タスクへ寄るほど、毎回の口頭指示だけでは足りません。AGENTS.mdには、触ってよい範囲、禁止操作、検証コマンド、commit/push、本番反映の扱いを書き、レビュー可能な作業へ寄せます。
| 見る観点 | 確認すること | 関連する新規記事 |
|---|---|---|
| 作業範囲 | 触ってよいファイルと触らないファイル | personal-developer-agentic-workflow-codex-review |
| 長時間タスク | 途中相談、検証、停止条件 | ai-agent-task-horizon-30min-1hour-8hour-boundary |
| 仕事利用 | 委任タスクの合格条件 | ai-agent-work-transformation-codex-claude-research |
AIエージェント仕事利用の補足FAQ
AGENTS.mdには何を書き足すとよいですか?
確認コマンド、禁止操作、本番反映の扱い、commit/push条件、完了報告に含める項目を書くと、長時間作業のレビューがしやすくなります。
AGENTS.mdは増やすより測る
SWE-Skills-Benchは、Agent Skillsが常にpass-rateを上げるわけではなく、token overheadやversion mismatchで悪化する場合もあることを示します。AGENTS.mdも同じで、禁止事項、確認コマンド、作業範囲のように効くルールへ絞り、古い手順や重複は減らします。
GitHub Copilot code reviewもAGENTS.mdを読む時代に
GitHubは2026年6月18日のChangelogで、Copilot code reviewがrepository-level AGENTS.mdに対応し、repo rootのAGENTS.mdを読み、関連する指示をレビューコメント生成に使うと案内しました。AGENTS.mdはCodexだけの説明書ではなく、複数のAIエージェントに共有する作業ルールとして考える必要があります。
| 確認観点 | この記事で扱うこと | 詳しく読む |
|---|---|---|
| AGENTS.md | repo rootに置くAI向け作業ルール。CodexやCopilot code reviewの文脈で使われる | indirect-prompt-injection-ai-coding-agent |
| CLAUDE.md | Claude Code向けのプロジェクト文脈や運用ルール | claude-code-skills |
| .github/copilot-instructions.md | GitHub Copilot向けrepository custom instructions | what-is-agents-md |
| .github/instructions/*.instructions.md | path-specificなCopilot instructions | what-is-agents-md |
| 初見repo | AGENTS.md自体も未信頼入力として読み、実行前に確認する | ai-coding-unknown-github-repo-safety-checklist |
AI coding agent安全運用の補足FAQ
AGENTS.mdを書けば知らないrepoでも安全ですか?
いいえ。自分のrepoでは安全ルールの固定に役立ちますが、知らないrepoのAGENTS.mdは未信頼入力として読みます。実行境界、権限、外部通信、秘密情報の確認は別に必要です。
AGENTS.mdは階層と現在の作業ディレクトリで効き方が変わる
AGENTS.mdを1枚置けば常に同じ指示になるわけではありません。Codexはglobal guidanceとproject-specific guidanceを分け、project rootから現在の作業ディレクトリへ向かってinstructionを結合します。後から結合される下位ディレクトリの指示が、上位の一般的な指示を上書きするため、repo全体のルールはroot、特定サービスのルールは対象ディレクトリの`AGENTS.override.md`などに分けます。
| 確認点 | 公式Docsの説明 | 実務での判断 |
|---|---|---|
| global | `CODEX_HOME`(既定は`~/.codex`)の`AGENTS.override.md`、なければ`AGENTS.md`の最初のnon-empty file | profileが変わっていないか確認し、overrideを一時的な上書きとして管理する |
| projectの探索 | 通常はGit rootからcurrent working directoryまで、各ディレクトリでoverride・通常名・fallback filenameを確認 | どのdirectoryから起動したかと、読み込まれたファイルを確認する |
| merge順 | rootから下へ連結し、current directoryに近いファイルが後から効く。各directoryでは最大1ファイル | 同じ階層に`AGENTS.override.md`と`AGENTS.md`を置いて両方が読まれるとは考えない |
| サイズとfallback | 空ファイルは無視され、`project_doc_max_bytes`(既定32 KiB)で打ち切り。別名は`project_doc_fallback_filenames`へ登録 | 重要なルールを先頭に置き、設定を変えたら新しいrunで再確認する |
探索結果が古い・足りないときの確認
- Codexを対象repoの意図したdirectoryから起動し、`CODEX_HOME`が別profileを指していないか確認する。
- `AGENTS.override.md`が上位ディレクトリやglobalに残っていないか確認する。通常名が無視されている場合はfallback filenameの設定を確認する。
- 指示が切れている場合は、長文を詰め込むのではなく、`project_doc_max_bytes`を確認して重要なルールを分割・先頭配置する。
- 設定やファイルを変更した後は新しいcommandまたはTUI sessionで再確認し、実際に読み込まれたinstruction sourceをログで監査する。
AGENTS.md探索のFAQ
AGENTS.override.mdとAGENTS.mdは両方読まれますか?
同じdirectoryでは、Codexはoverride、通常名、設定したfallback filenameの順に確認し、最大1ファイルだけを読みます。上位directoryと下位directoryは結合され、current directoryに近い指示が後から効きます。
AGENTS.mdを変えたのに反映されません。
起動したdirectory、Git root、`CODEX_HOME`、上位の`AGENTS.override.md`、空ファイル、`project_doc_max_bytes`による打ち切りを確認し、新しいrunまたはTUI sessionで読み込みを再確認します。
AGENTS.mdとRulesは、指示とcommand policyを分けて使う
AGENTS.mdはプロジェクトの前提、禁止事項、確認手順を伝える指示ファイルです。一方、Rulesはsandbox外でcommandを実行するときのdecisionを制御する層です。Rulesを追加しただけでrepoの指示、sandbox、permission profile、MCP、secret管理、diff確認が不要になるわけではありません。project-local rulesは、その`.codex/` layerをtrustedと判断した場合だけ読み込まれるため、初見repoのRulesを自分の許可設定として受け入れないようにします。
| 確認点 | 公式Docsの説明 | 開始前の判断 |
|---|---|---|
| 配置 | active config layerの`rules/`をstartup時にスキャンする。user、Team Config、trustedなproject-local layerが対象 | どのconfig layerのRulesか、projectをtrustedにした理由、対象repoを記録する |
| decision | allow・prompt・forbiddenを使い、複数ruleが一致するとforbidden > prompt > allowの最も厳しい結果になる | allowを成功条件とみなさず、promptとforbiddenを含む全ruleを確認する |
| match | commandはargument listとして評価し、prefix patternにはliteralや選択肢を指定できる | shell文字列の見た目ではなく、実際に渡されるcommand prefixをテストする |
| 例の検証 | match / not_matchはrule load時に検証されるinline unit test | 許可したいcommandと似ているが許可しないcommandを両方書く |
| 複合command | 単純なlinear chainは分割評価するが、変数、redirect、substitution、control flowを含むscriptは分割せず全体を保守的に評価する | wrapperや複合shellを単一prefixのallowで安全と決めつけない |
| 実行前チェック | `codex execpolicy check`はstrictest decisionとmatched rulesをJSONで出力する | 実行前に想定commandをcheckし、結果とjustificationをレビューする |
Rulesを追加・変更する前の停止条件
- Rulesはexperimentalと明示されているため、長期運用の前に現行公式Docsと実際のCodex versionを確認する。
- 初見repoの`.codex/rules/`をそのままuser layerへコピーせず、project layerをtrustedにする判断と所有者を分けて記録する。
- allowはsandbox外のmatching commandのpromptを省く設定であり、repo全体、filesystem、network、MCP、secretへの広い許可とは扱わない。
- ruleを追加した後はCodexを再起動し、`codex execpolicy check --pretty --rules ~/.codex/rules/default.rules -- git status`のように安全なcommandでstrictest decisionとmatched rulesを確認する。
- Smart approvalsが提案するprefix_ruleは自動承認せず、patternが広すぎないか、justificationが代替手段を示しているかを確認する。
- requirements.tomlで管理者がrestrictive ruleを強制できるため、組織policyと矛盾するallowをローカルで足して回避しない。
- Rulesを確認しても、secret、外部送信、生成物、diff、test、push、deployの人間レビューは省略しない。
codex execpolicy check --pretty --rules ~/.codex/rules/default.rules -- git statusCodex RulesのFAQ
AGENTS.mdと`.rules`は同じものですか?
同じではありません。AGENTS.mdはプロジェクトの前提や作業ルールを伝え、`.rules`はsandbox外でcommandを実行するときのallow・prompt・forbiddenを制御します。両方を使っても、secret、MCP、diff、test、push前レビューは別に必要です。
allow ruleを追加すれば、Codexの実行は安全になりますか?
安全とは限りません。allowはmatching commandのpromptを省くだけで、patternが広すぎれば確認を減らします。実際のcommand prefix、複合shellの扱い、strictest decision、管理者policyを`execpolicy check`で確認してから使います。
関連記事
- ZCodeとは?GLM-5.2向けAI開発エージェント環境を個人開発目線で整理
ZCodeを単なる新しいAIチャットではなく、GLM-5.2と連動するAgentic Development Environmentとして読み解きます。
- ZCodeのFull Accessは危険?権限モード・確認ダイアログ・安全な使い方
ZCodeのFull Accessは便利ですが、Always Allowと組み合わせるほど確認が減ります。信頼できる作業範囲だけに閉じるのが基本です。
- AI時代にインフラエンジニアの需要が消えない理由:コード生成が速くなるほど、本番環境を守る人が必要になる
AIがDockerfileやTerraformを書ける時代でも、本番環境の権限、監視、復旧、コスト、秘密情報管理の責任は残ります。AI時代に価値が上がるインフラ・SRE・DevOpsの観点を整理します。
- Codexの使用量を節約する作業分け|prompt・AGENTS.md・MCPの絞り方
Codexのリミット節約は、短いpromptだけでは足りません。対象範囲、AGENTS.md、共有MCP設定、model、確認手順をセットで絞ります。
- Codexの残り使用量はどこで見る?Usage Dashboard・制限・リセット
Codexの残り使用量、reset、credits、banked resetを、制限回避ではなく安全な作業計画のために整理する親ハブです。