Claude Code 2.1.277のAGENTS.md対応 ― 2.1.281より前は読まれないセッションがある
投稿日:2026.09.24
CATEGORY
- AI開発
結論: AGENTS.md は CLAUDE.md が無いときのフォールバックです
AGENTS.md を置いたのに、Claude Code がその指示に従わない。2026 年 9 月 18 日にリリースされた 2.1.277 で AGENTS.md への対応が入ったので、読まれているはずだと考えていると、こういう場面に当たります。
2.1.277 の対応は、CLAUDE.md が無いときに AGENTS.md を代わりに読むフォールバックです。さらに公式ドキュメントによると、2.1.281 より前のバージョンでは、テレメトリを無効にしたセッションなどで CLAUDE.md しか読まれません。最も手軽な確実策は、CLAUDE.md に @AGENTS.md と 1 行書くことです。
読み込みルール: CLAUDE.md があれば CLAUDE.md だけ
2.1.277 の changelog には「プロジェクトに CLAUDE.md が無い場合、Claude Code は代わりに AGENTS.md を読む」(原文: "in a project with no CLAUDE.md, Claude Code reads AGENTS.md instead")と書かれています。DevOps.com によると、AGENTS.md は 2025 年 12 月に Agentic AI Foundation(Linux Foundation)経由で公開された、複数のコーディングエージェントで共通に使う指示ファイルの標準です。同記事は、Claude Code チームの Thariq Shihipar 氏の言葉として "if there is no CLAUDE.md in a folder, Claude will check for and use AGENTS.md" を紹介しています。
この読み方がフォールバック型です。CLAUDE.md が主席で、AGENTS.md は控えの席です。公式ドキュメント(memory)が定める既定の挙動は次のとおりです。
- 作業ディレクトリかその上位に、CLAUDE.md・
.claude/CLAUDE.md・CLAUDE.local.md のいずれも無いときだけ AGENTS.md を読みます。どれかがあれば、CLAUDE.md 系だけを読みます ~/.claude/CLAUDE.md、組織の managed CLAUDE.md、.claude/rules/は「CLAUDE.md がある」の判定に数えません。これらは AGENTS.md と併読されます- CLAUDE.local.md を置くと、AGENTS.md は読まれなくなります
- 両方読ませたいときは、
/configの「Project instructions」をclaude-md-and-agents-mdにします
この設定項目の値は 4 つで、claude-md-or-agents-md(既定)、claude-md-and-agents-md、claude-md、managed-only です。AGENTS.md を直接読むには 2.1.277 以降が必要です。また 2.1.277 の changelog には、Bedrock・Vertex・Foundry ではまだ対応していないとも書かれています。その後の対応状況は、私たちは確認できていません。
落とし穴: 2.1.281 より前は読まれないセッションがある
公式ドキュメントには、次の注記があります。「Before v2.1.281, some sessions, such as those on Amazon Bedrock or with telemetry disabled, read CLAUDE.md files only. On those versions, update Claude Code.」(2.1.281 より前は、Amazon Bedrock 経由やテレメトリ無効など一部のセッションが CLAUDE.md しか読まなかった。該当バージョンでは Claude Code を更新する)。

