一个文件让AI Coding效率翻倍-AGENTS实践指南.md
一个文件让 AI Coding 效率翻倍:AGENTS.md 实践指南
核心观点
本文围绕一个核心问题展开:怎么写好一份 AGENTS.md? 作者以管控系统(Spring Boot + React前后端分离)为实例,结合半年多个项目维护经验,提出了一套完整的 AGENTS.md 方法论。核心理念用一句话概括:AGENTS.md 是地图,不是手册(Map, not Manual)——控制在200行的导航地图,告诉Agent"去哪找什么",详细内容放在链接文档里。

AGENTS.md 前世今生
起源
概念最早由Anthropic通过Claude Code的CLAUDE.md普及——运行时自动加载当前目录下的CLAUDE.md注入请求。这形成正向循环:维护好→表现好→更愿意用→更愿意维护。
碎片化时代
| 工具 | 上下文文件 |
|---|---|
| Claude Code | CLAUDE.md |
| Cursor | .cursorrules / .cursor/rules |
| Copilot | .github/copilot-instructions.md |
| Gemini CLI | GEMINI.md |
| Cline | .clinerules |
| AMP (Sourcegraph) | AGENT.md(单数) |
| OpenAI Codex | AGENTS.md(复数) |
统一标准
2025年5月Sourcegraph提议统一为AGENT.md,OpenAI买下agents.md域名提议复数形式AGENTS.md(理由:多Agent共用),AMP让步对齐。最终AGENTS.md成为事实标准,由Linux Foundation下属Agentic AI Foundation托管。截至2026年初,GitHub上超6万开源项目使用。Claude Code仍用CLAUDE.md但内容通用,ln -s AGENTS.md CLAUDE.md即可兼容。
没有AGENTS.md的四大痛点
1. 前后端上下文割裂
前后端分属不同仓库→AI只能打开一个仓库→切换丢失上下文→重新描述背景→效率低。
解决:monorepo,AI同一窗口看到Controller定义和前端API调用。团队不再区分前后端。
2. AI不认识私域组件
闭源组件库(ProTable/ProForm/ProAction)不在训练数据中,维护文档总滞后于实现。
解决:直接把组件库源码放进参考项目。源码永远不会过时,就是最准确的文档。
3. AI不知道项目规矩
异常用BusinessException还是RuntimeException、响应体统一包装还是手动构造、分层禁止跨层——AI不知道这些"潜规则",每次人工纠正完下次还犯。
4. AI不会启动项目不会自测
每人本地环境配置方式不统一,启动命令散落各处。AI改完代码只能停下来等人验证,工作闭环断裂,夜间自主执行不可能。
共同根源:项目的知识和规范存在于人的脑子里,而不是存在于AI能读到的地方。
核心理念:渐进式披露
写进AGENTS.md的内容(仅两类):
- AI理解项目全貌的必要信息——技术栈、仓库结构、核心模块、分层架构
- 违反会直接导致问题的硬性规则——编码规约、命名约定、禁止项
不写进去的内容:通过文档链接指向:
判断标准:AI不知道就会写出错误代码→放AGENTS.md;只是不够好→放docs/,AGENTS.md放链接。
五大实践
实践一:仓库聚合
从三仓分离→脚本聚合(frontend/ gitignore)→monorepo重构:
额外收益:AI可直接基于代码变更同步更新用户手册。
实践二:统一环境配置
所有环境变量统一配置在~/.(纯KEY=VALUE),启动脚本自动source。配套一键启动脚本封装JDK检测/优雅关闭/健康检查:
实践三:验证闭环
curl验证规范(解决AI在shell中的兼容性问题):
- 每个curl独立执行,禁止串联
- 用临时文件传递数据(避免zsh管道glob问题)
- Token获取模板化
- 排查路径明确
前端验证:Agent Browser能力(打开浏览器/操作页面/截屏对比)。
核心:写完代码不算完,自测过功能才算完——验证闭环是夜间Agent自主执行的前提。
实践四:自动化检查
分层依赖检查:shell脚本扫描Java import判断层级违规,输出WHAT+WHY+HOW格式:
质量检查命令矩阵:
规则优先级:能自动化检查的 > 写在AGENTS.md中的 > 口头约定的
实践五:参考项目引入
通过git submodule引入:
配合每个参考项目的架构说明文档(docs/design-docs/ref-*.md)作为"地图"——ref文档AI基于源码生成。
| 方式 | 优点 | 缺点 |
|---|---|---|
| 只写文档 | 轻量聚焦 | 滞后、覆盖不全、边界缺失 |
| 源码+架构说明 | 永远准确、覆盖完整 | 仓库体积增大、管理submodule |
AGENTS.md模板(建议≤200行)
实施建议
- 从/init或harness-creator开始:自动扫描项目结构生成初始版本
- Bad Case驱动迭代:AI犯错→判断全局规则(AGENTS.md)还是模块细节(docs/)→补充
- 规则要有执行力:重要规则必须有对应自动化检查
- 团队共建:遵循"地图"原则,细节文档不塞进AGENTS.md
- 标注读者:README给人、AGENTS.md给AI、scripts共用
关键引用
"什么都重要的时候,什么都不重要。"
"源码永远不会过时,它就是最准确的文档。"
"AI不知道这条信息就会写出错误代码→放AGENTS.md;只是不够好→放详细文档。"
"为AI写好AGENTS.md的过程,也是在为团队做一次知识梳理。"