🧩技能:把您的工作流自动化
当您发现自己一遍遍对智能体重复同样的指令时,把它们变成可复用的技能。这一步让您从「助手」迈进「工作坊」。
您很快就会认出这个症状。这周第三次了,您又打了同样的一长串请求:「重读我的 diff,找出 bug 和密钥泄露,按文件给我列出问题,但没有我同意之前别改任何东西。」每次都一字不差。这正是该把这个请求一劳永逸地捕获下来、并用一条命令唤回它的时刻。
这就是技能:一包可复用的指令,智能体按需触发它,通常通过一个 slash 命令。记忆文件是智能体总会读取的被动上下文,而技能是您需要时才调用的主动能力。想象一下 /review(重读我的 diff)、/ship(跑测试、升版本号、提交、开 PR)、/deploy。一个名字,整个工作流就跑起来。
为什么:重复就是一个信号
技能的触发点永远是同一个:您发现自己在重新敲一条多步骤指令。「跑测试,如果是绿的,就用规范化的提交信息提交,然后推送……」如果您写过两遍,您就会写二十遍。
把它捕获一次,您一下子得到三样东西:
- 一条命令,而不是一段话。 您打
/review,就这样。 - 一致性。 工作流每次跑得一模一样, 您不会再因为赶时间就漏掉「检查密钥」那一步。
- 可共享。 技能是仓库里的一个文件:您的队友(和他们的智能体)原样拿来就用。
它具体怎么运作
细节随工具而变,但原理到哪都一样:您把指令写进一个 markdown 文件,智能体把它暴露成一条命令。
Claude Code 在一个专用文件夹里读取自定义命令。一个 deploy.md 文件会变成 /deploy 命令。
.claude/commands/ # 项目命令(通过仓库共享)
~/.claude/commands/ # 全局命令(您所有的会话)
另外还有一个更宽泛的 Skills 机制:一个包含 SKILL.md 的文件夹,描述何时以及如何使用它,智能体会在恰当的时机自己加载它。该格式的确切字段,去看文档, 在资源里有指引。
一个例子:/review 命令
回到开头那个请求。我们把它一次性写进一个 review.md 文件:
重读当前 diff,对照基准分支。
查找:
- 明显的 bug 和回归,
- 密钥泄露(明文的 API key、密码、token),
- 未转义的 SQL 查询或其它注入,
- `console.log` 和其它遗忘的调试残留。
按 `文件:行号` 分组列出问题,从最严重到最
轻微。要具体:每一点都说清楚为什么这是个问题。
没有我同意之前别改任何东西。最后给一个结论:可以合并,还是不行。
从此,/review 每次都重新跑这个一模一样的协议。不用再敲一段话,不用再漏掉一步。
操作流程
发现重复
那个反射动作:一旦您心里想「咦,这个我已经打过了」,就停下来。这就是您的技能候选。别提前创建, 等到这个需求出现第二次。
把指令写一次
在恰当的位置创建 markdown 文件(deploy.md → /deploy)。像对智能体说话那样写下指令:清晰、有序、带护栏(「没有我同意之前别改任何东西」)。
用它的名字调用它
在智能体里打 /review。技能跑起来。您刚刚把一段话变成了一个词。
随时间打磨它
随着使用,您会看到哪里缺了、哪里溢出了。加一条标准,收紧一条规定。技能像记忆一样成熟:在真实的摩擦中。
全局视角:您那个自我组合的工作坊
坐下来,看看您在这三篇里建起了什么:
把这些首尾相接,就成了一个自我组合的个人工作坊。每个项目都充实您的全局记忆,给您留下一两个可复用的技能,打磨您的需求厘清模板。第十个项目,站在前九个的肩膀上启动。这正是全部意义所在:您不是在自动化一项任务,而是在为自己搭建一个让您每一次都更快一点的环境。