通用 Skill 制作流程(八阶段法)
把任意领域的方法论、流程、知识,封装成能上架 SkillHub 的标准 Skill。零配置、纯文本方法论,照着八阶段走,就能从零做出一个能用的 skill。
适用场景
- 想把某领域的经验 / 流程 / 知识,沉淀成一个可复用、可分享的 skill。
- 想在 SkillHub 上架 skill,但不知道结构、分类、发布规范。
- 想批量、规范化地产出 skill(同一套流程可复用)。
核心纪律(先读,能少踩 80% 的坑)
- 纯文本方法论,零配置。 不依赖 API key、不装环境、不内置私有信息。skill 就是 md 文本,装了就能跑。
- category 必须命中官方 12 类中文名。 写英文 code(如 content-creation)会被识别失败,上架后显示"未分类"。
- 示例必须真实可跑。 占位符(xxx、待补、TODO)是自评虚高的元凶,凡示例都要能用真实输入跑通。
- 安全零命中。 纯 md skill 不该出现 rm -rf、curl 外联、密钥硬编码、可执行脚本。
- 先测 slug 占用再发布。 同名被占就改名,避免用户装到别人的包。
八阶段建 Skill 法
阶段 1:合规准入
- 确认不踩红线:无盗版、代写论文、刷量、虚假宣传、诱导站外交易。
- 账号安全永远大于单笔收入;过不了红线的题材直接放弃。
阶段 2:方法论抽取
- 把该领域的"可复用方法论"抽成纯文本步骤。
- 不内置私有信息、不调用第三方 API。
- 判断标准:换一个人照着文档,也能独立做出同样的结果。
阶段 3:骨架(frontmatter 九字段)
每个 skill 独立目录 ~/.workbuddy/skills/<skill-name>/,含 SKILL.md + references/ + TRACE_SELF_ASSESSMENT.md。frontmatter 必含九字段:
| 字段 | 说明 |
|---|---|
slug |
kebab-case,2–128 字符,发布者命名空间内唯一 |
displayName |
中文展示名 |
version |
SemVer,首版 0.1.0 |
summary |
一句话简介(即 SkillHub 页面简介) |
category |
必须命中官方 12 类中文名(见下表) |
tags |
中文 3–5 个 |
triggers |
触发词,3–5 个 |
| 示例 | 正文内 ≥3 个真实示例 |
| 边界 | 正文内 7–8 条边界 |
阶段 4:内容设计(六大章节)
正文固定六章:
1. 适用场景
2. 核心纪律
3. 步骤(主体方法论)
4. 示例 ≥3(真实可跑)
5. 边界 7–8 条
6. 自检清单
阶段 5:TRACE 自评 + 外部复核
按 TRACE 框架自评:
- T 任务(Task):这个 skill 到底解决什么
- R 角色(Role):给谁用
- A 动作(Action):具体怎么做
- C 约束(Constraint):边界与红线
- E 产出(Expected):输出什么成品
自评易虚高,务必做外部复核——让另一个视角挑刺,凡示例 / 占位符必须真实可跑。
阶段 6:安全扫描
grep -rniE "rm -rf|curl .*http|sk-|password|token|exec\(" <skill>/
要求零命中。纯 md skill 天然安全,出现命中就是方法里夹了不该夹的东西。
阶段 7:打包
zip -r -X <slug>.zip <skill-dir>/,文件名用 slug(从 frontmatter 取)。- 避免覆盖旧包;用
python -c "import zipfile,sys; zipfile.ZipFile(sys.argv[1]).testzip()"校验包完好。
阶段 8:上架
- 走 SkillHub 发布(网页 Cookie 会话或官方 CLI)。
- 发布前用
download?slug=<候选>探占用:404 可用,302 被占。
官方 12 个一级分类(category 必须写中文名)
| category 值 | 适用类型 |
|---|---|
| 办公效率 | 文档处理、邮件、日程、会议、汇报、日报 |
| 内容创作 | 文案改写、自媒体、小红书/公众号、营销文案 |
| 开发编程 | 代码生成、Git、API、架构、调试 |
| 数据分析 | 报表、图表、数据清洗、统计分析 |
| 设计多媒体 | 图片生成、视频、海报、排版 |
| AI Agent | Agent 编排、提示词优化、工具调用、工作流 |
| 知识管理 | 笔记整理、调研整合、知识库、摘要 |
| 商业运营 | 电商、运营、客服、增长 |
| 教育学习 | 学习辅助、翻译、教学、考试 |
| 行业专业 | 法律、医疗、金融、招聘等垂直行业 |
| IT 运维与安全 | 服务器、数据库、安全审计、监控 |
| 生活服务 | 天气、出行、生活助手、本地服务 |
> 平台按中文名识别分类;写英文 code 会被识别失败,显示"未分类"。
验证四步法(发布前必过)
- 安全扫描:grep 危险模式,零命中。
- 结构校验:示例 ≥3、边界 7–8、章节 6、frontmatter 字段齐全、category 命中 12 类、tags 为中文列表。
- 全新输入干跑:用一个从未见过的真实输入,按 SKILL.md 走一遍,确认输出完整、边界被处理。
- 打包 testzip:确认 zip 包完好。
撞名处理
- 发布前
download?slug=<候选>:404 可用,302 被占。 - 若占用且
_meta.jsonownerId 非自己 → 改名(加前缀/行业词),重测 404 再用。
边界
- 不碰盗版、代写、刷量、虚假宣传、诱导站外交易。
- 不内置私有信息(账号、密钥、内部数据)。
- 不依赖第三方 API key;纯文本即用。
- 不写可执行脚本进 skill 包(发布脚本与 skill 内容分离)。
- category 不写英文 code,只写官方 12 类中文名。
- 示例不用占位符,必须真实可跑。
- 不改已发布 skill 的 slug(改了等于新建,用户会装到新包)。
- 不为了"有产出"堆凑数内容——示例和边界宁缺毋滥。
自检清单
- [ ] 合规:无红线内容
- [ ] frontmatter 九字段齐全,category 命中 12 类中文名,tags 中文 3–5 个
- [ ] 正文六章齐全,示例 ≥3、边界 7–8
- [ ] 安全扫描零命中
- [ ] 全新输入干跑通过
- [ ] testzip 通过
- [ ] slug 未占用或已改名重测 404