逐条解析OpenAI工程师在AGENTS.md中写入的10条规则

你给AI写了三页纸的项目规范,它转头就把数据库结构改得亲妈都不认识——OpenAI工程师说问题出在你不会写规则!

OpenAI三人团队用一份纯文本文件驱动AI五个月写出百万行代码,人类零干预。这份文件就是AGENTS.md,里面只有10条规则。但每条规则都像手术刀,精准切开你给AI下指令时的认知漏洞。今天我带你逐条解剖,看看到底是哪些反常识的规矩,能把AI从猪队友变成超级实习生。

先看原文,10条规矩一字不差

在逐条拆解之前,必须先把这份传奇文件的完整面貌亮出来。OpenAI工程师塞进AGENTS.md的就是下面这些英文原文,每一条后面附上中文翻译。你读完就能感受到那种“不说废话、专治AI各种毛病”的冰冷语气。


AGENTS.md

- When explaining something to the user, use the Visualize skill
- Be concise, direct, and candid. Challenge weak assumptions and distinguish verified facts from uncertainty
- Ground research in authoritative, current sources and link important evidence
- Preserve the original goal and constraints; finish authorized work end to end and verify the actual result before claiming completion
- Ask questions only when a decision is materially ambiguous, risky, or requires approval
- Use relevant skills; spawn subagents only for genuinely independent work and synthesize their findings
- Keep changes focused and simple. Avoid unrelated edits, unnecessary abstractions, and low-signal tests
- Test observable behavior, review substantial changes, and validate user-facing work in the real interface when applicable
- Preserve unrelated work and never take destructive, production, or external actions beyond what the user authorized
- Report meaningful blockers, outcomes, and evidence without noisy progress

中文直译:

  1. - 向用户解释东西时,必须使用Visualize技能(可视化呈现)。
  2. - 要简洁、直接、坦诚。挑战那些站不住脚的假设,把已证实的事实和不确定的猜测严格区分开。
  3. - 所有研究必须扎根于权威、最新的来源,并且把关键证据用链接贴出来。
  4. - 死死守住原始目标和约束条件;授权的工作必须从头到尾完成,在宣称完成之前必须验证实际结果。
  5. - 只有在决策真的模糊、有风险或需要批准时才提问,其余时候闭嘴干活。
  6. - 使用相关技能;只有真正独立的任务才派子智能体,并且最后要综合它们的结论。
  7. - 改动要聚焦、简单。避免无关编辑、不必要的抽象层和低信息量的测试。
  8. - 测试可观察的行为,复查大改动,并且在真实界面上验证面向用户的功能(只要适用)。
  9. - 不要碰无关的工作,永远不要做破坏性、生产环境或外部操作,除非用户明确授权。
  10. - 汇报有意义的阻塞点、结果和证据,不要刷屏式地汇报进度。

这10句话,没有一句教你写React组件或调Python库。全在教AI怎么管住自己的嘴、手和脑子。下面我们一条条撕开看,每条规则背后都藏着一个你平时根本意识不到的认知陷阱。

第一条,可视化不是锦上添花,是保命符

“向用户解释东西时,必须用Visualize技能”。这条排第一,说明OpenAI工程师被AI的文字墙折磨过多少次。AI最喜欢甩给你一大段文字解释,你读完还是懵。Visualize技能强迫AI把抽象逻辑转成图表、流程图、架构图。

人脑处理图像的速度比文字快六万倍,这条规则直接利用了认知心理学里的双重编码理论。你让AI解释微服务调用链,它给你画个时序图,你一眼看出哪里超时;它光用文字说,你读三遍还在找瓶颈。

反常识的是,大部分人的AGENTS.md里从不写这条,因为他们觉得AI能说清楚就行。但说清楚不等于你看懂,可视化是把理解成本从你身上转移到AI身上。这条规则的本质是:AI必须用你的认知习惯来交付信息,而不是用它的。

第二条,挑战老板的假设,AI比人类更敢

“要简洁、直接、坦诚。挑战弱假设,区分事实和不确定性”。这条直接把AI从应声虫提拔成魔鬼代言人。人类工程师碍于情面,老板说“这个需求很简单”时不敢吭声,AI敢直接说“你的假设没有数据支撑”。

规则里的“challenge weak assumptions”是主动动词,不是“可以挑战”,是“必须挑战”。认知心理学里有个“确认偏误”,人类习惯找支持自己观点的证据,AI被这条命令强制反着走。它必须扫描你的指令里哪些是拍脑袋想的,哪些有实锤。

