一只阿木木

我是怎么用 book-to-skill 拆一本书的:从 PDF 到可调用 Skill 的全过程

by 一只阿木木

这篇文章会很长。

因为我想完整地记录一件事: 一本书,是怎么从一个 PDF 文件,变成一个我的 AI 系统可以随时调用的"能力模块"的。

全程有截图,有命令,有对比实验,有踩坑。 可以复现。

我整理书架的时候,翻出来一本书

去年年底,我整理书架的时候,翻出来一本《卡片笔记写作法》。

封面有折痕,书脊有裂缝,某些页角被我折起来了——这说明我认真读过它。

我拿起来随手翻了翻,发现里面有我用铅笔画的波浪线、写的批注、圈出来的关键词。

有一条批注我写着:"重要!!记住这个!"

然后我看了看那段文字。

我完全不记得这个观点了。

不是模糊地记得。是完全不记得。就好像我从来没读过这本书。

这让我很不舒服。

不只是因为读了等于没读这件事本身。而是因为我意识到,我对这本书做的所有事情——买它、读它、画线、写批注、折页——全部是为了让自己感觉在学习,而不是真正在学习。

那种读书仪式感,我熟练地完成了。 但知识,从来没有真正进入我的系统。

后来我问了自己一个问题:

如果我要在三年后用到这本书里的某个框架,我能用到吗?

答案是不能。

因为那本书里的知识,存在于书里,而不是存在于一个我随时可以调用的地方。

这是我开始认真研究 book-to-skill 的真正原因。

传统读书笔记解决不了这个问题

在讲 book-to-skill 之前,我需要先说清楚,为什么传统的读书笔记方法,没有解决我上面说的那个问题。

不是因为方法不好。卡片笔记、康奈尔笔记、渐进式总结——这些方法我都认真实践过,它们有价值。

问题出在另一个地方:

传统笔记的三个结构性局限

局限一:笔记是你去找它,而不是它在你需要时出现。

我在 Obsidian 里有关于《卡片笔记写作法》的笔记。写得还不错,摘了核心概念,写了自己的想法。

但这篇笔记存在的方式,是我主动去搜索、去翻找的时候,它才出现。

如果我在写一篇文章的过程中,没有意识到"这个场景和 Zettelkasten 的某个原则是相关的",这篇笔记就永远不会出现在我的工作流里。

笔记需要你去"记得它存在",才有价值。

而这件事,正是人类记忆最不擅长的事。

局限二:笔记没有理解语境,只有原始内容。

我的读书笔记通常长这样:

text

卡片笔记写作法 - 核心概念

永久笔记:用自己的话写的、独立的、可以连接的笔记
文献笔记:读书时记录的参考内容
闪念笔记:随手记的想法,需要每天清空

这段内容是准确的,但它是静态的。

它没有办法回答我的问题,比如:

  • "我现在在写关于 PKM 的文章,Zettelkasten 里有没有和这个话题相关的观点?"
  • "book-to-skill 的设计逻辑,和 Zettelkasten 有什么共同之处?"
  • "如果用 Zettelkasten 的视角来看我现在的 Vault 结构,它会说什么?"

笔记不会回答这些问题。它只是静静地躺在那里。

局限三:笔记的价值不会随时间增长,只会随时间衰减。

记完笔记的那一天,是笔记价值最高的时刻。

随着时间推移,你离那本书越来越远,上下文越来越模糊,笔记的可用性越来越低。

最后,你要使用一条笔记,需要先花时间重新激活它在你脑子里的上下文——而这个重新激活的成本,往往高到让你放弃使用它。

这三个局限,本质上都指向同一件事:

传统笔记存的是内容,但你真正需要的是可调用的能力。

一本书教会你的,不只是几个概念,而是一套看问题的框架、一套解决特定问题的方法论。

book-to-skill 要做的,就是把这套框架和方法论,封装成一个 AI 可以随时调用的能力模块。

实验设计:我选了哪本书,为什么选它

在讲操作过程之前,先说清楚我这次实验选的书,以及为什么选它。

