乐于分享
好东西不私藏

每天认识一个 AI Agent Skill:把 PDF 书喂给 Claude Code,它就能帮你记住所有知识点

每天认识一个 AI Agent Skill:把 PDF 书喂给 Claude Code,它就能帮你记住所有知识点

一、问题背景

你买过多少本技术书,读完一遍就落灰了?三个月后连第七章讲过什么都想不起来。

想用 AI 帮忙查书,结果更糟。直接把 PDF 拖进 Claude 对话?一次 200K token,每次对话都得重新喂一遍。让 AI 凭记忆回答?它要么瞎编,要么说训练数据里没有这本书。自己整理笔记?写个 200 行的 Markdown,再也没打开过。

有没有一种办法,让 AI 把书吃进去,消化成结构化的知识,然后随叫随到?

book-to-skill 就是干这个的。

AI 眼中的世界:把知识蒸馏成技能

只用一本技术书的 PDF,跑一条命令,它就能把书里的框架、原则、反模式提炼成一套 Claude Code 能直接用的 skill。之后你在 Claude Code 里打下 /my-book cluster,AI 就自动加载对应章节,从真实内容里回答,不编造、不翻 PDF、不浪费 token。

二、适用场景

场景
说明
读技术书做项目
把《Designing Data-Intensive Applications》转成 skill,写代码时随时查 replication 和 partition 策略
研究论文复现
把几篇论文加自己的笔记合在一起,AI 帮你跨论文关联框架
内部文档/运维手册
团队的架构决策记录、运行手册、新人指南,一键转 skill,团队成员随时查
设计规范/品牌指南
品牌书转 skill,写前端代码时 AI 自动遵守品牌规范
备考复习
把教材转成 skill,用 /<book-slug> ch03 直达第三章复习

三、核心知识点

1.book-to-skill 不是把 PDF 丢进上下文。它的核心思路是编译时解析,运行时只加载需要的切片。一本 200K token 的书,每次查询只消耗约 5K token,节省 24 到 51 倍。

2.输出的是一个标准 skill 目录。包含 SKILL.md(核心心智模型加章节索引)、chapters/(每章一个文件,按需加载)、glossary.md(术语表)、patterns.md(模式列表)、cheatsheet.md(速查表)。

3.支持 7 种输入格式:PDF、EPUB、DOCX、Markdown、HTML、RTF、MOBI/AZW。一个命令可以同时处理多个文件。

4.技术书 vs 文字书自动识别。技术书(含代码、表格、公式)用 Docling 提取,保持 Markdown 表格和代码块;纯文字书用 pdftotext,秒级完成。

5.提取的是结构,不是摘要。skill 不是这本书讲了什么的书评,而是作者构建了哪些框架、什么时候用什么原则、避开哪些反模式。它是一个工具箱,不是读书笔记。

6.按需加载章节文件。章节文件不占用 skill 预算,直到你问到某个主题才加载。这使得同一个 skill 可以覆盖几百页的书而不膨胀上下文。

7.支持更新/折叠新内容。读了新论文或补充材料后,可以合并到已有 skill 里,不需要重新生成整个 skill。

8.跨平台兼容。遵循开放 Agent Skills 标准,同一个 skill 可以在 Claude Code、GitHub Copilot CLI、Amp 间通用。

9.本地处理,隐私安全。文本提取和 AI 分析都在本地跑,你的文件不会被上传到第三方。

10.成本极低。一本 400 页的技术书,转换成本约 1 美元(Claude Sonnet 4.5),之后每次查询只消耗几千 token。

四、整体接入思路

PDF/EPUB/DOCX 文件 → book-to-skill 提取文本 → AI 分析框架结构 → 生成 skill 文件 → Claude Code 按需加载

流程图

五、实战步骤

1. 安装 book-to-skill

在 Claude Code 中执行:

/book-to-skill

会自动检测安装状态。如果尚未安装,手动 git clone:

git clone https://github.com/virgiliojr94/book-to-skill.git ~/.claude/skills/book-to-skill

2. 检查提取器依赖

python3 ~/.claude/skills/book-to-skill/scripts/extract.py --check

这会列出每个格式的提取器安装状态,以及安装缺失工具的命令。

3. 安装 PDF 提取器(按需)

文字书:

# 安装 pdftotext(最快)sudo apt install poppler-utils

技术书(含代码/表格):

pip install docling

4. 准备你的 PDF 文件

把技术书 PDF 放到一个目录,比如 ~/books/designing-data-intensive-apps.pdf

5. 执行转换

在 Claude Code 中,输入:

/book-to-skill ~/books/designing-data-intensive-apps.pdf ddia

终端演示截图

6. 选择内容类型

AI 会问你是技术书还是文字书。技术书选 technical,文字书选 text

7. 确认成本估算

AI 会给出 token 估算和价格(约 1 美元),确认后开始生成。

8. 等待生成完成

提取加 AI 分析加生成 skill 文件,一本 400 页的书大约需要几分钟。

9. 使用 skill

在新会话中,直接输入:

/ddia replication/ddia ch05/ddia "what chapters do you have?"

10. 补充新内容

读了新论文要合并到已有 skill:

/book-to-skill ~/articles/new-paper.pdf ~/.claude/skills/ddia

11. 列出所有已安装的 skill

在 Claude Code 中:

/skills list

12. 清理不需要的 skill

删除对应目录即可:

rm -rf ~/.claude/skills/ddia

六、常用命令速查

操作
命令
安装 book-to-skill
git clone https://github.com/virgiliojr94/book-to-skill.git ~/.claude/skills/book-to-skill
转换一本书
/book-to-skill <path-to-pdf> <skill-name>
检查提取器
python3 scripts/extract.py --check
安装技术书提取器
pip install docling
安装文字书提取器
sudo apt install poppler-utils
使用 skill 查询
/<skill-name> <query>
查看 skill 章节
/<skill-name> "what chapters do you have?"
加载特定章节
/<skill-name> ch05
折叠新内容
/book-to-skill <new-file> <path-to-existing-skill>
列出所有 skill
/skills list
删除 skill
rm -rf ~/.claude/skills/<skill-name>
安装 EPUB 提取器
pip install ebooklib beautifulsoup4
安装 DOCX 提取器
pip install python-docx
安装 HTML 提取器
pip install beautifulsoup4
安装 RTF 提取器
pip install striprtf
安装 MOBI 提取器
下载 Calibre(ebook-convert)
只分析不生成
回答 cost estimate 时说 analyze only

七、配置示例

示例 1:转换一本技术书

/book-to-skill ~/books/pro-git.pdf pro-git

技术书模式,用 Docling 提取,保持代码块和表格结构。

示例 2:转换一个文件夹

/book-to-skill ~/workspace/project-docs/ project-knowledge

把整个 docs 目录转成一个 skill,包含架构决策记录、运行手册等。

示例 3:合并多个文件

/book-to-skill ~/papers/paper1.pdf ~/notes/export.txt unified-research

多篇论文加笔记合并成一个统一 skill。

示例 4:更新已有 skill

/book-to-skill ~/articles/new-paper.pdf ~/.claude/skills/unified-research

把新论文折叠进已有 skill,不重新生成全部。

示例 5:只分析不生成

在 cost estimate 阶段回答 analyze only,AI 会输出结构化分析报告供你预览,确认后再生成。

八、效果观察方法

1.Token 节省:对比直接丢 PDF 进上下文 vs 用 skill 查同一个问题,观察 token 消耗差异。一本 400 页的书:200K vs 5K。

2.回答准确度:问一个具体的技术细节(比如 DDIA 里对 replication 的 quorum 是怎么定义的),看 skill 是否从真实内容中回答,而不是胡编。

3.加载速度:第一次使用 /<skill-name> <query> 时,AI 会读取 SKILL.md 核心(约 4K token),然后按需加载对应章节(约 1K token),整体响应速度远快于读完整本书。

4.跨会话复用:skill 安装一次后,新会话中直接使用,不再需要重复加载。这是 vs 直接丢 PDF 的最大优势。

5.多文件整合:多个来源合并后,问跨文件的问题(比如 paper1 和 paper2 在这个概念上有什么异同),看 AI 是否能关联回答。

九、排查路径