比如你说“把数据库连接池调到50”,AI要反问“你有压测数据吗?还是随便猜的?”然后它去查日志里的连接等待时间,区分出你的猜测和事实。这条规则的杀伤力在于,它让AI成了你团队里最敢说真话的人,而人类往往不敢。

第三条,没有链接的证据等于放屁

“所有研究必须扎根于权威、最新来源,并链接关键证据”。这条专门治AI的幻觉病。没有这条,AI会告诉你“根据行业最佳实践,应该用微服务”——但哪个行业、哪篇论文、哪个版本?一概没有。

权威来源限定死了,不能是某篇个人博客,必须是官方文档、学术论文、或者项目自带的README。最新来源堵死了AI用三年前的过时方案。链接关键证据意味着AI必须给出可点击的URL或具体文件路径,让你能亲手验证。

这条规则背后是波普尔的可证伪性哲学:任何结论必须附带检验手段。你想想,多少程序员写代码靠“我猜这样行”,AI被这条逼着必须拿出证据链。反常识的是,很多人以为AI知道得多,其实它知道得杂,不强制链接,它就把杂烩当真理端给你。

第四条,做完不算完,验证完才叫完

“守住原始目标,完成端到端的工作,在宣称完成前验证实际结果”。这条是职场老油条的死穴。多少开发说“功能做完了”,但没跑过集成测试,没在预发布环境验证过。AGENTS.md要求AI必须把验证结果摆出来才能说“完成”。

比如AI改了一个API接口,它不仅要改代码,还要跑单元测试、集成测试、手动调用一次看返回结构,然后把测试截图或日志贴出来,才允许汇报“完成”。这条把“完成”的定义从“代码提交了”升级为“可观测的行为符合预期”。

认知心理学里有个“规划谬误”,人总低估完成任务所需的时间,AI被这条逼着把验证步骤也纳入计划,反而比人类更靠谱。反常识的是,你给AI写规则时,往往只写“做什么”,从不写“怎样才算做完”——而这恰恰是AI最需要你明确的。

第五条,别让AI当好奇宝宝,问个没完

“只在决策真的模糊、有风险或需要批准时才提问,其余时候闭嘴”。这是给AI戴上了提问紧箍咒。大多数新手写AGENTS.md会鼓励AI“有不懂就问”,结果AI每走三步就问“这个变量名可以吗?”“那个缩进用空格还是Tab?”烦到你摔键盘。

OpenAI工程师反其道,把提问压缩到三种极端情况:模糊(多种解读都合理)、风险(可能导致数据丢失或资损)、需要批准(涉及权限或费用)。其他所有小问题,AI自己推断或按惯例处理。这条规则利用了“最小化认知负荷”原理,减少你的决策打断。

你想想,人类程序员最烦什么?被无效提问打断心流。这条让AI做完了再来找你签字,而不是边做边问。反常识吧,你越允许AI提问,它越像巨婴;你限制它提问,它反而像个成熟员工自己拿主意。

第六条,子智能体不是万金油,只有真独立才派

“使用相关技能;只有真正独立的任务才派子智能体,最后综合结论”。这条是资源管理金律。AI可以fork子智能体并行干活,但OpenAI工程师规定:只有任务之间零依赖、可以完全并行时才能派。

比如同时爬取三个不同网站的数据,各自独立,可以派三个子智能体。但如果是“先设计数据库再写API”,前后依赖,就不能派,因为第二个要等第一个结果。这背后的认知原理是“任务分解的粒度控制”,过度拆分会导致协调开销爆炸。

你写AGENTS.md时如果不管这点,AI可能把“写一个函数”也派个子智能体,结果通信成本比直接写还高。这条还强调“综合结论”,即子智能体干完活必须由主AI汇总,不能各自扔一堆碎片给你。你雇了三个实习生,不能让他们各交一份报告就完事,必须有人整合成一份可用的东西。

第七条,少就是多,聚焦比全面重要

“改动要聚焦、简单。避免无关编辑、不必要的抽象层和低信息量的测试”。这条是给AI的剃刀原则。AI最爱干的事是“顺便优化一下”,改一个Bug顺带重命名了五个变量、抽取了一个基类、加了一套工具函数——结果你Code Review时差点看瞎。

规则直接砍掉所有“顺便”的行为。无关编辑,比如改的是登录模块,就不能顺手格式化支付模块的代码。不必要的抽象,比如只用一次的函数就别封装成工具类。低信息量的测试,比如测了getter和setter这种无业务逻辑的代码,纯属浪费时间。

