如何写出高质量的 Skill

写出一个 Skill 很容易,但写出一个高质量、稳定、可复用的 Skill 却需要一些方法论。高质量的 Skill 就像是给 AI 制定的一套 SOP(标准作业程序),它不仅能防错,还能让 AI 的表现超出预期。


第一部分:核心心法(写好 Skill 的五大原则)

1. 精准的「触发器」设计 (Description)

AI 拥有成百上千个技能,如何确保它在正确的时机调用正确的技能?关键在于元信息(YAML Header)中的 description

反面教材: description: 帮我写代码。 (太宽泛,随时都可能触发,干扰其他技能)

高质量示范: description: 当用户明确要求使用 React/TypeScript 编写前端组件,且需要包含单元测试时触发。

graph LR
    A["用户模糊意图"] --> B{"描述匹配引擎"}
    B -->|"高精准度"| C["精确触发目标 Skill"]
    B -->|"低精准度"| D["误触发 / 混用多个 Skill"]
    style C stroke:#4caf50,stroke-width:2px
    style D stroke:#f44336,stroke-width:2px,stroke-dasharray: 5 5

2. 结构化、防呆的操作步骤

大模型像一个非常聪明但容易分心的实习生。你的指南不能是一大段散文,必须是高度结构化的步骤

  • 使用编号列表: 1. 第一步做什么... 2. 第二步做什么...
  • 明确的前置与后置条件: 比如“在写代码之前,必须先确认依赖库的版本”。
  • 强制纪律(Do’s & Don’ts): 明确告诉 AI 绝对不能做什么(例如“严禁使用废弃的 API”)。

[!tip] 技巧 可以在 Skill 中设置一个“检查点(Checkpoints)”机制,要求 AI 每完成一个大步骤必须先向用户确认,再进行下一步,避免它一口气跑到黑导致方向偏离。

3. 提供高质量的「范例」(Few-Shot)

千言万语不如一个好例子。很多时候,用自然语言很难描述清楚一种“语感”或“代码风格”,直接给例子是最有效的。

  • 正向范例(Good Case): 期望的理想输出是什么样。
  • 反向范例(Bad Case): 常见错误长什么样,警告 AI 避开。

4. 拥抱「组件化」思维

高质量的 Skill 不是越长越好,而是要懂得拆分和互相调用。如果你有一个“全自动化应用开发”的庞大任务,不要全塞进一个 Skill 里。

graph TD
    Main["主 Skill: 架构师角色"] --> Sub1["子 Skill: 前端开发规范"]
    Main --> Sub2["子 Skill: 后端 API 设计"]
    Main --> Sub3["子 Skill: 自动化测试用例"]
    
    classDef main fill:#bbdefb,stroke:#1976d2
    classDef sub fill:#f5f5f5,stroke:#9e9e9e
    class Main main
    class Sub1,Sub2,Sub3 sub

让主 Skill 负责统筹流程,然后在适当的时候,指引 AI 去加载相关的子 Skill。这就像是编写可复用的代码函数。

5. 持续迭代与维护

Skill 不是一次性写完就结束的。在实际使用中,你一定会发现 AI 在某些情况下会“翻车”。 每次翻车,都是升级 Skill 的好机会: 1. 观察 AI 在哪里做错了。 2. 回到 SKILL.md,在对应步骤加入一条补丁规则(例如:“注意:在处理这类数据时,务必先进行非空判断”)。 3. 保存,下次执行它就不会再犯同样的错误。


第二部分:进阶实操(让 Skill 带上外部工具)

在实际操作中,高质量的 Skill 往往不是孤立存在的,它需要一个运行平台外部工具的配合,才能真正做到“知行合一”。

1. 我们能在哪里运行带工具的 Skill?