我选的是《卡片笔记写作法》。

理由有三个:

理由一:这本书和我的系统高度相关。

Zettelkasten 方法论是整个 PKM 领域的基础框架之一。我在建造 AI 第二大脑的过程中,Obsidian 的 Vault 结构设计、知识连接逻辑,很多地方都受到这本书的影响。

把它拆成 Skill,意味着我的 AI 系统可以在任何时候,用这本书的框架来分析我的知识库,或者指导新内容的组织。

理由二:这是一本"方法论书",而不是"知识书"。

book-to-skill 在某些类型的书上效果极好,在某些类型的书上效果有限。

方法论书(告诉你怎么做某件事的)是效果最好的一类。因为这类书的核心价值,本来就是"给你一套可以重复使用的方法"——这和 Skill 的设计完全匹配。

相比之下,叙事类的书(故事、传记)或者纯知识积累类的书(历史、科学),拆成 Skill 的价值就没那么直接。

理由三:我真的读过这本书,拆解时我能判断输出质量。

这一点很重要,但经常被忽略。

你拆一本你没读过的书,生成了一堆 Skill 文件,但你没有办法判断 AI 理解这本书的方式,是否准确,是否完整,是否抓住了最重要的东西。

第一次实验,选一本你读过的书。你可以对比:AI 的理解,和你自己的理解,差在哪里?


完整操作过程

好,进入正题。


准备工作:整理输入材料

在运行 book-to-skill 之前,有一件事我学到的很重要——

垃圾进,垃圾出。输入材料的质量,直接决定 Skill 的质量。

我做了以下准备:

① 确认 PDF 版本

我有两个版本的 PDF:

  • 一个是扫描版(图片 PDF),OCR 质量一般
  • 一个是原生 PDF(文字可以选中复制)

选原生 PDF。扫描版拆出来的 Skill 质量明显差很多,章节识别不准确,有时候会把页眉页脚的文字混入正文。

② 快速浏览确认结构

在运行命令之前,我先快速翻了一遍书的目录,在脑子里有一个大概的结构印象:

text

《卡片笔记写作法》结构
├── 第一部分:写作的基础
│   └── 工具、方法、态度
├── 第二部分:四种笔记类型
│   └── 闪念笔记、文献笔记、永久笔记、项目笔记
├── 第三部分:运作流程
│   └── 从想法到写作的完整链路
└── 第四部分:深化思考
    └── 连接、创意、洞见

这个步骤不是必须的,但有了这个印象,我在验证 Skill 输出质量的时候,有一个基准。


第一步:运行 book-to-skill 命令

打开终端,进入项目目录,运行:

Bash

/book-to-skill ~/books/zettelkasten-method.pdf

如果你想给这个 Skill 指定一个更清晰的名字:

Bash

/book-to-skill ~/books/zettelkasten-method.pdf zettelkasten

然后就是等待。

处理一本 300 页左右的书,大概需要 3-8 分钟,取决于 PDF 的复杂程度和当前的 API 响应速度。

运行过程中,终端会实时显示进度:

text

📖 Processing: zettelkasten-method.pdf
📑 Extracting text... done
📋 Identifying structure... done
  └── Found 4 parts, 16 chapters
🧠 Generating SKILL.md... done
📂 Generating chapter files...
  └── ch01-writing-foundation.md... done
  └── ch02-note-types.md... done
  └── ch03-workflow.md... done
  └── ch04-deep-thinking.md... done
  ✅ 16 chapter files generated
🔗 Generating index... done

✅ Skill created: ~/.claude/skills/zettelkasten/
   Core file: SKILL.md (3.8K tokens)
   Chapters: 16 files
   Total: ~24K tokens (loaded on demand)


第二步:查看生成的 Skill 文件结构

运行完成之后,进入生成的目录看看里面有什么:

Bash

cd ~/.claude/skills/zettelkasten/
ls -la

输出:

text

