
你有没有这种体验:在 CLAUDE.md 或 AGENTS.md 里写了十几条规则,AI 编程助手开头几步还照做,到后面就开始放飞自我。你以为规则写少了,于是继续加,加到 50 条、100 条,结果更乱,AI 根本不知道该优先遵守哪条。
哥伦比亚大学的人机交互团队 Jenny Ma、Sitong Wang、Joshua H. Kung 和 Lydia Chilton 教授刚刚发表了一篇论文,标题叫 Zoro: Active Rules for Reliable Vibe Coding,直接戳中了这个痛点:规则文件是氛围编程中对齐人机意图的主要手段,但它们是被动文本,AI 想遵守就遵守,不想遵守就跳过,你根本不知道它有没有在遵守。
核心发现只有一个:规则文件的问题不在数量,在于被动。Zoro 把规则从静态文档变成了主动控制。
三步框架:Enrich、Enforce、Evolve
Zoro 的核心是一个叫 Enrich-Enforce-Evolve 的三步框架,直接嵌入编程 Agent 的工作流:
第一步 Enrich(丰富):当 Agent 生成实现计划后,Zoro 自动把相关规则注入到每个步骤里,让规则跟具体任务绑定,而不是漂浮在上下文窗口的某个角落等待被遗忘。
第二步 Enforce(执行):Agent 在执行每个步骤时,必须提供代码证据和单元测试来证明自己遵守了规则。这不是靠自觉,而是靠强制验证。
第三步 Evolve(进化):用户在每一步都可以对规则的应用效果做批注,这些反馈在会话结束后被聚合成对规则集的迭代更新。规则不是越写越多,而是越写越精确。
关键数据:规则遵循率提高 57%
论文的技术评估跑了 36 个氛围编程会话,对比标准氛围编程和使用 Zoro 的情况。结果:Zoro 把规则遵循率提高了 57%,同时没有降低功能完成度。
更有意思的是用户研究的发现:12 个参与者在使用 Zoro 后,控制 Agent 的策略从提示词工程转向了规则工程。也就是说,用户不再反复在聊天框里强调同一件事,而是把意图编码进规则文件,然后让系统去强制执行。
为什么被动规则会失效?
论文引用了 Anthropic 和 GitHub 自己的数据:规则在会话开始时加载一次,然后随着上下文增长逐渐被淹没。Anthropic 2026 年的文档承认,长会话中规则的注意力权重会衰减。GitHub 的 Codex 团队也发现,规则文件在长任务中的遵循率显著下降。
这跟我们在实际使用中的体验完全吻合。你在 CLAUDE.md 里写“始终使用 TypeScript Strict 模式”,Agent 前三步遵守了,到第 15 步开始给你生成 any 类型。不是 Agent 故意偷懒,是上下文窗口里的规则信号被新信息稀释了。
从提示词工程到规则工程的转变
这个发现值得单独拿出来说。论文的用户研究表明,当规则变成可见、可交互的控件后,用户的行为模式发生了质变:
以前用户反复写同一条提示词,试图用措辞变化来提高遵循率。现在用户把意图写进规则文件,让系统自动对齐。以前用户在代码审查时手动检查每条规则的执行情况。现在 Zoro 强制 Agent 在每一步都展示证据,审查变成了对证据的确认而非从零开始排查。
这个转变的本质是:从试图让 AI 理解你的意图,变成了建立一套系统让 AI 不得不遵循你的意图。
实操启示:你现在能做什么?
即使不用 Zoro(它目前是个研究原型),论文的思路也可以立刻应用到现有的氛围编程工作流里:
规则与任务绑定:不要在文件顶部堆砌规则。在 Agent 生成计划后,把相关规则手动关联到每个步骤的描述里。你可以这样做:在提示词里要求 Agent 先输出计划,然后在每个计划步骤后面附上对应规则编号。
要求证据输出:在规则里明确要求 Agent 在代码变更后输出一段简短说明,解释它如何遵守了某条规则。这相当于手工模拟 Zoro 的 Enforce 步骤。
定期修剪规则集:每完成一个项目迭代,检查规则文件,删除互相矛盾的规则,合并重复的规则。把笼统的规则(如“写好注释”)拆解成具体的规则(如“每个公开函数必须有 JSDoc 注释,包含参数类型和返回值描述”)。
利用现有工具的规则分层:Cursor 支持 .cursor/rules 目录下的规则文件分层,Claude Code 支持 CLAUDE.md 的全局和项目级分层,Codex 支持 AGENTS.md 的全局和仓库级分层。把通用规则放在全局,项目特定规则放在局部,避免规则堆砌。
论文的局限与未来
Zoro 目前只在编码场景验证,作者承认在更通用的 Agent 场景(比如数据分析、文档生成)中,规则的激活和验证机制需要重新设计。另外,57% 的提升是在受控环境中得到的,真实项目中的复杂规则和长会话是否还能保持同样的效果,还需要更多验证。
不过,这篇论文提出了一个清晰的方向:规则文件不应该只是一段 AI 可能看也可能不看的外挂文本,它应该成为编程过程中的主动控制层。对于任何在氛围编程中跟 AI 的不靠谱行为斗争过的人来说,这个方向值得认真对待。
引用来源:
- Jenny Ma et al., “Zoro: Active Rules for Reliable Vibe Coding”, arXiv:2604.15625v2, Columbia University, 2026
- Anthropic, “Effective context engineering for AI agents”, 2025
- GitHub Copilot Codex documentation on AGENTS.md, 2026
- Cursor rules documentation, 2026
- arXiv:2604.15625, Enrich-Enforce-Evolve framework technical evaluation
- OpenAI Codex AGENTS.md specification, 2026