🧡 第七章 扩展能力:skill、Hook与MCP
📄 一句话概括

一份好 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 秒实验

  1. 挑一件你天天做的重复活,按三层写一份 skill。先写十几行,不要写几十行。
  2. 用一次,看它有没有被正确触发、有没有按步骤走、有没有给你验收。

常见误区

  1. 只写【怎么做】那一层。触发不了和验不了,比做法不详细严重得多。
  2. 把四件套里的【不要什么】漏掉。skill 只说做什么,不说别做什么,它就会顺手多做。
自测三问(点开对答案) 1. skill 的三层是什么? —— 什么时候用(描述)、怎么做(做法)、做完怎么验(验收)。 2. 最常见的失败是什么? —— 只写了中间那层——触发不了、验不了,一用就散。 3. skill 和规则文件的区别? —— skill 讲【这类活按这几步做】,规则文件讲【不许做什么】。

相关笔记