第 7 章 · Skill:可复用的任务说明与资源
Skill 不是把知识训练进模型
本课程采用 Agent Skills 语境:把任务说明写在 SKILL.md 中,并按需附上模板、参考文件和脚本。应用发现技能后,可以将相关材料加入当前上下文。
这是运行时提供材料和流程,通常不改变模型参数;既不等于微调,也不自动积累每次对话中的经验。技能质量仍取决于说明、资料、工具与执行检查。
与其他材料怎样分工
| 形式 | 更适合保存什么 |
|---|---|
| 单次提示词 | 当前任务、输入文件、截止日期 |
| 项目规则 | 项目中广泛适用的约束和约定 |
| Skill | 某一类任务的步骤、模板、验收办法 |
| 知识库/RAG | 需要查询的事实和文档 |
| 持久记忆 | 应用明确保存并在之后取回的信息 |
| 脚本 | 可以确定性重复执行的转换和校验 |
提示词也能保存、共享;Skill 也会过期。它的价值在于把一类任务组织成明确、可加载、可维护的包,而不是“提示词说完就忘,技能永远记住”。
一个技能包的结构
meeting-notes/
└── SKILL.md
document-draft/
├── SKILL.md
├── templates/
│ └── gongwen.tex
└── references/
└── 公文格式规范.md
采用可移植格式时,name 使用小写英文字母、数字和连字符,并与技能文件夹名称一致;中文标题和说明可以放在正文中。SKILL.md 需要 YAML 元数据和 Markdown 正文。具体搜索目录由宿主产品规定。Agent Skills 规范
一些宿主采用逐步加载:先读名称和描述,任务相关时读完整说明,再读取所需资源。这可以减少无关内容占用上下文,但自动触发并不保证每次准确。
好技能要写出异常和验收
以会议纪要为例,不应只规定“语气正式”。还要说明:
- 怎样区分已决定事项、个人建议和未解决分歧;
- 负责人或期限未出现时怎样标注;
- 对“下周完成”这种相对时间如何处理;
- 怎样引用原始记录中的段落;
- 交付什么,以及哪些动作不在任务范围。
技能不应该宣称“保证零幻觉”或“保证符合全部标准”。提示词不能代替事实验证,模板也不能代替正式审批。
能不能跨工具复用
文件格式一致有助于迁移,但工具名称、运行时、安装路径、网络权限与依赖可能不同。能读 SKILL.md,不代表能运行其中的脚本或生成所需文件。
下载别人提供的技能时,先看说明和脚本会读写什么、访问哪里。不要把真实密钥放进技能包。多人共享时还应确定版本、来源、许可和维护人。
如何证明技能有效
先用不带技能的方式跑一个样例,再显式指定技能运行相同任务,比较遗漏和错误;还要加入信息缺失、相互矛盾和不应触发的任务。输出看起来像模板,不足以证明技能被加载,应结合技能列表、读取记录或工具日志判断。
练习: 把“写规范纪要”改写为三个可检查条件,例如“不虚构负责人”“未决事项单列”“每个决定附原文位置”。
下一章先检查环境,第 9 章再安装和验证示例技能。补充参考:OpenAI Skills 实现,该产品行为不代表全部宿主。