跳到主要内容

EP11. 架构驱动生成技能

🏛️ 四个专精单元与打破沉默默认值

上一集:无架构生成为何危险,ASR 与 ADR 如何锚定模糊文档。

本集打开 .opencode/skills/*/SKILL.md 下四个核心技能——各有原则与硬约束。


1. adr-writing:「为何这样决定」

  • 核心规则: 1 ADR file = 1 concern

此处的 ADR 不限于软件「Architecture Decision Record」——而是 Any Decision Record:报告开篇、幻灯片流程、任何影响制品的结构选择。

  • 禁止假选项: 偏心的「稻草人 B 衬托 A」不允许。2–3 个选项须真实、权衡均衡。
  • 禁止散文墙: 长叙述埋没决策。每选项名称 + 2–4 条精炼要点,便于一眼比较。
  • 批准关卡: 新 ADR 在 adr/ 中以 proposed 起步;用户明确批准("好,选 B")后才变 approved——审计轨迹。

2. spec-writing:「我们约定要建什么」

  • 核心规则: Self-containment

ADR 定案后,spec-writing 写最终蓝图。一份 Spec 文件须足够说明建什么、怎么建。

  • Spec 内禁止引用 ADR:「见 adr/01-database.md」 的链接禁止。ADR 是 为何 的历史;Spec 是当下的 是什么——只写定稿需求,不写幕后辩论。
  • 可验证要点: 一条要点 = 一条需求或约束——核验可明确通过/失败。

3. spec-driven-generation:「按蓝图建造」

  • 核心规则: Spec is the only constitution and authority

输出文本或代码——但在生成前知道何时停

🛑 ASR 就绪关卡

"现在就出结果,别设计" 会触发关卡。不生成,而是要求就八个通用 ASR 类别做架构决策:

八个通用 ASR 类别: ① 目的与受众,② 制品形态,③ 范围边界,④ 质量门槛,⑤ 约束,⑥ 结构与构成,⑦ 集成与依赖,⑧ 流程与阶段

若首条提示与后续 Spec 冲突,Spec 永远优先——深思熟虑的蓝图才是真意图。


4. spec-driven-verification:「对照蓝图」

  • 核心规则: Dual-purpose verification (Deviation & Undocumented ASR)

生成后进入显微镜模式:是否匹配 Spec(Deviation)?AI 是否加了未声明结构(Undocumented ASR)?

- Deviation: Violates explicit spec (e.g. "PostgreSQL" but MongoDB used) → [must fix]
- Undocumented ASR: Not in spec but present in output (e.g. AI-added subsection) → [user choice]

🧐 处理 Undocumented ASR

AI 即兴不总错——有时更好。罪在于不经用户知情就黑箱化。核验报告写入 verification/,并问:确认?更新 Spec?修复?


📊 四技能摘要矩阵

技能核心角色输出路径硬性禁止
adr-writing按关切列备选与决策adr/{concern-slug}.md假选项、散文式长文
spec-writing将已批决策合并为一份蓝图spec/{requirement-slug}.mdSpec 内引用 ADR
spec-driven-generation仅从定稿 Spec 生成Artifact body files无 Spec 即生成(须过关卡)
spec-driven-verificationSpec 匹配 + 未记录结构扫描verification/{requirement-slug}.md未经用户确认即修复

🎬 下期预告

ADR → Spec → Generation → Verification 可灵活用于任何制品。

若领域高度特定且重复——幻灯片、博客系列?与其每次都审八个通用类别,不如当场铸造专用技能

下一集:generating-skill-creation——把架构本身技能化的元引擎。

「谁掌握架构,谁就掌握输出主权。最好的架构应编码为自动化技能。」


本系列介绍 Cocrates Harness 框架。Cocrates 是为苏格拉底式对话设计的智能体 Harness,让用户保持主体性并持续成长。