~/.claude/skills/zettelkasten/
├── SKILL.md                          ← 核心文件(每次会话必加载)
├── index.md                          ← 章节索引(按需加载)
├── chapters/
│   ├── ch01-writing-foundation.md
│   ├── ch02-four-types-of-notes.md
│   ├── ch03-slip-box-workflow.md
│   ├── ch04-thinking-with-slipbox.md
│   ├── ch05-reading-and-literature-notes.md
│   ├── ch06-permanent-notes.md
│   ├── ch07-developing-ideas.md
│   ├── ch08-building-a-second-brain.md
│   ├── ch09-writing-for-understanding.md
│   ├── ch10-share-your-insight.md
│   ├── ch11-thinking-by-writing.md
│   ├── ch12-patterns-and-categories.md
│   ├── ch13-generating-ideas.md
│   ├── ch14-creativity.md
│   ├── ch15-selection-and-start-writing.md
│   └── ch16-finish-writing.md
└── metadata.json                     ← Skill 元数据

第三步:深度阅读 SKILL.md

这是整个 Skill 的核心文件,也是我最认真审查的部分。

SKILL.md 的结构大致长这样:

Markdown

# Skill: Zettelkasten Method
# Source: 《卡片笔记写作法》Sönke Ahrens
# Generated: 2024-01-15
# Core tokens: ~3.8K

## What This Skill Covers
这本书讲的是一套以卡片盒(Slip-box / Zettelkasten)为核心的
知识管理和写作方法论……

## Core Framework
### 四种笔记类型
1. 闪念笔记(Fleeting Notes)
   - 定义:……
   - 用途:……
   - 关键原则:……

2. 文献笔记(Literature Notes)
   - 定义:……
   - 与闪念笔记的区别:……
   - 最常见的错误:……

3. 永久笔记(Permanent Notes)
   - 定义:……
   - 如何从文献笔记转化为永久笔记:……
   - 质量标准:……

4. 项目笔记(Project Notes)
   - ……

### 核心操作流程
Step 1: 捕获闪念笔记
Step 2: 整理文献笔记
Step 3: 提炼永久笔记
Step 4: 归入卡片盒并建立连接
Step 5: 从卡片盒中发展写作主题

### 关键洞见(直接来自原文)
- 写作不是线性的,而是从卡片盒中涌现的
- 笔记的连接比笔记本身更有价值
- ……

## When To Use This Skill
- 当需要建立个人知识管理系统时
- 当讨论笔记方法论相关话题时
- 当评估某个 PKM 工具是否符合 Zettelkasten 原则时
- 当需要指导如何从阅读转化为写作时

## Chapter Map(按需加载)
- ch02: 深入了解四种笔记类型的完整定义和案例
- ch03: 完整的工作流程和操作细节
- ch06: 永久笔记的详细写作指南
……

## Key Terms
永久笔记 / Permanent Note: ……
文献笔记 / Literature Note: ……
……

我在审查 SKILL.md 的时候,关注三件事:

① 核心框架有没有被准确识别?

翻开书的目录,对比 SKILL.md 里的 Core Framework——看 AI 是否抓住了这本书最重要的结构。

《卡片笔记写作法》的核心是"四种笔记类型"和"工作流程",这两件事在 SKILL.md 里都清晰地呈现了。这是一个好的信号。

② 关键洞见有没有被提炼出来?

一本书之所以值得读,往往是因为它有几个真正改变你思维方式的观点。

我检查 SKILL.md 里的 Key Insights 部分,看这些洞见是否抓住了我当时读这本书时被触动的那些点。

如果有偏差,我会手动编辑 SKILL.md,补充或修正。

③ "When To Use This Skill" 有没有准确描述使用场景?

这个部分决定了 AI 在什么情况下会主动"想到"调用这个 Skill。

如果这部分描述模糊,Skill 的激活率会大大降低。

我通常会在生成之后,手动补充 2-3 个更具体的使用场景,比如:

  • "当阿木木在讨论 Obsidian Vault 结构设计时"
  • "当评估某种笔记方式是否适合构建知识资产时"

第四步:验证 Skill 质量——对比实验

这是我整个流程里最有意思的一步。