個人ブログ(blog.szypowi.cz、2026-09-23)は、原因について次のように報告しています。2.1.277 の AGENTS.md ローダーはリモートの feature flag(機能の有効・無効を遠隔で切り替える仕組み)の背後にあり、テレメトリや非必須トラフィックを無効にしていると、警告なしにスキップされる。著者は空のディレクトリに合言葉(canary 語)を書いた AGENTS.md だけを置いて再現し、2.1.280 でも起きたとしています。この feature flag という原因は個人の報告で、私たちが確認した公式の文書には書かれていません。ただ、症状はドキュメントの注記と一致しています。
個人ブログの報告では警告が出ないとされているので、この落とし穴を無音スキップと呼びます。報告どおりなら、指示が入っていないこと自体に気づけません。手がかりは起動時の表示にあります。公式ドキュメントによると、対話セッションでは、AGENTS.md を読んだときに「no CLAUDE.md found; AGENTS.md loaded: <path>」の行が出ます。/memory でも読み込み状況を確認できます。
2.1.281 の扱いには注意が要ります。「2.1.281 で解消」は公式ドキュメントの記述に基づくものです。私たちが確認した範囲では、2.1.281 の changelog に対応する行を見つけられなかったので、何が変わったのかまでは断定しません。ドキュメント上は 2.1.281 以降で解消とされている、というところまでが確認できた事実です。
もう 1 点。2.1.276 以前からアップグレードした直後の最初のセッションでも、AGENTS.md が読まれない場合があります。次のセッションからは読まれます。
回避策: 1 行 import で CLAUDE.md から AGENTS.md を取り込む
回避策の 1 行 import は、CLAUDE.md に AGENTS.md を取り込む記述を 1 行書くだけです。
@AGENTS.md
公式ドキュメントも個人ブログも、この方法を挙げています。ドキュメントには、従来から使われてきた回避策の扱いも書かれています。
@AGENTS.mdを import している CLAUDE.md は、残してかまいません- symlink(別名リンク)は不要です。Windows では symlink より import が推奨されています
- SessionStart フックで AGENTS.md を出力していた場合は、二重に読み込まれるので、そのフックを削除します
- 設定経由で読まれた AGENTS.md では InstructionsLoaded フックが発火しません。CLAUDE.md が import した AGENTS.md では、通常どおり発火します
最後の点は、読み込みの監査をフックで行っているチームに影響します。フックで「どの指示ファイルが読まれたか」を記録している場合、設定経由で読まれた AGENTS.md はそこに現れません。フォールバックが設定経由に当たるかは、ドキュメントの記述からは読み取れませんでした。
私たちのリポジトリ: 2 つの書き方が併存している
私たちが確認した一部のリポジトリの CLAUDE.md には、AGENTS.md との関係に 2 つの書き方が併存していました。1 つは、CLAUDE.md が @AGENTS.md の 1 行だけのもの。もう 1 つは、CLAUDE.md の冒頭に「作業前に以下のファイルを必ず確認すること」と書き、その一覧に AGENTS.md を挙げるものです。
どちらも CLAUDE.md があるので、2.1.277 のフォールバックは働きません。前者は、公式ドキュメントが回避策に挙げている形そのものです。後者は、読むよう文章で指示する形です。CLAUDE.md が読まれていれば、その指示を通じて AGENTS.md に届く可能性があります。ただし、AGENTS.md を開くかどうかはモデルの行動に委ねられます。
この 2 つを見比べて、私たちの見方は次のとおりです。テレメトリの設定、経由するクラウド、更新の頻度、CLAUDE.local.md の有無は、チームの人ごとに違う可能性があります。環境を揃えられないなら、AGENTS.md への対応が入った後も、CLAUDE.md の 1 行 import を残すほうが安全です。フォールバックに任せると、AGENTS.md が読まれるかどうかがそのつど環境に左右されます。公式ドキュメントが、そうした環境向けの回避策として挙げているのが 1 行の import です。
今日から確認する 3 ステップ
claude --versionでバージョンを見ます。2.1.281 未満なら更新します。Bedrock・Vertex・Foundry を使っている場合は、対応状況を公式ドキュメントで確認します- リポジトリの直下に CLAUDE.md があるか確認します。AGENTS.md だけがあるなら、CLAUDE.md を作って
@AGENTS.mdの 1 行を書きます。すでに CLAUDE.md があるなら、AGENTS.md は自動では読まれないので、その中に import の行を足します - 新しいセッションを開き、
/memoryで AGENTS.md が読み込まれていることを確認します。加えて、個人ブログの著者に倣って、AGENTS.md に「この合言葉を聞かれたら答える」という 1 行を入れ、セッションで聞いてみます。答えが返れば、指示が実際に入っています
まとめ
テレメトリ無効などのセッションで AGENTS.md が読まれない問題は、ドキュメント上は 2.1.281 で解消とされています。一方、CLAUDE.local.md を置くと AGENTS.md が読まれなくなるのは、バージョンによらない公式の仕様です。Bedrock・Vertex・Foundry は、2.1.277 の changelog で未対応と書かれていました。
全員が 2.1.281 以上で、CLAUDE.local.md も Bedrock・Vertex・Foundry も使っていないと確認できているなら、AGENTS.md だけの構成も公式の仕様どおりに動きます。1 つでも当てはまる人がいるチームには、CLAUDE.md の @AGENTS.md 1 行を残す構成を、私たちは推奨します。
関連
AI エージェントを業務で回すときの設計と運用については、CTO の note に書いています。
出典
- Claude Code changelog(2.1.277: AGENTS.md support)
- Claude Code ドキュメント: Memory(CLAUDE.md と AGENTS.md の読み込み)
- 個人ブログ: Claude Code reads AGENTS.md only when telemetry is on(2026-09-23、個人の検証報告として参照)
- DevOps.com: Claude Code adds AGENTS.md fallback, cutting instruction file sprawl
※ この記事は AI を使用しています。Leadeas が自社開発した AI エージェント基盤で下書きを作成し、人間のレビューを経て公開しています。AI ネイティブ開発会社として自社の技術をそのまま実演する目的で、この手法を用いています。(詳しくは AI 利用ポリシー)

