SRE Agent 设计笔记 08:从 Prompt 到 Skill

状态:大纲

核心论点

避免 prompt engineering 的方式不是写更好的 prompt,而是把 prompt 中的质量约束抽取到 Spec 里持久化。Prompt 退化为触发器(「帮我做 X」),Spec 承载所有的过程约束和质量定义。好的 Skill 不是限制过程步骤,而是定义产出的终态属性。Skill 是 prompt engineering 的退出路径。

大纲

1. 问题:两种 Prompt 的差距

  • Prompt 1:「帮我实现 xx」
  • Prompt 2:「帮我实现 xx,验证编译通过且功能正确,收敛时写一个 .sh 验证」
  • Prompt 2 比 1 多的不是「更多指令」,而是两样东西:终态定义(done = 编译+功能验证)和收敛路径提示(写 .sh)
  • General agent 收到 prompt 1 无法自发走向 prompt 2 的 workflow:缺 spec、缺 loop 机制、缺 hook

2. Skill 是持久化的 Spec

Prompt Spec (Skill)
生命周期 一次性 持久化,跨 session 复用
编码者 每次手写 一次编码,反复触发
质量保证 取决于写 prompt 的人当次的完整度 持续积累,每次 failure 都能改进
复利效应
  • Prompt 是一次性意图表达,Skill 是持久化的 Spec 封装
  • 有了 skill,prompt 1 就够了:agent 加载 skill 定义的 spec,自动走向包含验证的 workflow

3. 正例分析:Deep Research Workflow

三条声明式约束,每条都不限制过程步骤,只定义产出属性:

Overlap ≥50%

  • 不是「agent A 做完后 agent B 检查一遍」(命令式)
  • 是「维度划分时边缘模糊」(声明式)
  • 交叉验证从信息冗余中自然涌现,不依赖 agent 的「检查意愿」

URL 作为证据门控

  • 「没有 URL 的引用不算引用」是机器可验证的规则
  • 不是 prompt 里的提醒(「记得附来源」),是报告格式的硬约束

单一交付物

  • 「只生成一个最终报告,不保存中间结果」强制收敛
  • 没有「我做了很多事情」的逃逸路径

4. 好 Skill 的判断标准

  • 核心标准:定义的是产出的终态属性(声明式),不是执行的过程步骤(命令式)
  • 终态属性必须 machine-verifiable:「写好代码」不合格,「编译通过 + 测试通过」合格
  • 和第五篇(声明式约束)的关系:同一个原则在不同层面的应用

5. 复利机制

循环:

  1. 简单 prompt 触发 workflow
  2. 某个质量维度出问题(代码能编译但功能不对)
  3. Failure 编码回 spec(「verify.sh 必须包含至少一个功能冒烟测试」)
  4. 下次同样 prompt 触发时,spec 已包含新约束

类比:SRE postmortem → runbook 循环。每次事故产出一条 runbook 条目,runbook 越来越厚,oncall 处理同类问题越来越快。Skill 是 agent 的 runbook。

Deep Research Workflow 的 overlap ≥50% 规则很可能来自某次调研中 sub-agent 信息不重叠、无法交叉验证的经历。

6. 经济学基础

  • Cost inversion(生成便宜验证贵)下,可复用的验证定义是最稀缺的资产
  • Prompt 每次重新编码验证标准,是 O(n) 成本
  • Skill 持久化验证标准后,是 O(1) 摊销成本
  • 这就是 Spec 的核心价值:把一次性的意图表达转化为可积累的工程资产

7. 推广:Skill 作为 Prompt Engineering 的退出路径

  • 不是「学会写更好的 prompt」,是「把 prompt 中的质量约束提取到 Skill 里」
  • Prompt 退化为触发器,Skill 承载质量定义
  • 长期来看,一个团队的 Skill 库的丰富程度决定了它使用 agent 的有效性
  • 类比:一个 SRE 团队的 runbook 库决定了它的 oncall 效率

涵盖的 Topic

  • Topic 16: 从 Prompt 到 Skill

源文件引用

  • rules/skills/workflow_deep_research_survey.md — 正例分析的主源文件(overlap、URL 门控、单一交付物)
  • contexts/thought_review/agentic_control_theory_primitives_20260413.md — Spec 作为原语的理论位置,声明式 > 命令式
  • contexts/thought_review/eval_as_measurement_system_20260331.md — cost inversion 作为经济学基础
  • contexts/thought_review/agent_sre_production_systems_synthesis_20260330.md — Agent as Code 三层 spec,Skill = Layer 2 Capability Spec
  • rules/skills/bestpractice_agent_reliability_engineering.md — Skill 作为 Spec 封装的实践案例