我做了一个对比实验:用同一组问题,分别问"没有加载 Skill 的 Claude"和"加载了 Zettelkasten Skill 的 Claude",看答案有什么区别。

测试问题组:

text

问题1:什么是永久笔记?它和普通笔记有什么区别?

问题2:我现在有一个关于"AI 辅助写作"的想法,
       按照 Zettelkasten 的方法,我应该怎么处理它?

问题3:我的 Obsidian Vault 结构是这样的(附结构截图),
       从 Zettelkasten 的视角来看,这个结构有什么问题?


问题1的对比:

没有 Skill 的回答(普通 Claude):

永久笔记是卡片笔记系统中最重要的笔记类型,是你用自己的话写成的、可以独立存在的笔记。它和普通笔记的区别在于:永久笔记需要用自己的语言写作,而不是摘抄;需要足够独立,脱离原始来源也能理解;需要与其他笔记建立连接。

加载了 Skill 的回答:

按照 Ahrens 在书中的定义,永久笔记有三个关键标准,缺一不可:

第一,语言标准:必须用你自己的话写作,不是摘抄,不是改写,是真正的消化后重述。判断标准是:如果你把原书扔掉,这条笔记依然完整、清晰、有价值。

第二,原子性标准:一条永久笔记只包含一个完整的想法。不是一个章节,不是一个主题,是一个可以独立表达的洞见。Ahrens 原文的表述是"one note, one idea"。

第三,连接标准:每条永久笔记在写完之后,必须立刻问自己:这条笔记和卡片盒里已有的哪些笔记相关?关联在哪里?这个连接的过程不是可选的,而是创造知识价值的核心动作。

和"普通笔记"最本质的区别不在于格式,而在于意图:普通笔记是为了记录,永久笔记是为了思考和连接。


差距一目了然。

没有 Skill 的回答是准确的,但是通用的——任何人都可以在网上搜到这个答案。

加载了 Skill 的回答,有原著的具体表述、有"缺一不可"这种来自书中的强度描述、有"原子性"这个技术性的判断标准、有对"连接"的强调——这些都是来自那本书的具体语境,不是通用的 AI 知识。


问题3的对比更能说明问题。

这是一个完全开放的、需要结合具体情境的问题。

没有 Skill 的回答:

从 Zettelkasten 的角度来看,你的 Vault 结构可以考虑以下几点:分离永久笔记和文献笔记,建立清晰的 Inbox 作为临时笔记区,增加标签系统……

这个回答是建议,但没有针对性——它对任何人的 Vault 都适用,也就是说对任何人的 Vault 都没什么特别的帮助。

加载了 Skill 的回答:

我看了你的 Vault 结构。有一个核心问题:

你的 Books/ 文件夹里存的是文献笔记,你的 Concepts/ 文件夹里存的应该是永久笔记。但按照 Zettelkasten 的原则,这两类笔记之间应该有一个主动的转化过程——不是自动发生的,而是你坐下来,看着文献笔记,问自己"这条内容对我的思考意味着什么?",然后用自己的语言重新写一条永久笔记,存入 Concepts/,并在那条永久笔记里建立对文献笔记的反向链接。

Ahrens 在第六章里特别强调,很多人的卡片笔记失败,就是因为把文献笔记直接当永久笔记用——直接摘录,加个标签,就算"建立了知识"。但这实际上跳过了最重要的那一步:消化和重述。

从你的结构来看,我有一个具体建议:在你的 CLAUDE.md 里加一条规则……


这就是 Skill 的真实价值所在:

它不是让 Claude 更聪明,而是让 Claude 更了解这本书的具体内容,从而能给出更精准、更有溯源的回答。


第五步:在 Claudian 里实际调用

验证完 Skill 质量,接下来是在 Claudian 里实际使用的工作流。

打开 Obsidian,激活 Claudian 侧边栏。

调用方式一:明确调用

在输入框输入 / 会弹出可用 Skill 列表:

text

> /zettelkasten

输入之后,侧边栏会显示一个确认:

text

