创建好用的 Skill
把你的工作流程固化成可复用的 Skill。
什么任务最适合写成 Skill
先看哪些任务类型适合 Skill 化:
| 场景 | 特征 | 典型案例 |
|---|---|---|
| 文档与资产创建 | 需要符合特定风格或品牌标准的输出物 | 按公司模板生成 PPT、制作宣传视频、设计规范海报 |
| 工作流自动化 | 多步骤流程,期望每次输出结果一致 | 新增 API 后同步文档 + 兼容性检查 + 单元测试 |
| MCP 能力增强 | 已有工具访问权限,但缺乏"怎么用好"的工作流知识 | 连接了 Linear MCP,但每次都要解释 Sprint 规划流程 |
核心判断标准:你是否在反复跟 AI 说同样的话? 如果同一件事你已经交代过 3 次以上,就值得写成 Skill。
什么时候该自己写
先问自己 3 个问题:
- 这个流程我重复做了 3 次以上吗?
- 每次做的步骤基本一样吗?
- 现有的 Skill 都不能满足吗?
如果 3 个都是"是",那就值得写成 Skill。
最简单的开始方式
方法 1:让 AI 帮你写
# 先装 skill-creator
npx skills add anthropics/skills/skill-creator然后直接对话:
我想创建一个 skill,用来:
[描述你的流程]
每次的步骤是:
1. [步骤 1]
2. [步骤 2]
3. [步骤 3]
请帮我生成一个 SKILL.md方法 2:从模板开始
最简单的 SKILL.md 结构:
---
name: my-workflow
description: |
[描述这个 Skill 做什么]
触发条件:当用户提到 [关键词] 时使用
---
# [Skill 名称]
## 使用场景
[什么时候用这个 Skill]
## 执行步骤
### 1. [第一步]
- [具体要做什么]
- [注意事项]
### 2. [第二步]
- [具体要做什么]
- [注意事项]
### 3. [第三步]
- [具体要做什么]
- [输出格式]
## 示例
输入:
[示例输入]
输出:
[示例输出]Skill 的解剖学
必需部分:SKILL.md
---
name: code-reviewer # 唯一 ID(小写,用连字符)
description: | # 触发条件(最重要!)
审查代码是否符合团队规范。
使用场景:用户请求 review 代码、提交 PR 前、或提到"代码审查"时。
---
# Code Review Skill
[主体内容:详细的执行步骤]description 是关键:
- 要写清楚什么时候触发
- 包含相关的关键词
- 说明适用场景
可选部分:scripts/
如果有确定性的任务(格式化、计算、API 调用),写成脚本:
my-skill/
├── SKILL.md
└── scripts/
├── format.py # Python 脚本
├── upload.js # Node.js 脚本
└── check.sh # Bash 脚本为什么用脚本?
- 执行结果准确、稳定
- 不消耗推理 Token
- 可以复用现有工具
可选部分:references/
复杂的参考文档放这里:
my-skill/
├── SKILL.md # 核心流程(< 500 行)
└── references/
├── guide.md # 详细指南
├── examples.md # 更多示例
└── edge-cases.md # 边缘情况处理渐进式披露原则:
SKILL.md只写核心流程- 复杂的细节放
references/ - AI 只在需要时才读 references
可选部分:assets/
模板、配置文件放这里:
my-skill/
├── SKILL.md
└── assets/
├── template.json # 输出模板
├── config.yaml # 配置文件
└── style.css # 样式文件写好 Skill 的 3 个技巧
1. 先手工跑通一次
不要直接写 Skill,先这样做:
- 手工完成一次完整流程
- 记录每一步做了什么
- 记录遇到的问题和解决方法
- 整理成标准化步骤
- 再写成 SKILL.md
2. 脚本优于提示词
能写脚本就别写提示词:
❌ 不好的方式:
## 格式化 JSON
请将 JSON 格式化,确保:
- 缩进为 2 个空格
- 键名按字母排序
- 删除空值✅ 好的方式:
## 格式化 JSON
运行脚本:
`python scripts/format_json.py input.json`3. 提供清晰的示例
好的示例包含:
- 典型的输入
- 预期的输出
- 边缘情况的处理
## 示例
### 典型场景
输入:[...]
输出:[...]
### 边缘情况:空数据
输入:[]
输出:提示"没有数据可处理"
### 边缘情况:格式错误
输入:[错误格式]
输出:提示"格式错误,请检查:[具体问题]"实战案例
案例 1:文章多平台适配
需求: 一篇文章要发到公众号、小红书、知乎,每个平台格式不同。
手工流程:
- 调整标题(小红书要加 emoji,知乎要更正式)
- 调整正文(公众号要加引导关注,小红书要分段)
- 调整配图(不同平台尺寸不同)
- 生成摘要(不同平台字数限制不同)
固化成 Skill:
---
name: multi-platform-adapter
description: |
将文章适配到不同平台(公众号、小红书、知乎)。
触发条件:用户提到"多平台发布"、"适配"、"转换格式"时。
---
# 多平台内容适配
## 执行步骤
### 1. 识别目标平台
询问用户要发布到哪些平台(可多选):
- 公众号
- 小红书
- 知乎
### 2. 按平台调整
#### 公众号版本
- 标题:保持原标题
- 正文:
- 开头加引导语
- 结尾加关注引导
- 保持段落完整
- 配图:16:9 横图
- 摘要:120 字以内
#### 小红书版本
- 标题:添加相关 emoji
- 正文:
- 每段不超过 3 行
- 多用换行增加可读性
- 关键词加 # 标签
- 配图:3:4 竖图
- 摘要:80 字以内,口语化
#### 知乎版本
- 标题:更正式,突出专业性
- 正文:
- 保持完整段落
- 添加小标题
- 适当添加数据支撑
- 配图:16:9 横图
- 摘要:150 字以内
### 3. 输出格式
为每个平台生成独立文件:
- `wechat.md`
- `xiaohongshu.md`
- `zhihu.md`
## 示例
> 输入一篇 3000 字的技术文章,要求适配到公众号、小红书、知乎三个平台。
> 输出三份独立 Markdown 文件,每份按平台规则调整标题、正文、摘要和配图建议。案例 2:代码发布前检查
需求: 每次发布前都要检查一遍:测试、文档、版本号、changelog。
固化成 Skill:
---
name: release-checklist
description: |
发布前的完整检查清单。
触发条件:用户提到"发布"、"上线"、"release"时。
---
# 发布前检查清单
## 执行步骤
### 1. 代码检查
- [ ] 所有测试通过
- [ ] 代码已 review
- [ ] 没有 TODO 或 FIXME
- [ ] 没有 console.log 或调试代码
### 2. 文档检查
- [ ] README 已更新
- [ ] CHANGELOG 已更新
- [ ] API 文档已更新
- [ ] 版本号已更新
### 3. 依赖检查
- [ ] 依赖版本已锁定
- [ ] 没有安全漏洞
- [ ] 许可证兼容
### 4. 配置检查
- [ ] 环境变量已配置
- [ ] 生产配置已确认
- [ ] 备份策略已确认
### 5. 回滚准备
- [ ] 回滚方案已准备
- [ ] 数据库迁移可回滚
- [ ] 监控已配置
## 输出
生成检查报告:
- ✅ 已完成的项目
- ❌ 未完成的项目
- ⚠️ 需要注意的项目
如果有未完成项,询问是否继续发布。测试和优化
测试 Skill
-
用真实数据测试
- 不要只用理想情况
- 测试边缘情况
- 测试错误输入
-
多次测试
- 至少测试 3 次
- 看结果是否稳定
- 记录不符合预期的地方
-
让别人测试
- 给团队成员用
- 收集反馈
- 持续改进
优化 Skill
常见问题和解决方法:
| 问题 | 原因 | 解决方法 |
|---|---|---|
| Skill 没被触发 | description 不够明确 | 增加更多触发关键词 |
| 输出不稳定 | 步骤描述模糊 | 提供更详细的步骤和示例 |
| 执行太慢 | 提示词太长 | 把细节移到 references/ |
| 结果不准确 | 应该用脚本的地方用了提示词 | 改用脚本实现 |
三种触发问题的诊断信号:
| 信号 | 问题 | 修复 |
|---|---|---|
| Skill 没有自动调用 | description 太模糊,缺少触发词 | 在 description 中添加更多具体触发短语 |
| Skill 总是莫名被调用 | description 太宽泛 | 加负向说明,如"Do NOT use for..." |
| Skill 被调用了但没按步骤执行 | 指令太冗长或模糊 | 关键步骤前置,用脚本替代语言描述 |
快速诊断法
直接问 AI:
你什么时候会用 [skill-name] 这个 Skill?AI 会复述你的 description。如果复述内容和你预期不一致,说明 description 需要调整。
A/B 测试:有 Skill vs 无 Skill
跑一个有代表性的任务,分别用"无 Skill"和"有 Skill"的方式做一次,对比这些指标:
| 指标 | 无 Skill | 有 Skill | 改善 |
|---|---|---|---|
| 用户需要提供的说明 | 每次都要解释 | 无需解释 | ✅ |
| 来回对话轮次 | 15 轮 | 2 轮 | ✅ |
| API 调用失败次数 | 3 次 | 0 次 | ✅ |
| Token 消耗 | 12,000 | 6,000 | ✅ |
这个方法能直观地衡量 Skill 的价值,也方便向团队展示"为什么要用 Skill"。
用自然语言迭代 Skill
Skill 区别于提示词的核心优势之一:它是活文档,每次修正都可以沉淀。
发现 Skill 的输出有问题时,直接告诉 AI 把改进写回 Skill 文件:
你刚才的输出中,[具体描述问题]。
请把这个改进固化到 [skill-name] 这个 Skill 文件中,
下次遇到同样情况时直接按新方式处理。这样每次遇到问题,都是在让 Skill 变得更好,而不是每次都在重复同样的修正。
分享你的 Skill
发布到 GitHub
# 1. 创建仓库
mkdir my-skill
cd my-skill
git init
# 2. 添加文件
# SKILL.md
# README.md(使用说明)
# LICENSE
# 3. 推送到 GitHub
git add .
git commit -m "Initial commit"
git remote add origin <your-repo-url>
git push -u origin main提交到商店
- skills.sh - 提交 PR 到 Vercel Labs
- ClawHub - 注册并上传
- Anthropic 官方 - 提交高质量 Skill
写使用文档
好的 README 包含:
- 这个 Skill 解决什么问题
- 如何安装
- 如何使用(带示例)
- 常见问题
- 贡献指南
进阶话题
五种工作流模式
Skill 不只是"写一堆步骤"。以下是处理复杂场景的五种模式。
模式一:顺序工作流编排
适用:需要严格按顺序执行的多步流程,步骤之间有依赖关系。
## 工作流:新客户接入
### 第一步:创建账户
调用 MCP 工具:`create_customer`
参数:姓名、邮箱、公司名
### 第二步:设置支付方式
调用 MCP 工具:`setup_payment`
等待:支付方式验证完成
### 第三步:创建订阅
调用 MCP 工具:`create_subscription`
依赖参数:来自第一步的 customer_id关键技巧:明确步骤依赖关系、每步加验证条件、提供失败时的回滚指令。
模式二:跨 MCP 协调
适用:一个流程串联多个外部服务,需要在不同工具间传递数据。
## 设计转开发交付流程
### 阶段一:Figma 导出(Figma MCP)
1. 导出设计资产
2. 生成设计规范文档
### 阶段二:文件存储(Drive MCP)
1. 创建项目文件夹
2. 上传所有资产
3. 生成分享链接
### 阶段三:任务创建(Linear MCP)
1. 创建开发任务
2. 将资产链接附到任务模式三:迭代优化循环
适用:一次生成不够好,需要多轮优化才能达到质量标准。
## 报告生成流程
### 初稿生成
1. 获取数据
2. 生成第一版报告
### 质量检查
1. 运行验证脚本:`scripts/check_report.py`
2. 检查项:缺失章节 / 格式不一致 / 数据错误
### 优化循环
1. 逐项修复检查出的问题
2. 重新生成受影响的章节
3. 再次验证
4. 重复直到通过质量标准模式四:上下文感知的工具选择
适用:同一个目标,根据文件类型或场景选择不同工具。
## 智能文件存储
### 决策树
1. 检查文件类型和大小
2. 选择最佳存储位置:
- 大文件(>10MB)→ 云存储 MCP
- 协作文档 → Notion MCP
- 代码文件 → GitHub MCP
- 临时文件 → 本地存储模式五:领域专业知识内嵌
适用:需要将复杂的合规规则、行业知识内嵌到工作流中。
## 支付处理合规流程
### 处理前(合规检查)
1. 获取交易详情(MCP)
2. 应用合规规则:
- 检查制裁名单
- 验证司法管辖权
- 评估风险等级
### 执行处理
IF 合规通过 → 执行支付
ELSE → 标记待人工审核,创建合规案例这五种模式可以组合使用。一个复杂的 Skill 可能同时包含顺序编排和迭代优化。
Skill 组合
多个 Skill 可以组合使用:
---
name: content-workflow
description: |
完整的内容创作工作流。
触发条件:用户提到"内容创作流程"时。
---
# 内容创作工作流
## 执行步骤
### 1. 写作
使用 `writing-assistant` skill
### 2. 编辑
使用 `editor` skill
### 3. 多平台适配
使用 `multi-platform-adapter` skill
### 4. 发布检查
使用 `publish-checklist` skill团队 Skill 库
建立团队共享的 Skill 库:
team-skills/
├── code-standards/ # 代码规范
├── doc-templates/ # 文档模板
├── release-process/ # 发布流程
└── onboarding/ # 新人入职下一步
- 想了解 Skill 的每个部分 → 看 Skill 拆解
- 想看开发者 Skill → 看 开发者 Skill 推荐
- 想看知名 Skill 系列 → 看 baoyu-skills 或 Matt Pocock Skills