要让带有外部工具的 Skill 跑起来,你通常需要借助以下几类平台: 1. 开箱即用的产品:如 OpenAI 的 Custom GPTs、Claude 的 Projects。你可以把 SKILL.md 作为 Knowledge(知识库)上传,并在后台开启它自带的 Web BrowsingCode Interpreter 工具。 2. Agent 编排平台:如字节跳动的 Coze(扣子)、Dify.ai 等。在这里,你可以把 Skill 正文填入“人设与回复逻辑”,并在左侧面板勾选所需的“插件(Plugins)”。 3. IDE 插件或本地智能体:比如你当前和我(一个具备文件系统、终端和网络搜索权限的 AI 助手)交互的环境。

2. 实操案例:「深度行业调研专家」

单纯的聊天 AI 无法获取最新数据,所以我们需要给它配置两个工具(Tools): - search_web:搜索引擎工具。 - read_url:读取网页原文内容的工具。

我们将创建一个名为 深度调研专家.md 的 Skill。以下是完整的文件内容:

---
name: 深度行业调研专家
description: 当用户需要了解某个陌生行业、最新概念或某家公司的近期动态时触发。
required_tools: 
  - search_web
  - read_url
---

# 角色定义
你是一个拥有顶级咨询公司(如麦肯锡)背景的深度调研专家。你不仅依靠已有知识,更擅长使用工具去互联网上挖掘最新信息,并交叉验证。

## 操作指南(工作流)

当用户提出调研需求时,**严格按照以下 4 个步骤执行**:

#### 步 1:需求拆解与初步检索
1. 提取用户需求的核心关键词。
2. 使用 `search_web` 工具搜索 3-5 个不同维度的关键词(例如:“技术原理”、“市场规模”、“近期新闻”)。
3. **[检查点]**:不要急于输出结论,先快速浏览搜索结果的标题和摘要。

#### 步 2:深度内容读取
1. 从搜索结果中,挑选至少 3 篇高质量的链接(优先选择官方文档、权威媒体、学术报告)。
2. 使用 `read_url` 工具,把这 3 篇长文的完整内容读取进来。

#### 步 3:交叉验证与分析
1. 对比不同来源的信息。如果发现数据有冲突(如不同机构预测的市场规模不同),必须在报告中指出差异。
2. 提炼核心洞察,剔除无用的营销话术。

#### 步 4:输出最终报告
按照以下结构输出 Markdown 报告:
- **核心摘要(Executive Summary)**:用 3 句话总结。
- **关键事实(Key Facts)**:带数据支撑的行业现状。
- **不同视角的观点(Perspectives)**:至少包含两种不同的声音。
- **参考信息源(Sources)**:附上你在步骤2中读取的真实网页链接。

## 纪律限制
- 绝对禁止编造数据。如果 `search_web` 找不到近期数据,直接告诉用户“未查到相关最新数据”。
- 不要一次性调用超过 5 个 URL,避免上下文超载。

3. 这个 Skill 跑起来是什么样的?

一旦这个带有工具的 Skill 被触发,你和 AI 的交互将不再是简单的“一问一答”,而是像在指挥一个员工。

sequenceDiagram
    participant User as 用户
    participant AI as "AI (挂载调研Skill)"
    participant Web as 外部互联网

    User->>AI: "调研一下近期 AI 视频生成工具的竞争格局"
    Note over AI: 匹配到《深度调研专家》Skill
    
    AI->>Web: Tool: search_web("AI 视频生成 竞争格局 2024")
    Web-->>AI: 返回10条搜索结果摘要
    
    AI->>Web: Tool: read_url("网址 A")
    AI->>Web: Tool: read_url("网址 B")
    Web-->>AI: 返回万字长文内容
    
    Note over AI: 交叉验证、提取核心事实、排版报告
    
    AI->>User: 输出带真实链接和数据的调研报告

通过这个实操案例你可以看出,高质量的 Skill 加持了外部工具后,把 AI 从一个“根据背诵过的记忆来答题的考生”,变成了一个“懂得利用工具去解决复杂问题的打工人”


第三部分:效率革命(用魔法打败魔法:借助 Skill Writer)

你可能会觉得:“手写这么多规则、YAML 头、Markdown 格式,是不是太麻烦了?” 非常敏锐!既然 Skill 的本质是一份写给 AI 的说明书,那么最擅长排版、最懂 AI 提示词结构的,不正是 AI 自己吗?