✅ Skill loaded: Zettelkasten Method
   Core: SKILL.md (3.8K tokens)
   Ready for questions

然后开始提问。

调用方式二:通过 @ 引用笔记 + Skill 组合

这是我日常使用最多的姿势:

text

@Books/新入库的读书笔记.md
/zettelkasten

帮我分析:这篇文献笔记里,哪些内容值得转化为永久笔记?
按照 Zettelkasten 的标准,给我一个优先级排列。

这个组合的威力在于:Claudian 同时知道我的笔记内容和Zettelkasten 的方法论,可以做真正有针对性的分析,而不是泛泛而谈。

调用方式三:内联编辑

在 Obsidian 里选中一段我写的笔记文字,按下 Cmd+Shift+E(内联编辑快捷键),输入:

text

/zettelkasten
按照永久笔记的写作标准,改写这段内容。
要求:用我自己的话,原子性,保留核心洞见。

Claudian 会在原位置展示改写结果,带有词级 diff,我可以选择接受、拒绝、或者继续迭代。


三类书的拆解效果:诚实的评估

用了几个月,我积累了大概 20+ 个 Skill,对不同类型的书,拆解效果有非常明显的差异。

这件事我想诚实地说。


✅ 效果极好的:方法论书 + 框架书

代表书目:《卡片笔记写作法》《金字塔原理》《系统思考》《用户故事地图》

为什么效果好:

这类书的核心价值,本来就是一套可重复使用的方法。书中的框架、流程、判断标准,天然适合被提炼成 Skill 的结构。

拆出来之后,每次调用,AI 能给出有框架支撑、有书中原则依据的具体建议——这正是这类书的精华所在。


✅ 效果很好的:内部文档 + 个人规范

代表来源:项目 README、架构决策记录(ADR)、你自己写的方法论文档

为什么效果好:

这类"书"里的内容,外部 AI 完全不知道(因为它是你的私有知识)。拆成 Skill 之后,AI 拥有了理解你私有系统的能力——这是最不可替代的价值。

我把自己之前整理的"公众号选题框架.md"拆成了一个 Skill,现在每次做内容规划,AI 能基于我自己的框架给建议,而不是网上那些通用的内容策略。


⚠️ 效果一般的:知识密度极高的学术书

代表书目:认知科学教材、机器学习理论书

为什么效果有限:

这类书的价值,不在于"一套可调用的方法",而在于构建深度理解。

拆出来的 Skill 能告诉你概念定义、理论框架,但真正的价值——那种读了 200 页之后在脑子里形成的系统性理解——没有办法被封装进一个文件。

这类书拆成 Skill,不是没有用,而是用法不同:用来快速回查定义和公式,而不是期待它给你做深度推理。


❌ 效果差的:叙事类 + 散文类

代表书目:人物传记、文学作品、游记

为什么效果差:

这类书的核心价值是叙事本身的体验——你读《史蒂夫·乔布斯传》,是为了感受那个人的成长轨迹,而不是为了提炼一套"创业方法论"。

强行把这类书拆成 Skill,AI 会尝试从里面提炼"洞见"和"框架",但这些"洞见"往往是表浅的、失真的——因为这本来就不是那类书的长处。

我的经验:叙事类书,就好好读,好好做文献笔记,不需要拆 Skill。


我的拆书优先级判断框架

做了这么多实验之后,我整理了一个简单的判断框架:

text

在决定要不要拆一本书之前,问四个问题:

Q1:这本书讲的是"怎么做某件事"吗?
    → 是:优先拆。方法论书,效果最好。
    → 否:继续问 Q2。

Q2:这本书里有我会反复用到的框架或判断标准吗?
    → 是:值得拆。
    → 否:继续问 Q3。

Q3:这本书里的内容,是只有这本书里才有的"私有知识"吗?
    (比如:内部文档、你自己写的方法论、小众领域的专业书)
    → 是:强烈建议拆。AI 原本不知道这些内容。
    → 否:继续问 Q4。

Q4:这本书,Claude 在训练数据里大概率已经有很好的覆盖了吗?
    → 是:可以不拆,直接问 Claude 即可,效果差不多。
    → 否:拆。

