---
name: minksgo/skill-distiller
source: https://app.decimal.ai/s/minksgo-skill-distiller@1/SKILL.md
source_sha256: f920c7f3ce3c
---

# 技能蒸馏器 (Skill Distiller)

## 用途 (Purpose)

将任意原始领域知识——文档页面、教程、工作流笔记、代码片段、错误日志、团队规范
或口头描述——转化为单个自包含的 `SKILL.md` 文件，严格遵循
[Agent Skills 开放标准](https://agentskills.io/specification)。输出文件可被
Trae、Claude Code、Cursor、Windsurf 及任何兼容 Agent Skills 的 AI 工具立即加载执行。

> Convert any block of raw domain knowledge into a single, self-contained `SKILL.md`
> file compliant with the Agent Skills specification. Ready for immediate use in all
> Agent Skills-compatible AI tools.

## 适用场景 (When to Use)

- 用户粘贴一段文档或教程，说"把它变成技能" / "turn this into a skill"
- 用户描述了一个重复性工作流，希望自动化成技能
- 用户说"为 X 创建技能" / "create a skill for X" / "生成 SKILL.md"
- 用户想用新知识更新或改进已有技能
- 用户想将多段知识批量转化为多个独立技能
- 用户提到了触发词：蒸馏技能、create skill、制作技能、skill generator 等

## 工作流 (Workflow)

### 阶段 1 — 解析输入 (Parse Input)

从用户提供的原始材料中提取以下内容：

| 提取维度 | 说明 |
|----------|------|
| 领域 (Domain) | 技术栈或领域（如 react、docker、ci-cd、python） |
| 任务目标 (Task Goal) | 一句话概括技能完成什么 |
| 触发场景 (Trigger Scenarios) | 用户会用哪些自然语言来触发此技能 |
| 工具与命令 (Tools & Commands) | 涉及的所有可执行命令（npm、docker、git 等） |
| 决策节点 (Decision Nodes) | AI 需要在分支间做选择的关键点 |
| 易错点 (Pitfalls) | 已知的错误及其修复方法 |
| 参考资料 (References) | URL、文档链接或文件路径 |

### 阶段 2 — 结构化知识 (Structure Knowledge)

将提取的信息重组成逻辑清晰、可执行的工作流：

1. **找强依赖**——必须顺序执行的动作 → 形成线性链
2. **找弱依赖**——可并行执行的动作 → 标记为并行分支
3. **找条件分支**——"如果 X 则 Y，否则 Z" → 标记为决策节点
4. **插入验证点**——每一步之后，定义如何确认成功

### 阶段 3 — 生成触发词 (Generate Triggers)

遵循以下规则生成 5–10 个触发关键词：

- **中英文混合**：适应不同语言习惯
- **粒度梯度**：2–3 个泛化词 + 3–5 个领域专有词
- **术语优先**：用"react component scaffold"而非"code generator"
- **防误触**：避免单字母或过于通用的词
- **去重**：剔除重复项

### 阶段 4 — 填充模板 (Fill the Template)

按下方模板逐字段填充。除标记可选的字段外，全部必填。

```markdown
---
name: <全小写连字符名称>
description: <1–1024 字符，描述做什么 + 何时用>
triggers:
  - <关键词1>
  - <关键词2>
  - ...
---

# 技能：<展示名称>

## 用途
<2–4 句话，解释此技能帮助 AI 完成什么>

## 适用场景
- <具体场景或用户请求模式>
- <触发此技能的文件类型或项目上下文>
- <额外条件>

## 工作流
### 步骤 1：<步骤名称>
<原子化的、无歧义的动作。AI 必须能在不追问的情况下执行。>

```
<命令或代码块>
```

**验证**：<如何确认此步骤成功>

### 步骤 2：<步骤名称>
<如果条件 A，则做 X；如果条件 B，则做 Y。>
...

## 命令与代码示例
<可直接复制运行的命令。用 `<占位符>` 标记用户需填入的值。>

## 易错点与警告
- ❌ <常见错误> → ✅ <正确做法>
- ❌ <另一个易错点> → ✅ <如何避免>

## 参考资料
- [链接标题](<URL>)
```

**模板填充规则：**

- `name`：仅小写字母、数字、连字符。正则：`^[a-z0-9]+(-[a-z0-9]+)*$`。1–64 字符。必须与父目录名一致。
- `description`：1–1024 字符。必须同时描述做什么（WHAT）和何时用（WHEN）。
- `triggers`：5–10 条，中英文混合，无重复。
- **工作流步骤必须原子化**——一步只做一个明确动作。若一步含多个独立动作，需拆分。
- **验证条款必填**——每一步以"验证"结尾。
- **工作流必须闭环**——最终步骤需验证整体成功。
- **至少 1 条易错点**。
- 参考资料需包含有效 URL（如有）。

### 阶段 5 — 校验 (Validate)

输出前按此清单自检。任何一项不通过，修复后再输出。

```
[ ] YAML 前置元数据用空格（非 Tab）缩进
[ ] 含冒号或特殊字符的字符串已正确引号包裹
[ ] name 通过正则：^[a-z0-9]+(-[a-z0-9]+)*$
[ ] name 长度：1–64 字符
[ ] description 长度：1–1024 字符
[ ] triggers 有 5–10 条，无重复
[ ] triggers 同时包含中文和英文关键词
[ ] 工作流构成闭环（起点 → 步骤 → 验证 → 终点）
[ ] 每步原子化（单一动作）
[ ] 每步有"验证"条款
[ ] ≥ 1 条易错点
[ ] 参考资料部分已填写或明确标记"无"
[ ] 整个 SKILL.md 自包含（核心理解不依赖外部文件）
[ ] 所有占位符使用 `<大写下划线>` 格式
```

### 阶段 6 — 输出 (Output)

在围栏代码块中输出完整的 SKILL.md，随后附上部署说明：

```markdown
## 📦 部署方式

将上面的 SKILL.md 保存到项目对应路径：

**Trae：**
```
<项目根>/.trae/skills/<skill-name>/SKILL.md
```

**Claude Code：**
```
<项目根>/.claude/skills/<skill-name>/SKILL.md
```

**Cursor：**
```
<项目根>/.cursor/skills/<skill-name>/SKILL.md
```

重启或重新索引 IDE 即可加载新技能。
```

## 命令与代码示例 (Commands & Code Examples)

### 单次蒸馏 (Single Distillation)

用户输入：
```
将这段知识蒸馏成 Skill：
<原始知识块>
```

Agent 回复完整的 SKILL.md。

### 批量蒸馏 (Batch Distillation)

```
把下面 3 段知识分别蒸馏成 Skill：
1. Git 分支管理规范
2. Code Review 流程
3. 部署检查清单
```

Agent 逐块处理，输出 3 个独立的 SKILL.md。

### 链式蒸馏 / 技能精炼 (Chained Distillation)

```
给 react-component-scaffold 这个 skill 加上 Storybook stories 的自动生成
```

Agent 读取已有技能，整合新能力，输出更新后的完整 SKILL.md。

## 易错点与警告 (Pitfalls & Warnings)

- ❌ 在 YAML 中使用 Tab 缩进 → ✅ YAML 禁止 Tab，始终用空格缩进
- ❌ 技能名含大写或特殊字符（如 `React-Scaffold`）→ ✅ 仅用小写和连字符：`react-scaffold`
- ❌ 触发词过于泛化（如 `help`、`code`、`fix`）→ ✅ 用领域专有术语：`react component generator`、`docker compose deploy`
- ❌ 把 5+ 个动作塞进一个步骤 → ✅ 拆分为原子子步骤，各带独立验证
- ❌ 缺少验证条款 → ✅ 每步必须以"验证"结尾；AI 不知道成功标准就无法自我纠正
- ❌ description 只说技能是什么，不说何时用 → ✅ 始终同时包含："生成 X。当用户请求 Y 或处于 Z 上下文时使用。"
- ❌ YAML 中含冒号的字符串未加引号 → ✅ 用引号包裹：`description: "封装 API 客户端：支持 fetch 和 axios"`
- ❌ 占位符看起来像真实值（如 `replace-me`）→ ✅ 统一用 `<大写下划线>` 格式：`<BASE_URL>`、`<API_KEY>`
- ❌ 中文输入时忘记添加中文触发词 → ✅ 无论输入语言，始终生成中英双语触发词

## 参考资料 (References)

- Agent Skills 规范：https://agentskills.io/specification
- Agent Skills GitHub 仓库：https://github.com/agentskills/agentskills
- Claude Code 自定义命令与技能：https://docs.anthropic.com/en/docs/claude-code/custom-commands
- Cursor Skills 文档：https://docs.cursor.com/advanced/skills
- Windsurf Cascade Skills：https://docs.windsurf.com/cascade/skills
- Fetch API (MDN)：https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API