我们完全可以创造一个专门用来写 Skill 的元技能(Meta-Skill),我们称之为 Skill Writer。它的工作就是听取你的口语化需求,自动帮你生成符合以上所有高质量标准的 Markdown 文件,而你只需要在此基础上进行人工审核与微调优化

1. 标准协作流:AI 打草稿,人类注灵魂

  1. 口语化提需求:和 AI 助手对话,比如:“我需要一个做竞品分析的 Skill,用到搜索工具查价格和功能,产出对比表格。请帮我写出标准的 SKILL.md 格式。”
  2. AI 自动生成框架:AI 会自动输出带有精准 description、清晰 操作指南纪律约束 的框架草稿。
  3. 人工注入经验(关键):把你拷贝下来的草稿,结合你在真实业务中踩过的坑进行微调。比如补充一句:“必须优先从竞品的官网 Pricing 页面获取数据”。
graph LR
    User("你的想法/痛点") -->|"一句话需求"| Writer["Skill Writer 助手"]
    Writer -->|"秒级输出"| Draft("格式规范的 Skill 初稿")
    Draft -.->|"人工微调/注入经验"| Final(("高质量生产级 Skill"))
    
    style Draft fill:#fff3e0,stroke:#ff9800
    style Final fill:#e8f5e9,stroke:#4caf50

这种方式极大地降低了编写高质量 Skill 的门槛。不要从零手写,让 AI 去做那些繁琐的结构化工作,把你最宝贵的精力留在“梳理业务逻辑”和“沉淀踩坑经验”上。

2. 真实模拟:一分钟产出「B站长视频提炼专家」

为了让你有更直观的体感,我们来完整模拟一遍这个过程。假设你现在需要一个帮你看长视频并做笔记的 Skill。

🎬 第一幕:你向 Skill Writer 提需求

你的粗略提示词: > “帮我写一个 Skill,叫 B站视频提炼专家。当用户发一个B站链接时触发。你需要读取它的字幕,然后总结核心内容,分成几个小节,最后列出金句。请输出标准 SKILL.md 格式。”

🤖 第二幕:Skill Writer 秒级生成的初稿(V1.0)

AI 瞬间就为你搭建好了高质量的结构框架:

---
name: B站视频提炼专家
description: 当用户提供 B 站 (bilibili) 视频链接,要求总结、提炼或做笔记时触发。
required_tools: 
  - read_url (用于抓取视频字幕文本)
---

# 角色定义
你是一个高效的学习委员,擅长从冗长的视频字幕中提取干货,结构化地输出笔记。

## 操作指南

当接到 B 站视频链接时,按以下步骤执行:

1. **读取字幕**:使用 `read_url` 工具读取提供的链接内容,获取字幕。
2. **核心摘要**:用 50-100 字概括这个视频到底讲了什么。
3. **内容分节**:将视频内容按照逻辑划分为 3-5 个小节,提炼每节的要点。
4. **金句提取**:摘抄视频中最有启发性的 2-3 句话。

## 输出格式
严格按照上述步骤输出 Markdown,使用清晰的标题结构。

👨‍💻 第三幕:人工注入灵魂,微调优化(V2.0 终稿)

初稿结构已经很完美了,但缺乏你的个人使用偏好防翻车经验。于是你把代码复制下来,手动加了三条“灵魂设定”:

  1. 操作指南 加了一条:[防翻车经验] “自动过滤掉 UP 主求点赞、投币、打赏等无关废话。”
  2. 内容分节 中强化:[格式要求] “必须附带对应内容在视频中的大概时间戳(如 [04:12]),方便我回看原视频。”
  3. 纪律约束 加上:[底线限制] “不要自己发明内容,严格基于字幕事实总结。”

结果:你只花了几十秒提需求和补充两句话,就得到了一个完美符合你自己习惯的、具备防错机制的生产级 Skill。这就是“用魔法打败魔法”的威力!


第四部分:灵感图鉴(万物皆可 Skill)

