返回 FEED
AGENT2026-06-12

规格驱动的 Agent 开发:三个 Skill 把 Agent 拉回正轨

一句话主张

想增加 Agent 做对事情的几率,你应该在写规格来引导它。

简单说:写产品规格描述用户行为,写技术规格描述实现策略。两个都应该写成 MD 文件,和实现 PR 一起 check in,让队友能 review。

用 Skills 把整个流程编码下来。

三 Skill 流程

Warp 把这套流程开源在 github.com/warpdotdev/common-skills。这个流程在 Warp 内外都适用,全部开源供你改造成自家项目的 spec

1. /write-product-spec — 从产品 spec 起步

Skill 在当前 repo 的 specs/<issue> 目录下创建 PRODUCT.md

PRODUCT.md 的目标是从用户视角规格化一个特性。它是特性的 "what"。

应当包含:

  • 引用 Figma mocks、截图等
  • 格式:user stories + 一份极详尽的可被 agent 验证的产品不变式清单(product invariants)

关键:这些不变式必须能被 Agent 在代码里验证或者用 computer use 验证。不变式是可测试的承诺,不是模糊的形容词。

2. /write-tech-spec — 接着做技术 spec

Skill 在同一 specs 目录下创建 TECH.md

TECH.md 的目标是规格化特性的实现策略它是特性的 "how"。

应当包含:

  • 总体架构指导
  • 具体的代码位置
  • Agent 写代码时需要知道的任何东西

3. 让 Agent 实现 specs

这一步应该和任何 agent 一起工作,包括较低 reasoning 等级的。

规格写好之后,模型只要能读懂 MD 就能实现——这就是为什么 PRODUCT.md 里的不变式要写成可被 agent 验证的形式(不是"系统响应快",而是"P95 延迟 < 200ms,可用 bench.sh 跑出结果")。

4. /validate-changes-match-specs — 验证实现匹配规格

光让 Agent 实现 specs 是不够的——你还需要确保它做对了。

在 review 实现 PR 时,Warp 内部用一个 Skill /validate-changes-match-specs,让 Agent 复查自己的工作,把任何不一致回传过来。然后 Agent 带着这些不一致跟人走一遍,由人决定怎么解决。

这一步把"实现-规格"对齐变成可重复的 Agent 流程,不是依赖 reviewer 细心。

5. 用 computer use 验证

Warp 内部还有个 Skill,用 Oz 做 computer use 验证 UX 改动。它为 Agent 创建一个云 sandbox,给它鼠标和键盘访问权限。Warp 的桌面 app 是 Rust 写的——这个 sandbox 是必需的,Agent 才能端到端验证。

安装

npx skills add warpdotdev/common-skills

这套流程在解决什么

把"agent 写出对的东西"从一个模糊期望变成工程问题

没规格的 Agent 时代Spec-driven 的 Agent 时代
"做个登录页"user stories + 10 个可验证的不变式
Agent 自由发挥Agent 按 spec 实现,按 spec 验证
依赖 reviewer 抓 bugAgent 自我验证 + reviewer 二次复核
"差不多就行""跑一下 validate-changes-match-specs"

翻译

这篇文章单独看是技巧——3 个 Skill 怎么用。放进 4 篇的大框架里看是一个支柱

支柱解决什么出处
Context 是稀缺资源怎么把上下文按 L1/L2/L3 分层Peter Wang
Tool 是 trust boundary怎么定义 tool contract 的 8 条问题dongxi_nlp
Memory 决定准确率怎么用语义记忆避免反复重读Sentra / ashwingop
Spec 是 Agent 读得懂的契约怎么把"做什么"写成可验证的不变式Zach Lloyd

四篇合起来:强模型时代,Agent 工程的四大支柱是 Context 分层、Tool 契约、Memory 语义、Spec 驱动。每一根支柱都把"模糊的人类期望"翻译成"可被 Agent 读取、验证、复现的工程对象"。

AgentBase 这样的产品级 Agent 引擎要做的事,就是把这四根支柱产品化——L1/L2/L3 的缓存层(参考 Shortcut)、tool lifecycle 的 7 步合约(参考 dongxi)、任务范围内语义记忆(参考 Sentra)、spec 驱动的 5 步开发循环(参考 Warp common-skills)。