← 返回实战场景
产品经理老王用 Skill 把需求文档写得明明白白

如何从 0 开始构建一个属于自己的 Skill


01 Skill 是什么

WHAT IS A SKILL

但在动手之前,还是有必要先搞懂它是什么。一句话定义 Skill,说白了就是一份给 Agent 的说明书。

📋

事情的背景是什么?一件事应该怎么干?遇到问题怎么处理?干到哪一步算完?有什么注意事项?

把这些问题的答案,加上你脑子里的经验、你的习惯,都沉淀成固定的规则,然后把它们写出来,打包。这就是 Skill。

以后 AI 遇到同类任务,就可以直接把这份手册直接翻出来看。然后按照流程推进、最终交付成品,不需要每次重复交代。

// 经验包 —— 所以 Skill 不是什么高科技,就是“一次写好、反复调用”的经验包。

02 Skill 的结构:五个模块

THE FIVE MODULES

明白了 skill 是什么,再来看看 Skill 的结构。做 Skill,最怕的就是一个 SKILL.md 写到底。几十行还行,超过 200 行,AI 每次都要全部看完,没必要、而且极难维护。这时候就要学会模块化设计。为了便于理解,我用一个“周报助手”Skill 举例子。

一个 Skill 的标准骨架(模块)大致如下:

// FIG.01 · 一个 Skill 的标准骨架
my-skill/ ├── SKILL.md # 必需:Skill 的门面 + 核心指令 ├── references/ # 可选:详细的领域知识文档 ├── scripts/ # 可选:确定性操作脚本 ├── examples/ # 可选:输入输出示例 └── assets/ # 可选:模板、字体等静态资源
如何从 0 开始构建一个属于自己的 Skill
如何从 0 开始构建一个属于自己的 Skill

每个模块负责什么,我一个一个说。

📌

SKILL.md

名片 + 大脑。对外告诉 AI 我是做什么的,对内放核心指令、决策原则、流程骨架和雷区。最好不超过 500 行。

📚

references/

知识库。行业术语、老板偏好、详细规范,一个主题一个文件,按需读取。

⚙️

scripts/

确定性的操作脚本。格式转换、数据清洗等每次都要一模一样的事,写成脚本,AI 只负责调用。

🖼️

examples/

样板间。放一两个输入输出样例,AI 看例子比看描述学得快。

📦

assets/

仓库。模板、图片、字体、Logo,统一放这里,脚本或指令中引用路径即可。

SKILL.md:核心文件,名片+大脑

这是 skill 必需要有的文件,对外,它是 Skill 的“名片”——告诉 AI 我是做什么的。例如周报 skill 就是帮用户写工作周报的,以后当用户说“写周报”“整理这周工作”“周五了”这样的触发词的时候,AI 就知道调用周报 skill 完成这份工作。

⚠️

铁律:一定要说清楚这个 skill 用来做什么,以及什么时候用这个 skill。把触发词写进去——“写周报”“整理这周工作”“周五了”。AI 就靠这些触发词来判断该调用哪个 skill。你写得越像人话,越详细,触发得越准。

对内,它是 AI 的“大脑”——包括决策原则、流程骨架、或者绝对不能做的事。第一,决策原则主要解决 AI 遇到分叉路口怎么选。第二,流程骨架,写清楚第一步干什么、第二步干什么……第三,写清楚绝对不能做的事。需要注意的是,SKILL.md 只放做决策必须知道的东西,最好不超过 500 行。

references/:知识库

放那些“需要的时候才看”的东西。比如行业术语表、政策文档、详细规范、FAQ、历史案例。拿周报助手 skill 举例:

  • 术语表.md:部门的黑话,“闭环”“抓手”“颗粒度”到底指什么。
  • 老板偏好.md:老板最关心哪几个数字,最烦什么样的表达。

这里有个讲究,references 并不是指一个文件,刚刚我们提到的术语表.md/老板偏好.md,都是单独文件,一个文件一个主题,而这些文件都放在 references 目录下。AI 在执行过程中,需要了解哪方面知识就去翻对应的文件。而在 SKILL.md 文件里,只需要交代一句话:“部门黑话不确定的时候,去看 references/术语表.md。”而不是把术语表全文抄进 SKILL.md,这就是模块化设计,也是 skill.md 决策功能的体现。

scripts/:确定性的操作脚本

什么叫确定性?就是每次执行都一模一样、错一步都不行的事。比如格式转换、数据清洗、批量重命名、从聊天记录里提取日期和事项。这种事如果让 AI 自由发挥,发挥 10 次,它能给你 10 个不同的格式。写成脚本,又快又不会错,AI 只需要负责“调用”,不用负责思考。

脚本怎么写?记住一个约定:输入输出要傻瓜化。比如 汇总.py,输入是一个文本文件,输出是整理好的事项列表。SKILL.md 里写清楚:“收集完聊天记录后,运行 python scripts/汇总.py 聊天记录.txt,把结果作为分类整理的输入。” AI 照着执行就行,不用理解脚本内部。

💡

什么时候该用脚本? 凡是“对了就行,错了就完”的环节,上脚本。凡是“没有标准答案,靠经验判断”的环节,让 AI 发挥。

