CodexとClaude Codeを同じプロジェクトで併用していて、AGENTS.mdとCLAUDE.mdの両方を書いているうちに内容がずれてしまった経験はないでしょうか。この問題には、Anthropic自身が公式ドキュメントで具体的な解決策を示しています。共通の指示はAGENTS.mdにまとめて書き、CLAUDE.mdからそれを読み込む、という方法です。
OpenAIのCodex公式ドキュメントによれば、Codexは作業を始める前にAGENTS.mdファイルを読み込みます。発見順序はホームディレクトリからgitのルート、さらに現在の作業ディレクトリまでの階層で、より近い場所にあるファイルの内容が優先されるとされています。
一方Claude Codeの公式ドキュメント(code.claude.com/docs/en/memory)は「Claude CodeはAGENTS.mdではなくCLAUDE.mdを読む」と明記した上で、CLAUDE.mdの先頭に次のように書くことでAGENTS.mdを取り込めると、公式のコード例を示しています。
``` @AGENTS.md
Claude Code Use plan mode for changes under src/billing/. ```
このインポート構文は@パス/ファイル名という形式で、相対パス・絶対パスのどちらも使え、再帰的なインポートは最大4階層までと定められています。コードスパンやフェンスされたコードブロックの中に書かれたパスはインポートとして扱われず、単なる文字列として無視される点も、実際に書く際には覚えておく必要があります。
ここで一つ、誤解しやすい点を公式ドキュメントに基づいて訂正しておきます。「AGENTS.mdをインポートすればコンテキストやトークンの消費を減らせる」と考えがちですが、公式ドキュメントは、インポートされたファイルは起動時にすべて読み込まれるため、インポート自体はトークンやコンテキストのコストを削減しないと明記しています。この仕組みはあくまでファイルを整理し、同じ内容を二重に管理する状態を避けるためのものであり、節約目的で使う機能ではありません。
なおAGENTS.mdは、Codexだけでなく、Jules、Devin、Cursor、Zedなど複数のツールが対応するオープンな業界規約(agents.md)としても存在しています。Claude Codeはこの規約サイトの対応ツール一覧には掲載されていませんが、@import機能を通じて事実上AGENTS.mdを取り込める形になっています。
既存のCLAUDE.mdがすでに長くなっている場合は、まずツール共通の指示をAGENTS.mdに切り出し、CLAUDE.md側は@AGENTS.mdの一行とClaude Code固有の指示だけを残す、という整理から始めると取り組みやすいはずです。
ただしAGENTS.mdを導入すれば必ず精度が上がるという保証があるわけではなく、効果はリポジトリの内容や指示の書き方に依存します。この点は導入前に理解しておく必要があります。
公式情報と発見元
- Claude Code公式ドキュメント「Manage Claude's memory」(@import構文の一次情報) https://code.claude.com/docs/en/memory(確認日時2026-08-23)
- OpenAI Codex公式ドキュメント「AGENTS.md」 https://developers.openai.com/codex/guides/agents-md(確認日時2026-08-23)
- オープンな業界規約サイト agents.md https://agents.md(確認日時2026-08-23)
- 参考ブログ(コミュニティでの実践例) https://www.alexdunlop.com/writing/claude-md-vs-agents-md(確認日時2026-08-23)