规范文件
AGENTS.md 和 CLAUDE.md:Claude Code 读哪个、怎样共用一份
默认只有 AGENTS.md 才读它,有 CLAUDE.md 则只读后者;@AGENTS.md 可共用。未实测,以官方为准
本文主结论只适用 Claude Code,依据 Claude Code 官方文档当前页面(该页写明:直接读取 AGENTS.md 需要 Claude Code v2.1.277 或更高版本)。其他工具的做法单独放在最后一节。
- 核验日期
- · 未实测
- 适用于
文件位置
| 路径 | 适用范围 | 读取方式 |
|---|---|---|
./AGENTS.md | 仓库根目录;大型 monorepo 可在子项目目录再放 | 官网:Agent 读取目录树里最近的文件;Claude Code:默认设置下,没有 CLAUDE.md 时才读取(需 v2.1.277 或更高版本;官方文档未标 agents.md 官网的版本,以核验日期为准)[2][1] |
./CLAUDE.md | 项目根目录,与团队共享 | Claude Code 会话开始读取;可用 @AGENTS.md 引入 AGENTS.md[1] |
./.claude/CLAUDE.md | 项目指令的另一个官方位置 | 同 ./CLAUDE.md,也算「有 CLAUDE.md」[1] |
~/.claude/CLAUDE.md | 只对你自己,所有项目 | Claude Code 读取,且不影响是否读 AGENTS.md[1] |
./CLAUDE.local.md | 只对你自己,当前项目;官方建议加入 .gitignore | Claude Code 读取;它会让默认设置下不再读 AGENTS.md[1] |
~/.claude/projects/<project>/memory/ | auto memory,本机文件,同一仓库的 worktree 共用 | Claude 自己写入;每次会话开始只载入其中 MEMORY.md 的前 200 行或前 25KB(先到的上限为准),超出部分启动时不载入;其他主题文件启动时不载入,Claude 需要时按需读取[1] |
什么时候用
- 仓库里已经有 AGENTS.md,想知道 Claude Code 会不会读它。[1]
- 团队同时用 Claude Code 和别的编程 Agent,想只维护一份项目指令。[1][2]
- 想分清「你写的指令文件」和「Claude 自己记的笔记」放在哪、各管什么。[1]
什么时候不用
三种组合,Claude Code 默认读哪个
官方文档给出一张表:按仓库里有哪些指令文件,列出 Claude Code 默认读取什么。下面按原意整理。[1]
| 仓库里有 | Claude Code 读取 |
|---|---|
| 有 AGENTS.md,且工作目录及其上层都没有 CLAUDE.md 或 CLAUDE.local.md | 你的 AGENTS.md |
| 有 AGENTS.md,同时工作目录或其上层有 CLAUDE.md 或 CLAUDE.local.md | 只读 CLAUDE.md 系列文件 |
| CLAUDE.md 里已经 import 了 AGENTS.md | 读 CLAUDE.md,AGENTS.md 通过 import 一并载入 |
判断「有没有 CLAUDE.md」时,下面这些算数:工作目录或其上层目录里的 CLAUDE.md、.claude/CLAUDE.md、CLAUDE.local.md。下面这些不算,会照常和 AGENTS.md 一起加载:~/.claude/CLAUDE.md、组织的 managed CLAUDE.md、.claude/rules/ 里的文件。[1]
注意 CLAUDE.local.md 也算数:为了放个人的未提交指令而新建它,会让 Claude Code 不再自动读你的 AGENTS.md。官方给的办法是在 /config 里把 Project instructions 设为 claude-md-and-agents-md,让两类文件一起读。[1]
- claude-md-or-agents-md:默认值,有 CLAUDE.md 读 CLAUDE.md,没有才读 AGENTS.md。
- claude-md-and-agents-md:CLAUDE.md 和 AGENTS.md 一起读,同一目录里 CLAUDE.md 在前;已经被载入的 AGENTS.md 不会重复读。
- claude-md:只读 CLAUDE.md。
- managed-only:启动时只载入组织的 managed CLAUDE.md 和 auto memory;项目、本地、用户的 CLAUDE.md,.claude/rules/ 里的文件和所有 AGENTS.md 都不载入。子目录的 CLAUDE.md、.claude/rules/ 里的文件和按路径生效的规则仍按需载入。
官方还列出 Claude Code 读不了 AGENTS.md 的会话:这些会话只读 CLAUDE.md,/config 里也不显示 Project instructions。包括:Claude Code 版本低于 v2.1.277;用 /plugin 停用了读取 AGENTS.md 的内置插件;从 v2.1.276 或更早版本升级后的首个会话(有些情况下,下一次会话起才读)。另外 v2.1.281 之前,部分会话(例如用 Amazon Bedrock 或关闭了遥测)也只读 CLAUDE.md,官方建议更新。要在这些会话里让 Claude 看到 AGENTS.md,就在 CLAUDE.md 里 import 它。[1]
文件放哪里、作用到哪
| 文件 | 位置 | 作用范围 |
|---|---|---|
| 项目 CLAUDE.md | ./CLAUDE.md 或 ./.claude/CLAUDE.md | 通过版本控制与团队共享的项目指令 |
| 项目 AGENTS.md | 仓库根目录,以及工作目录上层的 AGENTS.md 和 .claude/AGENTS.md | 没有 CLAUDE.md 时,会话开始读取;子目录的 AGENTS.md 在 Claude 用 Read 工具打开该目录文件、且该目录没有自己的 CLAUDE.md 时读取 |
| 个人全局指令 | ~/.claude/CLAUDE.md | 只对你自己,所有项目 |
| 个人项目指令 | ./CLAUDE.local.md | 只对你自己,当前项目;官方建议加入 .gitignore |
| 组织指令 | macOS:/Library/Application Support/ClaudeCode/CLAUDE.md;Linux 和 WSL:/etc/claude-code/CLAUDE.md;Windows:C:\Program Files\ClaudeCode\CLAUDE.md | 组织内所有用户 |
官方不读的 AGENTS 类文件:AGENTS.local.md、AGENTS.override.md,以及 .agents/ 目录下的任何内容。[1]
AGENTS.md 官网的建议是在仓库根目录创建 AGENTS.md;大型 monorepo 可在每个子项目里再放一个。[2]
和 auto memory 有什么区别
官方把两者叫作互补的两套记忆机制:CLAUDE.md(含它的替代 AGENTS.md)是你写的指令;auto memory 是 Claude 根据你的纠正和偏好自己写的笔记。官方也提醒,两者对 Claude 都是上下文,不是强制配置。[1]
| 对比项 | CLAUDE.md | auto memory |
|---|---|---|
| 谁来写 | 你 | Claude |
| 内容 | 指令和规则 | 学到的经验和模式 |
| 范围 | 项目、用户或组织 | 每个仓库一份,同一仓库的各 worktree 共用 |
| 载入 | 每次会话 | 每次会话(前 200 行或 25KB) |
| 适合放 | 编码规范、工作流、项目架构 | 你的偏好、你给 Claude 的纠正、Claude 无法从代码里推出的项目背景 |
auto memory 存在 ~/.claude/projects/<project>/memory/ 下,是本机文件,不会跨机器共享。官方未写明 AGENTS.md 与 auto memory 之间有什么特殊关系;两者按上表区分即可。上表「前 200 行或 25KB」只针对 MEMORY.md:取先到的上限,超出部分启动时不载入;目录里的其他主题文件启动时不载入,Claude 需要时才按需读取。[1]
跨工具情况(只写官网明示的)
以下只摘录各家官方页面明确写出的内容,彼此规则并不相同,不能当成 Claude Code 的行为。agents.md 官网和 Cursor 官方文档都没有标版本号,以上内容以 2026-10-28 的核验日期为准;Claude Code 官方页写明的版本门槛见本文开头。[1][2][3]
- agents.md 官网:AGENTS.md 是面向编程 Agent 的开放格式,官网列出 Codex、Cursor、Gemini CLI、Zed 等工具兼容;没有必填字段,就是普通 Markdown。
- agents.md 官网:大型 monorepo 可在每个子项目放一个 AGENTS.md,Agent 读取目录树里最近的那个,最近的优先;官网同时写明用户在对话里的明确指令优先于一切。
- Cursor 官方文档:支持项目根目录和子目录里的 AGENTS.md;子目录的 AGENTS.md 在处理该目录及其子目录的文件时自动生效,与上层指令合并,更具体的优先。
- Claude Code 官方文档:AGENTS.md 的读取规则见上文,且官方说明通过设置读取的 AGENTS.md 与 CLAUDE.md 有几处不同,例如 InstructionsLoaded hook 不会触发。
各工具对 AGENTS.md 的具体读取行为和版本要求,请以各自官方文档当前页面为准。[2]
来源
以下均为官方页面,核验日期见各条;链接指向核验时的版本。