←新闻详情

gihyo.jp更新于 10月21日 22:36

Claude Code 2.1.277 起支持 AGENTS.md,/config 可选 4 种指示文件读取方式

Claude Code、AGENTS.mdに対応 ——/configで指示ファイルの読み込みを設定 | gihyo.jp

AI 导读

Anthropic 的 Claude Code 从 2.1.277 版本起支持 AGENTS.md:默认在作业目录及上层找不到 CLAUDE.md 等指示文件时,才把 AGENTS.md 作为项目指示读取。通过 Bedrock、Vertex、Foundry 使用 Claude Code 的环境,以及禁用遥测的环境暂不支持该功能,可用环境需更新后从第二次会话起生效。/config 的 Project instructions 提供 claude-md-or-agents-md(默认)、claude-md-and-agents-md、claude-md、managed-only 四种读取设置,但没有只读 AGENTS.md 的专用模式。

正文

AnthropicでClaude Codeの開発に携わるThariq Shihipar氏(@trq212)は9月18日、AIコーディングツールClaude Codeがバージョン2.1.277からAGENTS.mdに対応したとXで案内した。デフォルトでは、作業ディレクトリやその上位にCLAUDE.mdなどの指示ファイルがない場合に、AGENTS.mdをプロジェクトの指示として読み込む。

AGENTS.mdをプロジェクトの指示として直接読み込み

AGENTS.mdは、AIコーディングエージェントにプロジェクトの情報や作業上の指示を伝えるためのMarkdownベースのオープンな形式。ビルド・テストのコマンドやコーディング規約などを、複数のエージェントで共有できる。今回の対応により、既存のAGENTS.mdをClaude Codeでも直接利用できるようになった。

ただし、バージョン2.1.277のリリースノートによると、Bedrock、Vertex、Foundryを通じてClaude Codeを利用する環境では、AGENTS.md対応はまだ提供されていない。また、利用状況などのデータ送信(テレメトリー)を無効にしている環境などでも、AGENTS.mdの直接読み込みは利用できない[1]。利用可能な環境では、対応版への更新後、2回目のセッションから読み込みが有効になる。

[1] Claude Codeは、一部の機能をAnthropicから取得する設定情報(フィーチャーフラグ)で有効化する。テレメトリーを無効にすると、この取得も停止するため、AGENTS.mdの直接読み込みも有効にならない。

指示ファイルの共通化を求める声

Claude Codeではこれまで、プロジェクトの指示ファイルとしてCLAUDE.mdを使ってきた。しかし、Shopify CEOのTobi Lütke氏は8月24日、チーム内で異なるツールを使う場合、CLAUDE.mdだけを読み込む方式では指示が食い違うことがあると指摘し、AGENTS.mdなどへの対応を求めていた。

Thariq氏はこの投稿への返信で、モデルの基本的な振る舞いを定めるシステムプロンプトが性能に大きく影響すると説明し、モデルに合わせた指示を重視する考えを示していた。同氏は、モデルの進化に応じてCLAUDE.mdなどの指示を見直す考え方も紹介している。

あわせて、同じ返信で、指示を管理する負担も認め、AGENTS.mdの利用やシステムプロンプトの変更を容易にする取り組みを進めていると述べていた。CLAUDE.mdに@AGENTS.mdと書いて読み込ませることは以前から可能で、その方法も案内していた。

/configで選べる4つの読み込み設定

Claude Codeの/configにある「Project instructions」では、次の4つの設定から読み込み方を選べる。

CLAUDE.mdがなければAGENTS.mdを読む(claude-md-or-agents-md、デフォルト⁠)⁠:CLAUDE.mdなどの指示ファイルがあればそちらを使い、なければAGENTS.mdを読み込む。; 両方を読む(claude-md-and-agents-md⁠)⁠:CLAUDE.mdとAGENTS.mdを読み込む。CLAUDE.mdから@AGENTS.mdですでに読み込んでいる場合は、再度読み込まない。; CLAUDE.mdだけを読む(claude-md⁠)⁠:AGENTS.mdを直接読み込まず、CLAUDE.mdを使う。; 起動時は組織の管理指示と自動メモリーを使う(managed-only⁠)⁠:組織が管理するCLAUDE.mdと、Claude Codeが自動保存したメモリーを読み込む。ただし、サブディレクトリのCLAUDE.mdなどは作業中に読み込まれる。

CLAUDE.mdを読み込まず、AGENTS.mdだけを読む専用モードは用意されていない。

デフォルトでは、作業ディレクトリからファイルシステムのルートまで、各階層のCLAUDE.md、.claude/CLAUDE.md、CLAUDE.local.mdを探す。いずれも見つからなければ、その範囲にあるAGENTS.mdと.claude/AGENTS.mdを読み込む[2]。

[2] 全プロジェクトで使う~/.claude/CLAUDE.mdや、組織が管理する指示ファイルなどは、この判定の対象外。これらはAGENTS.mdとともに読み込まれる。

AGENTS.mdには、CLAUDE.mdとの動作の違いもある。たとえば、サブディレクトリのAGENTS.mdを追加で読み込むのは、Claude Codeがその配下のテキストファイルをReadツールで読むときに限られる。また、--add-dirで追加したディレクトリのAGENTS.mdは読み込まない。指示ファイルなどを一覧表示して編集する/memoryにも、直接読み込んだAGENTS.mdは表示されない。

「Claude Code mods」の組み込み機能として実装

Thariq氏は今回の追加投稿で、AGENTS.md対応が「Claude Code mods」に基づく組み込み機能であると説明した。modは、Claude Codeの処理中に発生するイベントへ関数を登録し、動作を変更するプラグイン。AGENTS.mdの読み込みを実装したmodのソースコードも公開されている。

同氏は、今後は利用者もmodsを使い、プロジェクトの指示を扱う仕組みを自作できるようになると述べている。

コラム⁠:Claude Modsではテトリスの作例も

AGENTS.md対応に先立つ9月9日、Claude CodeのGitHubリポジトリにあるIssueでは、「⁠Claude Mods」という名称と、環境変数を設定して試用する方法が案内されていた。

Claude Codeの開発に携わるBoris Cherny氏もXへの投稿で、Claude内でテトリスを動かすmodが作られたことを紹介している。同Issueには、画面共有を想定し、Claude Code Desktop上の機密情報を通常は伏せ、マウスポインターを重ねたときだけ表示するデモも掲載されている。

来源

gihyo.jp