问题
诊断
解法
安装后 skill 不显示
路径不对
确认 skill 在 ~/.claude/skills/book-to-skill/ 下,且有 SKILL.md 文件
PDF 提取为空
提取器未安装
运行 python3 scripts/extract.py --check 查看缺失的提取器
技术书表格丢失
用了 pdftotext 而非 Docling
安装 docling 后重新转换(pip install docling
中文 PDF 乱码
缺少中文字体支持
安装中文字体或使用 Docling 模式
生成成本太高
未确认 cost estimate
先在 cost estimate 阶段选 analyze only 预览
skill 太大
设置了错误的 depth
在 Step 4 选 reference only(参考模式)缩小单章预算
更新后没变化
新内容未被识别
确认新文件路径正确,且是支持的格式
命令找不到
安装路径不对
重新 clone 到 ~/.claude/skills/book-to-skill/
Claude Code 提示权限不足
未授权 shell 执行
第一次使用时允许 Claude Code 执行 Bash 命令
提取太慢
技术书用 Docling 较慢
纯文字书切换到 text 模式,用 pdftotext 秒级完成

十、风险提醒

风险
预防
版权问题
不要把生成的 skill 分享给他人。skill 是你的笔记,不是原书的替代品
商业机密泄露
内部文档转 skill 后,AI 模型可能将内容上传到云端 API。使用本地模型或注意数据合规
提取质量不稳定
复杂排版(双栏、表格嵌套、图片文字)可能提取不完整。生成后抽查关键章节
成本超出预期
超大型书(超过 500 页)成本可能超过 2 美元。先在 cost estimate 阶段确认
依赖 Docling 性能
Docling 约 1.5 秒/页,一本 400 页的书需要 10 分钟提取。建议后台运行
模型训练数据覆盖
即使书不在训练数据中,skill 也能工作。但如果书非常冷门,提取质量可能下降
跨版本兼容
skill 格式可能随 Agent Skills 标准更新而变。关注仓库更新
大书章节检测失败
没有 Chapter N 标题的书(如用罗马数字的书)可能无法自动分段。需手动指定
重复转换同一本书
每次转换会生成新 skill。如果已有 skill,用更新模式而非重新转换
多语言支持
中文、日文等非英文 PDF 提取质量可能不如英文。建议先用小文件测试

十一、验证方式

验证项
命令
预期结果
安装成功
ls ~/.claude/skills/book-to-skill/SKILL.md
文件存在
提取器正常
python3 scripts/extract.py --check
显示各格式状态
skill 可用
/<skill-name> "what chapters do you have?"
列出章节
查询准确
/<skill-name> <具体概念>
返回真实内容,不胡编
跨会话
关闭重开 Claude Code,再输入 /<skill-name>
仍然可用
更新生效
更新后查新内容
新内容相关的回答
多文件关联
合并 skill 后问跨文件问题
能关联多个来源
删除干净
rm -rf ~/.claude/skills/<skill-name>/skills list
 不再显示
成本合理
查看 cost estimate 输出
估算在 1-2 美元内
章节准确
随机抽查几章
总结覆盖关键框架、原则和反模式

十二、回滚方案

场景
回滚路径
生成的 skill 质量差
删除 skill 目录,调整 BOOK_TYPE 或 DEPTH 后重新生成
更新后 skill 变差
从备份恢复(如果有),或重新生成原始版本
安装失败
删除 ~/.claude/skills/book-to-skill/,重新 git clone
提取器安装冲突
使用 pip 的虚拟环境,或只安装需要的提取器
误删了 book-to-skill 本身
重新 git clone 即可

十三、注意事项

1.  第一次使用 book-to-skill 时,Claude Code 会提示授权 Bash 执行,允许即可。

2.  技术书推荐用 Docling 模式,提取质量远高于 pdftotext。

3.  中文 PDF 建议用 Docling 模式,pdftotext 对中文支持较差。

4.  生成长度超过 500 页的书时,建议后台运行,提取时间较长。

5.  生成的 skill 不要分享给他人,避免版权问题。

6.  如果书有明确的 Chapter N 标题,自动章节检测效果最好。

7.  多本书合并时,注意不要混合不同主题的书,否则 skill 会变得臃肿。

8.  更新模式下,新内容会折叠进已有章节,不会覆盖已有内容。

9.  如果发现 extract.py 找不到,检查安装路径是否为 ~/.claude/skills/book-to-skill/

10.  生成的 skill 文件是纯文本,可以手动编辑调整。

十四、总结

book-to-skill 解决的痛点很原始:你买了书,读了,忘了,AI 帮不上忙。

传统的做法是把 PDF 塞进上下文,每次对话烧 200K token,成本高、响应慢。book-to-skill 换了个思路:编译时解析,按需加载。一次转换,终身可用。

它的核心亮点:

  24 到 51 倍 token 节省:每次查询只需约 5K token,而不是 200K

  结构不是摘要:提取的是作者构建的框架、原则和反模式,不是这本书讲了什么

  按需加载:只有问到某个主题才加载对应章节

  跨平台:Claude Code、Copilot CLI、Amp 通用

  隐私优先:本地提取,不上传文件

  成本极低:转换一本书约 1 美元

项目地址:https://github.com/virgiliojr94/book-to-skill

如果你手里有一本吃灰的技术书,今天就可以试试。把知识装进 AI 的大脑,让它变成你随叫随到的技术顾问。

关注Agent技能库,每天认识一个可用的AI Agent Skill。