3月初买了本技术书,读完后便放在书架上积灰。前几天想翻查某个知识点,翻遍全书硬是没找到。转头问AI,结果它张口就编;想做笔记,也忘了存到了哪个文件夹。更头疼的是,如果直接把一本四百页的PDF丢进AI对话框,还没开口提问,上下文窗口早就被撑爆了,一次对话烧掉约20万Token。
今年4月,一款名为book-to-skill的开源工具正在解决这个问题。它能把任意书籍或文件夹里的文档资料,打包成Claude Code可直接调用的技能,随时按需查阅——不是把整本书糊进上下文,而是生成SKILL.md、章节文件、术语表、patterns、cheatsheet这一整套东西,用到哪块再读哪块。

项目目前在GitHub上已获约4.2k星标,采用MIT开源协议,支持PDF、EPUB、DOCX、Markdown、HTML、MOBI等十余种格式。
用户把PDF、EPUB,甚至DOCX、Markdown等文件传给book-to-skill时,它会先判断是“技术类”还是“叙事类”。技术书走Docling路线,表格和代码块原样抽取保留;纯文本类书籍走pdftotext、PyPDF2等快速通道只做文本提取。之后对整本书深度分析,拆开并重新组织,生成核心框架与章节索引的SKILL.md文件(约4,000 Token),每个章节单独保存为一个文件(约800–1,200 Token每章),额外配上术语表、模式表和速查表。在Claude Code里使用时,只需输入/skill名 关键词,它就会自动定位对应章节,照着原文回答。
这跟以往两种常见做法不一样。一种是直接上传PDF文件,把整本书塞进上下文,每次对话都重新烧Token,且幻觉严重。另一种是RAG,提问时去书里捞出几段文字相近的原文丢给AI,能不能拼凑出正确答案全看运气。book-to-skill是在生成技能前,对书籍做一次深度剖析,把作者的框架、反模式逐一命名抽离,AI调用的是已经“消化”好的框架。

重点在于按需加载——章节文件不会一次性全部塞进上下文,只在你问到此话题时才会加载相关章节。对一本400页的约20万Token的书,skill一次只烧对应章节,其余部分留在磁盘。它还提供成本预估功能,生成前会预计算Token费用让用户心里有底。
扫描测试中,103页技术书用Docling处理(保留48个表格和36个代码块)耗时约164秒输出约2.7万Token,纯文本提取仅0.1秒同样输出约2.7万Token。技术书追求精度代价就是慢,但表格和代码块用Docling完整保留值得等待。
当然不是拿来管几十本书的。book-to-skill更像是把一本书、几篇论文、一组内部资料揉成一个Claude Code工作流里的随身参考,更适合深入理解单本书并在工作中使用。多书大规模搜索,NotebookLM这类工具可能更合适。
把书架上落灰的知识变成随手可用的能力,下次再想重温一本念念不忘的技术书时,或许可以先把它喂给这个工具。
GitHub地址:github.com/virgiliojr94/book-to-skill
夜雨聆风