learn-from-book-skill
把一本书从"读过"变成"真正掌握",再变成"可以随时调用"的能力。
核心理念
读书记不住、用不上,根本原因是没有完成"知识到能力"的转化。本 skill 的核心逻辑:
书 → 原文获取 → 五要素笔记 → 知识卡片 → skill → 实际应用
每一步都有明确标准,不是"读一遍就完了"。
阶段 0:选书与准备
0.1 选书三问(决定读之前必答)
在开始读之前,先明确三个问题:
问题1:这本书解决什么具体问题?
→ 模糊答案("提升管理能力")→ 重选
→ 清晰答案("不知道如何做年度复盘")→ 通过
问题2:读完之后,我要在哪个具体场景用它?
→ 不能说出一个具体场景 → 重选
→ 能说出 → 通过
问题3:这本书的核心方法,和我已经知道的方法有什么不同?
→ 不知道 → 先做竞品扫描(查现有 skill)
→ 知道 → 通过
0.2 读书优先级(参照知识体系分析报告)
| 优先级 | 方向 | 代表书目 | 适用场景 |
|---|---|---|---|
| P0⭐⭐⭐⭐⭐ | 管理学经典 | 金字塔原理 / 科学管理原理 / 卓有成效的管理者 | 打底层 |
| P0⭐⭐⭐⭐⭐ | 图形设计 | Edward Tufte:The Visual Display / Envisioning Information | 提升视觉表达 |
| P1⭐⭐⭐⭐ | 战略框架 | 波特竞争战略 / 竞争优势 | 商业分析 |
| P1⭐⭐⭐⭐ | 中国管理 | 海尔 OEC / 华为灰度 / 阿里三板斧 | 本土实践 |
| P2⭐⭐⭐ | 辅助工具 | 演说之禅 / Graphic Design for Artists | 演示/排版 |
0.3 准备工作清单
□ 确认书籍载体(纸书/扫描PDF/文字PDF/网页/有声书)
□ 扫描件 → 走 OCR(用 work-distill-skill 的 ocr_book.py)
□ 文字PDF/纸书 → 用 PyMuPDF 提取正文
□ 建立书籍档案:
路径:D:/桌面/Hermes工作/小说创作/_共用/知识沉淀/书籍蒸馏库/<书名>/
内容:原始文本/笔记/skill产物/使用记录
□ 查重:同名 skill 是否已存在(避免重复蒸馏)
阶段 1:获取书籍内容
1.1 载体类型与获取方式(嵌套子 skill)
先确认文件来源(参见 1.3 文件来源判定规则),再选择对应子 skill:
| 载体 | 子 skill | 触发方式 |
|---|---|---|
| 文字PDF(电子版,可复制文字) | references/pdf-extract-skill/ |
/pdf-extract-skill <文件路径> |
| 扫描PDF / 图片(纸质书扫描) | references/scan-ocr-skill/ |
/scan-ocr-skill <文件路径> |
| 音频/视频文件(有声书、播客、课程录音) | references/audio-transcribe-skill/ |
/audio-transcribe-skill <文件路径> |
| 网页电子书 | mcp__web_search__fetchWebContent | 直接抓正文 |
| 微信读书/京东读书 | 导出笔记功能 | 复制划线笔记为 txt |
> 注意:三个子 skill 均位于 learn-from-book-skill/references/ 下,每个子 skill 有独立 SKILL.md、AGENTS.md 和版本管理,可单独安装到任何平台。
1.2 OCR 判定标准(扫描件必读)
import fitz
doc = fitz.open(pdf_path)
text_sample = "".join(page.get_text() for page in doc[:5])
if len(text_sample) < 100: # 前5页文字量<100字符 → 扫描件
# 走 OCR 流程
pass
else:
# 走文字提取流程
pass
1.3 文件路径判定规则(每次必先确认)
在尝试获取书籍内容之前,先明确文件路径:
| 场景 | 条件 | 动作 |
|---|---|---|
| 用户给了文件路径 | 用户明确提供了文件的绝对路径或相对路径 | 直接用该文件,走步骤 1.2 判断是扫描件还是文字版 |
| 用户没给文件 | 用户未提供任何本地文件 | 上网搜索(用 mcp__web_search__search 搜书名/作者/PDF下载),搜索被污染时用已有知识直接蒸馏 |
| 用户指定电脑文件夹 | 用户说"把电脑里 XX 文件夹下的全部/指定文件蒸馏成 skill" | 在用户指定的文件夹路径下搜索文件,再按文件类型走对应处理流程 |
判定流程:
用户给了本地文件路径?
│
├─ 是 → 判断是扫描件还是文字版
│ ├─ 扫描件(文字量<100字/页)→ OCR
│ └─ 文字版(可直接提取)→ PyMuPDF
│
├─ 否 → 用户说"去网上搜"?
│ ├─ 是 → mcp__web_search__search → 搜索失败/污染 → 用已有知识蒸馏
│ └─ 否 → 用户指定了电脑文件夹?
│ ├─ 是 → 在指定文件夹搜索文件
│ └─ 否 → 询问用户提供文件或授权上网搜索
│
└─ 用户指定了电脑文件夹?
└─ 是 → 扫描指定文件夹内的文件
├─ 指定了具体文件 → 只处理该文件
└─ 指定了文件夹 → 遍历文件夹(可指定文件类型过滤)
1.5 文本质量检查
获取文本后,必查:
□ 总字符数 > 5000(低于此值说明获取失败或非目标内容)
□ 章节标题可识别(用 "第X章" 或 "Chapter" 判定)
□ 无大段乱码(连续 3 行以上无意义字符 → 重新 OCR)
□ 版权说明已排除(不进入正文)
阶段 2:精读与五要素笔记
2.1 精读的核心动作
精读不是"从头到尾看一遍",而是主动提取 + 三层笔记分层。
笔记分三层(对应 Zettelkasten 三层笔记体系):
| 笔记层 | 名称 | 什么时候写 | 要求 |
|---|---|---|---|
| Layer 0 | 临时笔记 | 读的时候随时记 | 摘录原文 + 来源,不求结构,写完即用 |
| Layer 1 | 文献笔记 | 读完后整理 | 五要素格式初稿,不需要完美,重点是"用自己的话重述" |
| Layer 2 | 永久笔记 | 决定蒸馏 skill 时 | 五要素定稿,通过四维度评估,才算永久 |
三层笔记流程:
读时 → 临时笔记(Layer 0)
→ 随手记摘录,不整理,想到什么记什么
→ 来源:文件名/页码/日期,必须记
读后 → 文献笔记(Layer 1)
→ 写五要素初稿,不必完美
→ 自问:这个方法和我已有的哪个知识有关联?
决定蒸馏 → 永久笔记(Layer 2)
→ 通过四维度评估(可执行/独特/可验证/使用频率)
→ 五要素定稿
→ 才进入 skill 蒸馏阶段
精读动作清单:
□ 识别章节核心论点(一句话)
□ 提取支撑这个论点的 3 个关键证据
□ 判断这个论点适用于什么场景(When/Who)
□ 判断什么情况下不适用(反触发)
□ 思考这个方法和已有知识的关联(与哪个 skill/知识点相关)
□ 用自己的话重述,不要抄原文(文献笔记核心)
□ 在 01_原文精华.md 标注这段笔记对应的原文位置(便于回查)
2.2 五要素笔记格式(每个知识点必填)
每个值得沉淀的知识点,用以下五要素结构做笔记:
## 【知识点编号】知识点名称
### 一句话定义
[用不超过 25 个字,说清楚这是什么]
### 起源
[谁提出的?哪一年?什么背景?为什么要解决这个问题?1-3句]
### 核心步骤
[严格 3-8 步,编号列出,每步 1 句话。不超过 8 步]
### 关键要点
[从步骤中提炼 2-3 个最关键的要点,每点 1 句话]
### 适用例子
[一个具体的工作/生活场景,代入感要强,至少 3 句]
### 反触发
[什么时候不该用?至少 1 条,用 ❌ 或 ⚠️ 标注]
五要素笔记示例(以"PDCA"为例):
## 【M-01】PDCA 循环(持续改进)
### 一句话定义
用"计划→执行→检查→处理"四步循环,推动工作持续改进。
### 起源
由美国统计学家沃特·阿曼德·休哈特(Walter A. Shewhart)在1930年代提出,
后被威廉·爱德华兹·戴明(W. Edwards Deming)在1950年代在日本推广,
因此又称"戴明环"。目的是解决日本企业质量管理中"问题反复发生"的核心痛点。
### 核心步骤
1. **Plan(计划)**:分析现状,找出问题,确定改进目标,制定行动计划
2. **Do(执行)**:按计划实施,必要时先做小范围试点
3. **Check(检查)**:对照计划目标,检查执行情况,记录结果
4. **Act(处理)**:总结经验教训,把成功经验标准化,遗留问题进入下一个PDCA
### 关键要点
- **闭环原则**:四个步骤缺一不可,PDCA 是无限循环不是一次性流程
- **数据驱动**:Check 阶段必须用数据说话,不能用"感觉还行"
- **标准化**:Act 阶段要把成功经验固化为标准操作程序(SOP),防止问题复发
### 适用例子
比如:客服团队"用户投诉率从 8% 降到 3%",用 PDCA 循环:
- Plan:分析 500 条投诉记录,定位"等待时间长"是主要原因,设定目标 3%
- Do:本周试点"等待超 2 分钟自动回拨"功能
- Check:对比试点前后的投诉率数据
- Act:有效则写进 SOP;无效则进下一个 PDCA 循环
### 反触发
- ❌ 紧急救火场景不适用(先用 5W2H 应急,PDCA 适合系统性问题)
- ❌ 目标本身不清晰时不适用(先做 SMART 目标设定)
- ❌ 只做一次不算 PDCA(没有"循环"就不是 PDCA)
2.3 笔记管理规范
笔记存放路径:
D:/桌面/Hermes工作/小说创作/_共用/知识沉淀/书籍蒸馏库/<书名>/
├── 00_书籍档案.md ← 书名/作者/出版年/读毕日期/一句话评价
├── 01_原文精华.md ← 原文摘录(每段≤150字,超出部分加"...")
├── 02_五要素笔记/ ← 每个知识点一个 .md 文件
│ ├── M-01_PDCA循环.md
│ ├── M-02_丰田八步.md
│ └── ...
└── 03_与已有skill的关联.md ← 记录这个书的知识点和其他 skill 的交叉引用
阶段 3:知识蒸馏(→ 可调用的 skill)
3.1 判断:知识点值得蒸馏为 skill 吗?
用以下四维度评估每个五要素笔记:
| 维度 | 判断标准 | 是 → 蒸馏 | 否 → 归档 |
|---|---|---|---|
| 可执行性 | 能否写出"做 X 的具体步骤"? | 能 → 是 | 不能 → 否 |
| 独特性 | 这个方法是否在其他 skill 中已有且更完整? | 无重复 → 是 | 已有 → 合并到现有 skill |
| 可验证性 | 能否说清楚"做到了什么程度才算对"? | 能 → 是 | 不能 → 补充 |
| 使用频率 | 预估自己多久用一次? | ≥1次/月 → 是 | <1次/月 → 归档即可 |
3.2 skill 产出格式(基于 work-distill-skill 规范)
每个通过的知识点,蒸馏为独立 skill 文件:
---
name: <method-name>-skill
description: "<25字触发条件描述,用于 agent 判断何时调用>"
tags: [<领域>, <类型>]
metadata:
aid: e5b0b9e9be99
version: 1.0.0
source_book: <书名>
source_book_author: <作者>
source_book_year: <出版年>
skill_type: distilled-product
hermes:
project: <当前所属项目,如"海开智慧工作"/"归元问道小说"/"通用"> # PARA 归属:项目
area: <长期领域,如"结构化表达"/"决策"/"沟通"> # PARA 归属:领域
status: active # active | archived
use_count: 0 # 累计调用次数
created_at: <YYYY-MM-DD>
last_used: <YYYY-MM-DD>
watermark:
type: distilled-product
aid: e5b0b9e9be99
attribution: learn-from-book-skill v1.1.0
build_id: <book>-<n>
license: 796c662d6c66622d6b6579
source_text_ref: <原文精华.md中的位置,例:行 128-135>
---
# <方法名>
## 一句话定义
[从五要素笔记复制]
## 起源
[从五要素笔记复制]
## 核心步骤
[从五要素笔记复制,严格 3-8 步]
## 关键要点
[从五要素笔记复制]
## 适用例子
[从五要素笔记复制,必须代入自己的实际场景]
## 反触发
[从五要素笔记复制]
## 使用指南
### 什么时候用
[用自己的话描述触发条件,写给失忆的自己]
### 什么时候不用
[从反触发复制]
### 我在什么场景用过
[留空,第一次用之后填写,逐步积累自己的使用记录]
3.3 蒸馏完成后的归档
书籍蒸馏库/<书名>/
├── 00_书籍档案.md
├── 01_原文精华.md
├── 02_五要素笔记/
├── 03_已蒸馏skill/ ← 蒸馏产物移动到这里
│ ├── pdca循环-skill.md
│ └── ...
└── 04_使用记录.md ← 记录每次调用这个书的方法的时间/场景/效果
阶段 4:安装与使用
4.1 安装到 skills 目录
蒸馏出的 skill,移动到统一位置并安装:
# 安装到 hermes skills(主平台)
cp <skill>.md C:/Users/Administrator/.hermes/skills/<method-name>-skill/SKILL.md
# 安装到其他平台(如需要)
# 见 work-distill-skill 的 install_distilled.py
4.2 使用记录规范
每次调用 skill 后,在 04_使用记录.md 中记录:
## 2026-08-28 | 调用:pdca循环-skill
**场景**:季度目标复盘
**问题**:Q2销售目标只完成了 68%,不知道根因在哪
**使用过程**:用 PDCA 逐层追问,发现问题出在"只做了 Plan-Do,没做 Check"
**结果**:制定了 Q3 的 Check 机制(周报数据追踪)
**下次改进**:Do 阶段要留出试点时间,不能直接全量铺开
4.3 skill 生命周期与迭代(Progressive Summarization 理念)
skill 不是一次性写完就结束的,而是在使用中迭代完善。
skill 生命周期:
创建(v1.0.0) → 多次使用 → 迭代更新 → 归档/合并
↑ ↓
└──────────── 每季回顾,评估有效性 ────────┘
每次使用后(必须记录):
在 references/使用记录.md 中追加:
## YYYY-MM-DD | 调用:<skill名>
- **场景**:用了 skill 解决了什么问题
- **过程**:skill 的哪几步被调用?结果如何?
- **评估**:skill 的触发条件/步骤/例子是否准确?有无错误?
- **改进**:哪里不准确/不完整,需要下次更新?
每季回顾(每3个月一次):
□ 检查触发条件是否仍然准确(用户说 XX 时是否真的调用了它?)
□ 从使用记录中提取真实案例,补充到"适用例子"部分
□ 检查"反触发"是否有新发现的不适用场景
□ 决定:保留 / 版本升级 / 合并到其他 skill / 归档
版本升级规则:
patch(小修):触发条件描述更精准、例子补充、错字修正 → 1.0.x
minor(中改):步骤调整、要点补充、反触发增加 → 1.x.0
major(大改):结构变化、核心方法变更 → x.0.0
4.4 skill 归档与合并
阶段 5:图形化辅助(提升记忆与调用)
5.1 为什么要画图
"一张好图,胜过 500 字描述"。每个 skill 蒸馏完成后,建议补充一个视觉原型描述(不需要真画图,用文字描述图解结构即可):
## 视觉原型描述(供未来绘图参考)
### 图解类型
[流程图 / 矩阵 / 层级 / 循环 / 金字塔 / 关系图]
### 结构描述
[文字描述图解的结构,例:"从左到右5格横向排列,每格内上一行标题、下一行1句说明,格之间用实线箭头连接"]
### 色彩建议
[建议用哪几种颜色,每种颜色代表什么含义]
### 核心特征
[这个图最关键的一个视觉特征,读者第一眼应该注意到什么]
5.2 图形语言规范(基于格式塔原则)
格式塔六原则(绘图时必查):
□ 接近原则:相关元素靠近,不相关元素拉开
□ 相似原则:同类型用同颜色/形状
□ 闭合原则:不画完整,读者会自动补全
□ 连续原则:箭头方向引导阅读顺序
□ 方向原则:有方向的线条表示流程/递进
□ 共同命运:同一方向的箭头表示同一类行为
认知负荷三不:
□ 不过度装饰(去掉阴影/3D效果)
□ 不超过4种颜色
□ 不用超过3种字体
对话/输出模板
典型对话场景
# 场景1:用户要求从书里提取知识点
用户:"我要读金字塔原理"
→ 阶段0:选书三问
→ 确认金字塔原理解决"结构化表达"问题
→ 阶段1:获取内容(文字PDF → PyMuPDF提取)
→ 阶段2→3:五要素笔记 + 蒸馏
# 场景2:用户要沉淀某本书的方法论
用户:"帮我把德鲁克卓有成效的管理者做成可用的 skill"
→ 确认书籍 → 获取 → 五要素笔记 → 评估 → 蒸馏 skill → 安装
# 场景3:用户只想问一个问题
用户:"读波特竞争战略前,要先了解什么?"
→ 直接回答(知识性问题,不需要走全链路)
用户提问示例
以下场景触发本 skill,agent 应按阶段 0→5 执行:
用户:"我要读金字塔原理这本书"
→ 阶段0:选书三问 → 确认这本书解决"结构化表达"问题
用户:"帮我从德鲁克卓有成效的管理者里提取知识点"
→ 阶段1:获取内容 → 阶段2:五要素笔记
用户:"这本书有什么值得沉淀的方法论?"
→ 阶段2→3:精读 → 评估 → 蒸馏
用户:"我想把读过的灰度管理实践变成能用的 skill"
→ 阶段3→4:五要素笔记 → 蒸馏 → 安装
用户:"如何把一本书变成方法论?"
→ 直接介绍 learn-from-book-skill 全链路
用户:"读波特竞争战略时,应该先了解波特五力的什么前提条件?"
→ 直接回答五力的前提条件(属于知识性问题,不需要走全链路)
常见陷阱
选书阶段
- ❌ 读了一本"看起来有用"但解决不了具体问题的书(先做三问)
- ❌ 读了一半发现和已有 skill 高度重复(先做 skill 查重)
获取阶段
- ❌ 扫描件 OCR 只做了前10页(要用全量,workers=7 并行)
- ❌ 文字 PDF 提取包含大量版权页/目录页(用页码范围过滤)
精读阶段
- ❌ 只划线不写笔记(划线只是"标记",五要素笔记才是"转化")
- ❌ 把原文大段复制过来(超过150字/段要精简,只留精华)
蒸馏阶段
- ❌ 不判断可执行性就直接蒸馏("要有战略思维"不是skill,"用波特五力分析竞争对手"才是)
- ❌ skill 描述写得模糊(trigger 条件不清晰,agent 不知道什么时候该调用)
- ❌ 反触发写"没有"(任何方法论都有边界,不适用的场景至少写1条)
安装阶段
- ❌ skill 装完不记录使用(没有使用记录的 skill,3个月后就会忘记它的存在)
- ❌ skill 描述和实际内容不一致(描述说"用于战略分析",实际内容是"时间管理")
验证清单
完成一本书的完整蒸馏后,对照检查:
□ 书籍档案已建立(00_书籍档案.md)
□ 原文精华已整理(01_原文精华.md,≤150字/段)
□ 五要素笔记≥3个知识点(02_五要素笔记/)
□ 每个知识点经过四维度评估
□ 通过评估的知识点已蒸馏为 skill(03_已蒸馏skill/)
□ 每个 skill 包含:定义/起源/步骤/要点/例子/反触发/使用指南
□ 视觉原型描述已完成(文字版,供未来绘图参考)
□ 使用记录已初始化(04_使用记录.md)
□ skill 已安装到 skills 目录
□ 已在使用记录中填写第一次使用场景(如果已使用)
核心文件路径
读书工作目录根:
D:/桌面/Hermes工作/小说创作/_共用/知识沉淀/书籍蒸馏库/
技能脚本(来自 work-distill-skill):
C:/Users/Administrator/.hermes/skills/work-distill-skill/scripts/ocr_book.py
已蒸馏 skill 存放:
C:/Users/Administrator/.hermes/skills/
(与 work-distill-skill、management-thinking-skill 同级)