examples/:样板间

放一两个输入输出的例子,配对放。比如 输入-聊天记录.txt 是一段乱糟糟的聊天记录,输出-周报样例.md 是整理好的周报。AI 看这样的例子比看文字描述学得快得多。你想让它输出什么格式,直接给个样例,比写 500 字描述词管用。

assets/:仓库

模板文件、图片、字体、Logo 这些静态资源统一放这里。比如你们部门周报有固定的 Word 模板,脚本里需要用到的,只需要一句话引用路径就行:“最后用 assets/周报模板.docx 的样式输出。”

03 五个模块怎么配合

HOW THEY WORK TOGETHER

再串一遍,一个任务进来之后发生了什么:

// FIG.02 · 一个任务进来之后,发生了什么
01 用户说“帮我写周报”,AI 读到 SKILL.md 的 description,对上了,Skill 激活。
02 AI 读 SKILL.md 正文,知道流程骨架和雷区。
03 收集信息时,跑 scripts/汇总.py,把聊天记录变成事项列表。
04 写正文时,翻 references/老板偏好.md,确认老板关心的数字;看 examples/输出-周报样例.md,确认格式。
05 最后套用 assets/周报模板.docx 输出。

大脑做决策,手干活,知识库备查,样板间定标准,仓库出物料。各干各的,互不添乱,这就是模块化。好管理、好修改、还不乱。

04 渐进式披露:AI 是怎么读 Skill 的

PROGRESSIVE DISCLOSURE

理解了模块化,还要知道 AI 是怎么读 Skill 的。我把它叫“渐进式披露”,一共分三层:

// FIG.03 · 渐进式披露的三层读取机制
1
第一层:只看名字和 description

决定用不用这个 Skill,所以 description 是门面。

2
第二层:读 SKILL.md 正文

Skill 被选中了,继续读 SKILL.md 的正文。如果没选中直接换下一个,正文不读了。

3
第三层:按需读取 references 和 scripts

执行过程中,按需读取 references 和 scripts。

🚫

设计红线:这个机制核心就一件事:千万不能把所有东西都塞进 SKILL.md。SKILL.md 超过 500 行,你的 skill 也能跑,但设计上就失败了。

05 从 0 做一个 Skill:一共 7 步

SEVEN STEPS

现在我们就可以开始一步一步做 skill 了,还是拿周报 skill 举例子。

// FIG.04 · 七步,做出你的第一个 Skill
  1. 第一步:梳理流程

    在开始动手之前,先自己把这件事之前的流程梳理清楚。比如周报 skill——自己写周报是怎么做的,先看了什么?然后做了什么?格式有什么要求?老板最关心什么?你踩过什么坑?全部记下来,流水账就行,不用整理的非常仔细。这一步其实非常关键,也最容易被跳过。不要一上来就写 SKILL.md,写出来的全是空话。核心就一个:Skill 的原材料,是你的真实流程。

  2. 第二步:写成自然语言步骤

    把流水账整理一下,分成几个阶段。收集信息 → 分类整理 → 撰写正文 → 检查提交。建议用“先……然后……最后……”的句式,能看懂就行。

  3. 第三步:补上格式和雷区

    你的周报有固定格式吗?有字数限制吗?有没有雷区?比如“没确认的项目不能写”“数据必须和系统对上”。这些绝对不能犯的错误也需要写清楚。雷区这部分非常重要。

  4. 第四步:写 SKILL.md

    前面三步的原材料齐了之后,现在就可以往骨架里填了。SKILL.md 文件的结构大概分为以下几个板块:
    [01] description:写清楚做什么、什么时候用,触发词写全。
    [02] 决策原则:把第一步里那些“怎么选”的经验写进去。
    [03] 流程骨架:把第二步的阶段放进去。
    [04] 雷区:把第三步的“绝对不能做”放进去。

  5. 第五步:按需加上其他模块

    SKILL.md 跑起来之后,就可以开始测试了,哪里卡或者哪里别扭再改。
    [01] AI 总搞错部门黑话?加 references/术语表.md。
    [02] 格式每次都不一样?加 examples/输出样例。
    [03] 数据整理又慢又错?写个 scripts/汇总.py。
    [04] 有固定模板?扔进 assets/。
    但是不建议五个模块全做,先从最小版本跑起来。稳定之后再一步一步加模块。

  6. 第六步:测试

    开一个新对话,说“帮我写周报”。AI 按你的流程执行了,那恭喜你,这个 skill 就成了。没自动触发这个 Skill,大概率是 description 没写对,看看是不是触发词写少了、写窄了。触发了但做得不对?先看是不是流程没讲清,还是缺样例、缺知识库,缺哪里补哪里,然后再测试。

  7. 第七步:迭代

    Skill 是活的,不是写完就扔的。多用多测试,哪里别扭改哪里。改 description、加 reference、补 example,都是日常操作。一个好用的 Skill,都是要经过多轮修改改出来的,不是一次写出来的。整个过程,写个简单的 skill,大概 15 到 30 分钟。


评论(0)

还没有评论,来抢沙发~