Technical Guide
10. Skills 原理:把经验沉淀成可复用能力
理解 Skill 的定位:它不是更长的 prompt,而是把稳定工作方法、约束和工具策略沉淀下来。
Skill 不是更长的 prompt
prompt 更像临时指令。
Skill 更像一套可复用的工作方法。
比如“写研究报告”这件事,不只是告诉模型“请写得专业”。它需要流程:先收集资料,再确认来源,再整理证据,再写报告,最后检查文件产物。
这类流程就适合沉淀成 Skill。
Skill 解决什么问题
Agent 每次运行都靠临时 prompt,会有几个问题:
同类任务输出不稳定
质量约束容易漏
工具使用方式不一致
失败经验无法复用
Skill 解决的是复用和约束。
DeerFlow 的 Skill 目录
相关代码在:
backend/packages/harness/deerflow/skills/
能看到:
installer.py
parser.py
permissions.py
security_scanner.py
tool_policy.py
validation.py
storage/
这些名字说明 Skill 不只是文本文件。它涉及安装、解析、权限、安全扫描、工具策略和校验。
Skill 和 Tool 的区别
Tool:执行一个动作
Skill:指导一类任务怎么做
一个研究报告 Skill 可以要求 Agent 使用搜索工具、抓取工具、文件工具,但 Skill 本身不是工具调用。
这一篇你要记住
Skill 的价值不在“写得长”。
它的价值在于把已经验证过的做事方法固定下来,让 Agent 每次处理类似任务时少走弯路。
Skill 应该写到什么程度
Skill 不要写成大而全的规章制度。
比较好的粒度是:一个 Skill 对应一类稳定任务。
例如:
写研究报告
做代码评审
整理会议纪要
生成技术教程
每个 Skill 里只保留真正会反复用到的流程和约束。
判断一个 Skill 是否有用
可以看它是否解决了这几个问题:
同类任务是否更稳定?
输出质量是否更一致?
工具使用是否更少跑偏?
失败经验是否能复用?
如果只是把 prompt 换了个地方保存,那它还不是一个好 Skill。
什么时候不该写 Skill
一次性任务不需要 Skill。
还没验证过的方法也不要急着沉淀。先手工跑几次,确认流程真的有效,再把它写成 Skill。