下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/user_0210c829--ima-knowledge-distiller.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_0210c829/ima-knowledge-distiller。从 IMA 知识库自动蒸馏知识为可复用 Skill。 当用户想要把 IMA 知识库里的文件/笔记/网页技能化、建立个人知识技能包、 从收藏的资料里提炼可复用的方法论或工作流时,必须使用此 Skill。 关键词:知识蒸馏、从知识库建 skill、知识库技能化、笔记转技能、资料提炼。 不适用于:直接从书籍/视频/外部链接创建 skill(用 book-to-skill / video-learning-notes)。
阅读全文 (展开查看完整说明)
概述
ima-knowledge-distiller
从 IMA 知识库(文件、笔记、网页)中自动发现、获取、蒸馏、生成可复用 Skill 的全自动流水线。
核心工作流(五阶段)
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ 1.发现 │ → │ 2.获取 │ → │ 3.蒸馏 │ → │ 4.生成 │ → │ 5.验收 │
│Discovery │ │Acquisit. │ │Distill. │ │Generation│ │Validation │
└──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────────┘阶段 1:发现(Discovery)
目标:确定蒸馏范围,获取待处理的内容列表。
- 加载
imaskill 读取凭证 - 询问用户要蒸馏哪个知识库的内容:
- 用户指定知识库名称 →
search_knowledge_base搜索 → 获取knowledge_base_id - 用户未指定 →
search_knowledge_base(query="", limit=50)列出所有知识库 → 让用户选择
- 用户指定知识库名称 →
- 浏览知识库内容:
get_knowledge_list列出根目录内容- 或
search_knowledge按关键词过滤
- 向用户展示带编号的内容清单:
📚 知识库「产品文档库」内容:
1. 📁 设计文档/ (3 文件, 1 子文件夹)
2. 📄 产品需求文档.pdf
3. 📄 技术方案.docx
4. 📄 2025年度排期表.xlsx
5. 📝 项目复盘笔记
请输入要蒸馏的编号(逗号分隔,如 2,3,5):- 记录用户选择的条目,进入阶段 2
阶段 2:获取(Acquisition)
目标:把所有选中内容下载到本地临时目录。
为每个选中条目,按类型执行获取:
| 类型 | 操作 |
|---|---|
| 文件夹 | 递归展开,获取该文件夹下所有文件/笔记 |
| 文件 | cos-download.cjs(或等效 IMA API)下载到 tmp/distill/<知识库名>/<filename> |
| 笔记 | notes API get_doc_content 获取正文 → 保存为 .md 文件 |
| 网页 | web_fetch 抓取正文 → 保存为 .md 文件 |
获取完成后告知用户:
✅ 已获取 5 份内容(3 个文件 + 1 篇笔记 + 1 个网页),开始蒸馏...阶段 3:蒸馏(Distillation)
目标:LLM 分析全部内容,提取核心知识体系。
3.1 内容预处理
合并所有获取的内容为一个上下文(分段处理超长内容),按以下维度分析:
| 分析维度 | 提取内容 |
|---|---|
| 核心主题 | 这些资料共同解决什么问题? |
| 关键概念 | 重要术语、定义、分类 |
| 方法论 | 流程、步骤、框架、检查清单 |
| 决策逻辑 | 什么场景下选择什么方案? |
| 常见误区 | 容易踩的坑、反模式 |
| 量化指标 | 计算公式、阈值、度量方式 |
3.2 蒸馏模式判断
根据内容特征,自动推荐蒸馏模式,并展示给用户确认:
| 内容特征 | 推荐模式 | 说明 |
|---|---|---|
| 步骤/流程密集 | 方法论型 | 核心框架 + 操作步骤 + 应用指南 |
| 概念/原则密集 | 思维方式型 | 心智模型 + 场景判断 + 注意事项 |
| 两者均衡 | 综合型 | 分层结构(概览→详解→案例) |
| 数据/表格密集 | 数据驱动型 | 指标定义 + 计算公式 + 决策树 |
| 代码/脚本密集 | 工具型 | 接口说明 + 调用模板 + 错误处理 |
展示推荐结果并询问:
🔍 内容分析完成,推荐蒸馏模式:
- 综合型(方法论+概念均衡,含少量数据表格)
备选:方法论型 / 思维方式型
使用推荐模式?或输入其他模式名:3.3 生成蒸馏大纲
按选定模式生成初步大纲,展示给用户确认:
📋 蒸馏大纲(综合型)
1. 核心主题:产品需求到技术方案的全流程方法论
2. 关键概念(5个):需求分级、技术债、排期估算...
3. 主流方法论:五步法(需求收集→分级→方案设计→评审→落地)
4. 决策矩阵:2x2 优先级矩阵
5. 常见误区(3个):需求不清就排期、技术债后置不清理...
6. 量化指标:人天估算公式、Bug密度阈值
是否开始生成 Skill?阶段 4:生成(Generation)
目标:使用产出骨架,填充内容,执行生成。
4.1 骨架创建
调用 init_skill.py 或手动创建标准目录结构:
tmp/distill/<skill-name>/
├── SKILL.md
└── references/
├── methodology.md
├── examples.md
└── faq.md4.2 Skill 命名规则
从蒸馏主题中提取英文 skill name:
- 全小写 + 连字符
- 2-4 个单词,体现核心技能
- 示例:
requirement-to-solution,priority-matrix,tech-debt-management
如果不确定命名,向用户展示 2-3 个候选,让用户选择。
4.3 SKILL.md 编写
按以下模板填充内容:
---
name: <skill-name>
version: "1.0.0"
description: |
[一句话核心能力描述]。用于:[典型触发场景]。
关键词:[5-8个触发词]。
不适用于:[明确排除的场景]。
---
# [技能名称]
## 1. 核心主题
[用 2-3 句话说明这个 skill 解决什么问题,适用什么场景]
## 2. 关键概念
| 概念 | 定义 | 示例 |
|------|------|------|
| ... | ... | ... |
## 3. 主流方法论
[核心框架/流程的详细步骤]
### 3.1 [子步骤名]
...
## 4. 决策逻辑
[什么场景下怎么选择,用流程或矩阵表达]
## 5. 常见误区
- 误区1:...
- 误区2:...
## 6. 量化指标
[如有:公式、阈值、度量方式]
## 7. 应用指南
- 场景1:...
- 场景2:...
## 8. 参考资料
- `references/methodology.md` — 方法论详解
- `references/examples.md` — 实际案例
- `references/faq.md` — 常见问题4.4 References 文件编写
按主题拆分详细内容到 references/,避免 SKILL.md 超过 500 行。
阶段 5:验收(Validation)
目标:生成完成后,执行 7 项必检:
| 序号 | 检查项 | 标准 |
|---|---|---|
| 1 | 触发条件明确 | description 中有明确的触发关键词和适用场景 |
| 2 | 内容可执行 | 方法论有具体步骤,而非纯概念罗列 |
| 3 | 长度控制 | SKILL.md ≤ 500 行;references 单文件 ≤ 1000 行 |
| 4 | 无敏感数据 | 不包含用户个人密钥、内部 ID、真实客户信息 |
| 5 | 有 Gotchas | SKILL.md 末尾有 ## ⚠️ Gotchas 段落 |
| 6 | references 无孤立 | references/ 中每个文件都在 SKILL.md 中有引用链接 |
| 7 | 命名规范 | name 全小写 + 连字符,符合 skill 命名规则 |
检查通过 → 告知用户:✅ 验收通过,Skill 可用检查不通过 → 列出问题项 → 自动修复或提示用户修改
产出物目录
<workspace>/
└── skills/
└── <skill-name>/
├── SKILL.md ← 主文件(触发 + 核心工作流)
└── references/ ← 详细知识(按需拆分)
├── methodology.md
├── examples.md
└── faq.md依赖 Skill
| 依赖 | 用途 | 是否必须 |
|---|---|---|
ima | 读取知识库 API(搜索、浏览、下载) | ✅ 必须 |
pdf | 解析 PDF 内容 | 可选(有 PDF 内容时) |
docx | 解析 Word 内容 | 可选(有 DOCX 内容时) |
xlsx | 解析 Excel 内容 | 可选(有 XLSX 内容时) |
web_fetch | 抓取网页内容 | 可选(有网页时) |
qclaw-skill-creator | 使用 init_skill.py 创建目录骨架 | 可选(也可手动创建) |
⚠️ Gotchas
- 凭证必须在每个命令内联获取 — 每次调用 IMA API 都要执行
CREDS=$(bash '<SKILL_DIR>/get-token.sh'),不能用环境变量跨命令传递 - UTF-8 编码(仅 notes 模块) — 从笔记获取的内容写入文件前必须校验 UTF-8 编码
- 文件上传保持原样(knowledge-base 模块) — 上传文件到知识库时不要转码
- PowerShell 5.1 陷阱 —
Invoke-RestMethod会静默将 UTF-8 Body 转为 GBK,必须用字节数组模式发送请求 - 隐藏内部 ID — 面向用户展示时不要暴露
knowledge_base_id、media_id等,始终用可读名称 - 蒸馏前确认范围 — 不要盲目蒸馏整个知识库,先让用户选定具体条目
- references 不超过一层嵌套 — 所有 reference 文件直接挂在
references/下,不要子目录 - SKILL.md 是给用户看的 — 不要放系统内部操作细节(如凭证获取方式),只放有用的技能知识
命令速查
| 操作 | 命令 |
|---|---|
| 浏览知识库列表 | ima_api "openapi/wiki/v1/search_knowledge_base" '{"query":"", "limit":20}' |
| 浏览知识库根目录 | ima_api "openapi/wiki/v1/get_knowledge_list" '{"knowledge_base_id":"<id>", "limit":20}' |
| 搜索知识库内容 | ima_api "openapi/wiki/v1/search_knowledge" '{"query":"关键词", "knowledge_base_id":"<id>"}' |
| 获取知识库详情 | ima_api "openapi/wiki/v1/get_knowledge_base" '{"ids":["<id>"]}' |
| 下载文件(创建媒体) | ima_api "openapi/wiki/v1/create_media" '{"file_name":"...", "file_size":..., "content_type":"...", "knowledge_base_id":"<id>"}' |
| 创建 skill 目录骨架 | python scripts/init_skill.py <skill-name> --path ~/.qclaw/skills |