深度 · 神机百见解读

EARS 需求语法:把「脑补」逼出来的不是咒语,是句子结构

一篇 615 粉作者的长文把 EARS 讲得诊断准、方法正、案例好,但漏了一个月——他教你手搭的四步,在 Amazon Kiro 里已是三个内置按钮;而「EARS 让 AI 写得更准」这个核心主张,至今没有任何对照评测支撑。落到机器人交付场景,它最值钱的是一张「待确认清单」。

本篇目录4 节 · 14 分钟
一分钟速览
  1. 结论:EARS(Easy Approach to Requirements Syntax)是 2009 年 Rolls-Royce 提的需求语法,航空/汽车/NASA 用了 17 年。它结构性保证的是「把洞逼出来」,不是「让 AI 写得更准」。
  2. 两个核查发现:① 作者手搭的四步,Kiro 里已是三个按钮(requirements.md 默认 EARS 记法 + Analyze Requirements 抓五类问题 + spec-kit 133k★ 已合并 EARS 扩展);②「EARS 提升 AI 编码质量」无对照评测,唯一同行评议实证研究是 10 人×3 条需求、0 引用、测的是人不是 LLM。
  3. 最值钱的迁移:用 EARS 的 If-Then 模式,把客户「你要什么效果」换成「如果 X 发生了,你希望它怎么做」——这份「待确认清单」就是机器人表演/租赁的报价依据和免责边界。
  4. 纪律:对外讲「把洞逼出来」(结构性保证),不讲「写得更准 30%」(可被一句话证伪)。
数据来源与边界
信源:@OMOisomo(O MO,615 粉)2026-08-15 发布的 X 长文(正文 5,205 字、26,855 浏览、收藏/赞=2.00×,典型工具书式)。一手核查对照 Alistair Mavin 官方 EARS 站、RE'09 原论文、Kiro 官方文档(Specs / Analyze Requirements,页面更新 2026-09-02)、github/spec-kit #1356/#3407(133,138★,2026-07-13 合并 EARS 扩展)、Salari et al. 2025(SN Computer Science 6:314,被引 0)。配图因出口代理阻断未能目视确认「prompt 锁在图片里」,系由 block 结构推断。核查日期 2026-09-03。
1作者的诊断,准

EARS 到底是什么

O MO 的核心洞察很锋利:「问题不在它有没有问清楚,在于追问只能解决『说不清』——脑补发生在你以为自己说清楚了的地方。」这句话是本篇唯一无争议、也最值钱的一句。

EARS 本身是 2009 年 Rolls-Royce 在分析航空发动机适航规章时提的需求语法,五种基本模式(Ubiquitous / Event-driven / State-driven / Optional / Unwanted)+ Complex(组合)。作者主动纠正了「五关键词 WHEN/WHILE/IF/WHERE/SHALL」这个流行误传,是全文最见功力处。事实层核查 8.5/10,出身、模式、采用方(Airbus/Bosch/Dyson/Honeywell/Intel/NASA/Siemens)全部对得上。

判断:EARS 只治句法歧义,不保证需求正确、必要、完整——作者自己守住了这条边界,值得加分。它和 User Story、Gherkin 各管一段:Story 管意图,EARS 管可验证行为,Gherkin 管测试自动化。
2两个核查发现

他漏了一个月

第一处:他教的手搭四步(AI 改写成 EARS → 你做裁判 → 贴进编码工具 → 一份规格三处复用),在 Amazon Kiro 里已是三个按钮。Kiro 的 requirements.md 默认就是 EARS 记法,内置 Analyze Requirements 自动抓五类问题(逻辑矛盾 / 歧义 / 冲突约束 / 未陈述假设 / 缺失边界),后两类正是作者说的「洞」。spec-kit(133k★,MIT)也已在 7 月 13 日合并 EARS 扩展(author/lint/convert 三个 opt-in 命令)。中文圈这轮 EARS 讨论,整体落后英文工具链约一个月。

「EARS 让 AI 写得更准」证据强度截至 2026-09-03
结构性保证(洞被逼出)
有,不依赖评测
可直接用
对 LLM 编码增益
无对照评测
不能对外讲
唯一同行评议的 EARS 实证研究:10 人×3 条需求、测的是人改写 EARS 去测 PLC、与 LLM 无关、被引 0;「返工减少 30–40%」等数字来自 SEO 内容农场,无可打开的一手报告

第二处:那组看起来很硬的百分比(返工减少 30–40%、审计准备减少 40–60%),追溯全是 SEO 内容农场,没有一篇给得出一手报告链接,有的正文还混入了「Ear Nose & Throat」这类自动生成串标。spec-kit 维护者自己也说「目前没有证明某格式优于另一格式用于 coding agent 的评测」。

3对神机百炼的迁移

把「待确认清单」做成产品

落到机器人交付,EARS 的 If-Then 模式正好是那 85% 需求对齐工作的采集表单。6 台 K1 足球项目最容易翻车的,就是「你没意识到要交代、对方觉得默认合理」的洞:

如果发生了你希望它怎么做(待确认)
单台机器人比赛中失去连接重启?换备机?继续 5 打 6?
场地光照中途变化(自然光/灯光)视觉识别应 ______
观众进入表演区域急停?避让?谁喊停?
电池第 15 分钟低于阈值轮换策略应 ______
写不出来的数字一律标 [待确认:谁拍板],绝不让自己或 AI 悄悄填默认值。这份清单本身就是报价依据和免责边界
判断:竞品卖「我们有几台机器」,我们卖「我们把所有『如果…怎么办』提前问完并写进交付单」。顺着 15/85 拆分往下走,EARS 的 If-Then 模式就是那 85% 的采集表单——这跟 RaaS 的差异化卖点是同一句话的两个版本。
4可执行性与一处提醒

最值钱的资产锁在图片里

全文唯一一个「可以直接复制」的 prompt,只以图片形式存在——在一个讲「让需求可解析、可复制」的题目下,用最不可复制的载体承载最该被复制的东西。可落地的是自己写一份中文 EARS skill:6 种模式(补上 Complex)+「每条规格最多 2 个关键字」硬约束 + 纯中文模板 + 文件路由表 + 待确认机制,并预置机器人表演/租赁场景的 If-Then 模板。注意检索到的现成中文 skill(42★)无 LICENSE,可参考结构自己写,不要直接 npx 装进生产流程。

一手信源:Alistair Mavin 官方 EARS 站 · RE'09 原论文 · Kiro 官方文档(页面更新 2026-09-02)· github/spec-kit #1356/#3407 · Salari et al. 2025, SN Computer Science 6:314 (DOI 10.1007/s42979-025-03843-3)。未能核实:作者同系列另两篇文章的存在与数据;Kiro 用户规模与付费数据。