📄 一句话概括
一份好 skill 只有三层:什么时候用、怎么做、做完怎么验;最常见的失败是只写了中间那层——看起来很详细,一用就散。
📝 本节和前面几节的关系
三种机制里,skill 最值得先学。本节给出它的完整结构和写法。
一、skill 是什么
它是一份写清楚步骤的说明文件,存好之后,每次做同类的事它都照着走。 和规则文件的区别:规则文件说【不许做什么】,skill 说【这类活按这几步做】。 所以 skill 是做法,规则文件是底线。两者不冲突,一起用。
二、三层结构,缺一不可
描述(什么时候用)——这一层决定它会不会被触发。缺了它,你写了也白写。 怎么做(按哪几步)——缺了它,每次做法不一样,结果不稳。 怎么验(做完算不算对)——缺了它,做完了不知道成没成。 顺序不能反:先说什么时候用,再说什么时候做,最后说怎么验。
三、最常见的失败:只写中间那层
很多人写 skill 时把【怎么做】写得极其详细,步骤写得极细。 然后一用就散——因为它不知道什么时候该被叫出来,也不知道做完算不算对。 本节的演示真写了一份给你看,它只有十几行,但三层齐全。
四、怎么写好那三层
描述层:写【什么时候用】,不是写【这是什么】。区别在于前者能触发,后者不能。 做法层:写人话步骤,包括先问哪几句——第 2.6 节那四件套直接搬进来。 验收层:写成一句可执行的话(跑一遍测试、全过了、清单贴给用户)。
五、动手 Demo:skill 的三层结构
下面真写一个 skill 文件到临时目录,看一份够用的 skill 有多长。
skill = [u"---", u"name: 统一日期格式",
u"description: 把项目里的日期显示统一成 2026-10-15 这种写法",
u"---", u"", u"## 什么时候用", u"任务里出现日期格式不统一时。",
u"", u"## 怎么做", u"1. 先搜出所有涉及日期的文件,清单给用户看",
u"2. 问清楚:改不改测试目录?", u"3. 一次改一处,改完立刻检查",
u"", u"## 做完怎么验", u"跑一遍测试;把改动清单贴给用户核对。"]
实跑输出:
--------------------------------------------------------------------
skill 的三层结构
--------------------------------------------------------------------
下面真写一个 skill 文件到临时目录,看看一份好 skill 有几层:
生成 _tmp_ch7\SKILL.md:15 行
层 这一层回答什么 缺了会怎样
-------------------------------------------------------
描述 什么时候该用它 它根本不会被触发
怎么做 按哪几步走 每次做法不一样,结果不稳
怎么验 做完怎么算对 做完了不知道成没成
三层缺一不可,但**顺序不能反**:先说什么时候用,再说什么时候做,最后说怎么验。
最常见的失败是只写了中间那层——**看起来很详细,一用就散**。
生成的文件只有十几行,但三层齐全——这就是一份好 skill 的正常尺寸。 第二层里那句【问清楚改不改测试目录】,就是第 2.6 节四件套的直接搬运。
30 秒实验
- 挑一件你天天做的重复活,按三层写一份 skill。先写十几行,不要写几十行。
- 用一次,看它有没有被正确触发、有没有按步骤走、有没有给你验收。
常见误区
- 只写【怎么做】那一层。触发不了和验不了,比做法不详细严重得多。
- 把四件套里的【不要什么】漏掉。skill 只说做什么,不说别做什么,它就会顺手多做。
自测三问(点开对答案)
1. skill 的三层是什么? —— 什么时候用(描述)、怎么做(做法)、做完怎么验(验收)。 2. 最常见的失败是什么? —— 只写了中间那层——触发不了、验不了,一用就散。 3. skill 和规则文件的区别? —— skill 讲【这类活按这几步做】,规则文件讲【不许做什么】。- ☐ 下一节(7.3 hook:不是建议,是强制执行)
相关笔记
- 🐳 DeepSeek Harness技术架构原理 · 索引 — 扩展如何加载进上下文
- 🧡 Claude Code橙皮书 · 索引