第一步:想清楚「这个 Skill 教什么」
好的 Skill 只做一件事,且这件事的「正确做法」是可总结的。
- ✅ 好例子:「按公司品牌规范写公众号推文」「审查前端代码的无障碍问题」
- ❌ 坏例子:「帮我做一切事情」(太泛,AI 不知道何时该用)
第二步:编写 SKILL.md
标准结构长这样(可直接抄):
---
name: weekly-report-writer
description: 把零散的工作记录整理成结构清晰的周报。当用户说「帮我写周报」或粘贴了一堆工作流水账时使用。
---
# 周报生成
1. 读用户的原始记录,先按「成果/问题/下周计划」分类
2. 成果按重要性排序,每条格式:一句话成果 + 数据支撑
3. 数据缺失处用【待补充】标注,不要编造
4. 最后给 2 个周报标题建议
## 示例
用户输入:「周一开会、周二修了 bug、周三上线了功能」
输出:
### 本周成果
1. 完成 XX 功能上线(【待补充】影响数据)
……
name
短横线小写英文,唯一标识
description
最关键:说清做什么 + 何时用,AI 靠它判断是否激活
正文
具体步骤 + 示例 + 规则,越具体越好
第三步:可选的增强目录
scripts/— 可执行的脚本(Python、Bash 等),AI 按需调用references/— 参考资料/文档,需要时加载assets/— 模板、样张等静态资源
第四步:测试与打磨
- 用 3 个不同输入实测,看输出是否符合预期
- 把「AI 理解错的地方」补进正文——Skill 是迭代出来的
- 让 description 覆盖你期望的所有触发场景(用户说法千奇百怪)
- 参考社区高分 Skill 的写法:见精选清单(anthropics/skills 官方仓库是绝佳范本)
常见坑
- description 写得太含糊 → AI 不知道何时触发,Skill 白装
- 步骤抽象(如「仔细分析」)→ 改成可验证的具体动作
- 塞满大段无关内容 → 违背渐进式加载,拖慢代理
- 忘记给「什么时候不要用」的边界 → 会在不适用场景硬套