Appearance
写了上百个Skill后,总结了实操方法和思考。
Skill和Prompt的区别
底层逻辑相同
Skill和Prompt做的是同一件事:让AI按照一套SOP标准去作业。
关键区别
| 维度 | Prompt | Skill |
|---|---|---|
| 调用方式 | 手动指定 | 模型自动判断 |
| 复杂度 | 信息量有限 | 可包含脚本、文档、素材库 |
| 适用场景 | 简单对话 | 复杂SOP流程 |
我的理解: Skill并不是一个大号的Prompt,它是一套可以让AI完成更加复杂SOP的作业系统。
写Skill的4步流程
不要一开始上来就设计Skill,先和AI跑出效果,再封装成Skill。
步骤1:跑通场景
先和AI定好目标,把真实场景跑通。不需要一开始做到完美效果,先拿到一个自己认可的结果。
步骤2:复盘过程
和AI讨论整个过程中:
- 哪些是正向的流程?
- 哪些是负向的流程?
- 哪些内容应该保留沉淀?
步骤3:封装Skill
让AI基于复盘结果进行Skill封装。从真实成功经验中提炼出来的流程,往往比凭空设计的效果好很多。
步骤4:回溯测试
开一个新对话,测试Skill能否稳定复现类似结果。如果不稳定,定位问题,优化Skill流程。
核心理念: 不是先设计再验证,而是先跑通,再复盘,再封装,再回溯。
Skill的组织结构
Agent调用Skill时,分多层级渐进式加载:
第一层:Skill描述
yaml
name: xxx
description: 当用户提出...需求时,应该使用这个Skill这两个字段告诉模型这个Skill是做什么用的。描述要清晰明确,避免模型错误调用。
第二层:SKILL.md主流程
模型判断需要调用某个Skill后,读取SKILL.md了解主流程。
最简单的Skill只需要一个SKILL.md:
- 这个Skill是干什么的
- 适合什么场景
- 整体作业流程是什么
- 最后应该输出什么结果
第三层:参考资料
- references(参考资料)
- scripts(脚本)
- assets(素材)
这些是主流程下各个阶段调用内容的补充。
理解: name和description负责触发,SKILL.md负责主流程,参考资料负责在复杂场景下补充能力。
Skill的进化迭代
Skill并不是一次就可以做出完美产品,它需要人的多次迭代。
迭代维度
- 这个Skill根本上要做的问题是什么? 不要做着做着过界了
- 当前Skill做得不好的点是什么? 这次要优化重点要解决什么问题
迭代案例
多视角深度分析Skill:
- 1.0:subagent自由选择视角 → 问题是视角不稳定
- 2.0:给每个sub