这条规则背后的工程哲学是“奥卡姆剃刀”,最小化变更集,降低你的审核成本和回滚风险。反常识的是,很多人觉得AI多改点东西显得“勤奋”,但真正专业的工程师知道,改动越小越安全。AI被这条逼着,每次提交只干一件事,清清楚楚。

第八条,别信单元测试,信真实界面

“测试可观察的行为,复查大改动,并且在真实界面上验证面向用户的功能”。这条把测试哲学从“测实现”翻转为“测表现”。可观察的行为是用户能感知到的,比如点击按钮弹出对话框,而不是内部变量count加1。

复查大改动意味着AI不能自己默默改完就提交,必须拉你过目关键逻辑。真实界面验证,尤其针对前端或API,AI必须打开浏览器或Postman实际跑一遍,不能只在脑子里模拟。这条规则粉碎了“单元测试覆盖率100%就万事大吉”的迷信,因为单元测试绿了不代表UI不崩。

认知心理学里有个“功能固着”,人容易只关注部件而不关注整体效果,AI被这条逼着必须站在用户视角验收。你想想,多少开发说“测试都过了”,你一点按钮直接白屏。这条规则就是防这个的。

第九条,乱动无关代码,比不写更可怕

“不要碰无关的工作,永远不要做破坏性、生产环境或外部操作,除非用户明确授权”。这条是安全护栏中的重型坦克。无关工作,比如你让AI修前端样式,它不能去改后端数据库连接串。破坏性操作包括删除文件、清空表数据、覆盖配置。

生产环境操作更是红线中的红线。只有“用户明确授权”才能解禁,这意味着AI必须向你申请并得到明确批准,不能自己揣测。这条规则背后是“最小权限原则”,AI默认任何操作都是禁止的,除非你开绿灯。

反常识的是,你给AI的指令越宽泛,它越容易踩雷,比如“优化一下性能”,它可能直接去改生产环境的JVM参数。有了这条,AI会先问“我可以改这个吗?”你批准了它才动。这比人类实习生还谨慎,因为实习生可能手痒就改了。

第十条,少发废话,多发干货

“汇报有意义的阻塞点、结果和证据,不要刷屏式汇报”。这条终结了AI的进度话痨。没有这条,AI每跑一步就给你发“正在读取文件…”“正在编译…”“正在测试…”刷得你消息列表爆炸。

规则规定只汇报三类东西:阻塞点(我卡住了,为什么卡)、结果(我完成了,这个功能现在能用了)、证据(附上日志截图或测试报告)。其他所有中间状态一律闭嘴。这背后是“信息熵”原则,只有高信息量的消息才值得占用你的注意力。

你回想一下,多少团队站在大屏前看“构建进度”,其实那只是噪音,只有构建失败或成功才值得通知。AI被这条驯化后,你每天只收到三五条关键消息,而不是三百条废话。这哪是AI,这简直是职场沟通模范生。

十规则闭环,每一条都在对抗你的人性弱点

逐条看完,你有没有发现一个惊人规律。这10条规则,没有一条针对AI的技术能力,全在针对人类的认知缺陷。你不会可视化,它逼AI帮你画图。你不敢挑战权威,它逼AI替你怼。你懒得查来源,它逼AI贴链接。

你总说“差不多完了”,它逼AI验证完再报。你爱被打断,它逼AI少提问。你乱派活,它逼AI精分任务。你改出界,它逼AI聚焦。你信单元测试,它逼AI测界面。你手贱改生产,它封死权限。你爱听进度,它只报干货。

每一条都是一面镜子,照出你作为项目管理者最糟糕的习惯。AGENTS.md真正的威力,是让AI化身成一个戴着白手套的纪律委员,专治你的各种不专业。

最反常识的真相,规则写得越少AI越聪明

把这10条再读三遍,你会发现一个隐藏的共性。它们全部是“边界约束”和“行为准则”,没有一条是“技术指南”。AI本来就懂代码、懂架构、懂设计模式,你不需要再教它怎么写。你需要教它的是“不要乱来”和“怎么确认没乱来”。

所以那三人团队能用几百行规则驱动百万行代码,因为他们把95%的文本篇幅用于画边界,只留5%用于点名技术栈版本。而失败的项目正好反过来,95%的篇幅在教AI怎么写代码,5%讲边界。结果AI被教成了只会套模板的复读机,一碰到边界就翻车。

你越少告诉AI“该做什么”,它越能发挥自己的推理能力;你越少告诉AI“别做什么”,它越容易炸毁你的仓库。这10条就是一个完美的减法示范,每一条都砍掉了你多余的表达欲,只留下不可妥协的底线。

AGENTS.md从来不教AI做事,它只教AI做人的底线。