到底什么样的任务适合被封装成 Skill? 判断标准非常简单:只要这个任务满足“高频重复”、“有固定 SOP(标准流程)”、“强依赖个人经验”这三点中的任何一点,它就极度适合变成一个 Skill。

下面是各个领域中,那些把 AI 真正变成“生产力工具”的 Skill 灵感:

1. ✍️ 自媒体与内容创作

  • 爆款拆解与仿写专家:输入一篇对标的爆款文章,AI 自动拆解其“情绪曲线”、“痛点设置”和“金句结构”,然后根据你提供的新主题,按照这个结构仿写。
  • 播客/视频逐字稿清洗器:自动去除“啊、嗯、就是”等口语化废话,纠正同音错别字,并根据上下文自动切分逻辑段落,加上小标题。
  • 全平台分发适配器:写好一篇文章后,一键生成三个版本:小红书版(多 emoji、重情绪)、知乎版(重逻辑、多引用)、公众号版(排版规整、引人深思)。

2. 💻 程序员与技术研发

  • Git Commit 规范化门神:读取 git diff 变化,自动判断改动类型(feat, fix, refactor 等),强制生成符合团队 Angular 规范的提交信息。
  • 古董代码重构专家:给定一段没有注释的陈年老代码(如老旧 PHP),不仅将其翻译成现代语言(如 Go/Rust/TS),还要顺便补齐单元测试和 Docstring 注释。
  • 运维故障排查助手:当日志报警时触发,抓取堆栈报错信息,自动调用搜索工具去 GitHub 找类似 issue,最后输出“故障原因猜想”和“修复建议清单”。

3. 💼 企业管理与 HR

  • 简历双向精准匹配器:输入一份 JD(职位描述)和候选人简历,自动提取候选人的“亮点”和“雷点”,并生成一份为该候选人定制的“初面提问大纲”。
  • OKR 追踪与诊断顾问:检查团队提交的 OKR,指出哪些目标不符合 SMART 原则(如没有可量化指标),并直接给出具体的修改建议。

4. 🛒 电商与外贸运营

  • 多语种客服 SOP 机器人:输入客户的抱怨邮件和物流状态,AI 自动判断客户情绪,并按照“安抚情绪 -> 说明情况 -> 提供补偿方案”的严格 SOP,生成地道的小语种回复。
  • 竞品差评分析雷达:利用读取网页工具,抓取竞品在亚马逊/淘宝上的数十条差评,提炼出前 3 大用户痛点,并反向输出一份“我们新品的研发避坑建议”。

5. ⚖️ 法务与合规

  • 商业合同避坑扫描仪:阅读一份外发合同,高亮出“违约责任不对等”、“管辖权缺失”、“付款节点模糊”等常见商业陷阱,并给出标准合规条款的替换建议。
  • 公关稿合规审查员:审核即将发布的公关通稿,排查是否有违反《广告法》的绝对化用语,或容易引起特定群体舆情争议的表述。

6. 🧠 个人成长与知识管理

  • 费曼学习法无情导师:当你学习一个新概念后,试着用自己的大白话讲给 AI 听。这个 Skill 的设定是“不断追问底层的为什么”,指出你哪里没讲清楚,逼迫你扫清知识盲区。
  • 碎片化阅读消化器:把你白天随手剪藏的各种杂乱链接、微信推文,在睡前让 AI 自动归类,提炼核心结论,并打上适合你 Obsidian 双链体系的标签。

[!tip] 行动建议:如何使用这个灵感库? 不要试图一次性把它们都写出来。观察你明天的工作中,哪一件事让你觉得“又繁琐,又不得不用脑子(或者要遵循很多细碎规则)”,那往往就是你下一个应该编写的 Skill!


结语

写高质量 Skill 的过程,本质上就是你把自己的行业经验、工作流、踩过的坑,抽象提炼成标准算法的过程。 你的思考越深入,你的 AI 专家就越强大。

本文链接:参与评论 »

--EOF--

专题「与 AI 共事」的其它文章 »

Comments