用这个框架过滤,我的 Skill 库从"见书就拆"的冲动,变成了一个精挑细选、每个 Skill 都有明确使用价值的工具库。

质量 > 数量,这件事在 Skill 建设上尤其成立。


踩过的坑,给你省时间

说几个我实际踩过的坑:


坑1:扫描版 PDF 拆出来的 Skill 质量很差

我有一批早年下载的书,都是扫描版。拆出来的 Skill 文件里,章节识别错乱,有大量乱码,某些页的内容完全缺失。

解决方案: 优先找原生 PDF(能选中文字的版本)。如果只有扫描版,先用 Adobe Acrobat 或者 PDF OCR 工具做一遍文字识别,再拆。


坑2:书的目录结构不清晰,导致章节分割错误

有些书的 PDF 没有书签,或者书签层级不准确,book-to-skill 会按照它自己的逻辑猜测章节边界,有时候猜错。

解决方案: 运行完成后,打开 chapters/ 文件夹,快速浏览几个章节文件,检查内容是否连贯。如果发现明显的分割错误,手动编辑对应章节文件,合并或拆分。


坑3:SKILL.md 太长,占用 token 太多

我早期有一个习惯:在 SKILL.md 里塞很多内容,觉得越详细越好。

结果发现,SKILL.md 太长(超过 6K tokens),在很多对话场景下,会挤占掉其他重要上下文的空间,导致 AI 在同时处理多个任务时,表现反而变差。

解决方案: SKILL.md 只保留核心框架 + 使用场景 + 关键术语。详细内容放在各章节文件里,按需加载。目标是把 SKILL.md 控制在 3-4K tokens 以内。


坑4:拆了很多书,但从来不用

这是最大的坑,也是最隐蔽的。

我花了好几个晚上,把书架上所有我觉得"以后可能会用到"的书,全部拆成了 Skill。20 多个 Skill,整整齐齐存在 ~/.claude/skills/ 里。

然后我发现,其中有 15 个,在接下来两个月里,我从来没有调用过一次。

这些 Skill 和我以前没读完就落灰的书,本质上是同一件事。

解决方案: 拆书之前,问自己一个问题:"我在接下来两周内,有没有一个具体的场景会用到这本书?"

如果没有,先不拆。等到真正需要的时候再拆,那时候的 Skill 质量反而更高,因为你知道自己需要什么。


最后说一件事

写完这篇文章,我重新翻出了那本《卡片笔记写作法》。

书还在,折角还在,那条"重要!!记住这个!"的批注还在。

但这本书现在还活在另一个地方——

在我的 ~/.claude/skills/zettelkasten/ 里,它的框架、它的原则、它的关键洞见,随时可以被调用。

我的 Obsidian 里每一篇新的笔记,如果和 Zettelkasten 的某个概念相关,这本书就会出现,告诉我它是否符合"永久笔记"的标准,帮我判断该如何组织它,该和哪些已有的笔记建立连接。

这本书,不再只是一本我读过然后忘掉的书。

它成了我系统的一部分。它在参与我正在做的每一件事。

这就是从 PDF 到可调用 Skill 的全过程——

不只是技术操作,是一种对待知识的不同方式。


下一篇,我打算写 CLAUDE.md 的完整指南——为什么一个文件,决定了你整个 AI 系统的上限。

如果你在实践 book-to-skill 的过程中有任何问题,欢迎在评论区告诉我,或者后台直接发消息。

我会在下期 Changelog 里统一回复。



我是【一只阿木木】——公开建造我的 AI 第二大脑。

普通人如何用 AI 搭建自己的知识操作系统?

一个程序员出身的知识工作者,公开记录自己如何用 AI 工具搭建个人知识系统、把读过的书和做过的项目变成可复用资产的全过程。

欢迎加入行动营👇获取更多Obsidian + AI数字大脑实践

Image

我相信:在 AI 时代,每个普通人都该拥有一个自动生长的知识系统

欢迎关注【一只阿木木】🌊