读技术书这事,有个共同的尴尬:当时觉得醍醐灌顶,三五个月后基本忘光。
真要用到的时候怎么办?翻 PDF 一页页找,费劲;直接问 AI,它一本正经地胡说八道;自己记笔记,记完再也没翻开过。知识进了脑子又溜走,书架上一堆"读过但用不上"的砖头。
今天介绍的这个工具,给了一个新解法——它叫 book-to-skill,GitHub 上 6.8k 颗星,MIT 开源,一句话概括:把任意技术书转成 AI agent 能调用的 skill。
book-to-skill 是什么:把书"蒸馏"成 agent 技能
它的定位很精准:把技术书、文档文件夹、或一堆资料,转成一个统一的 agent skill,让你在 Claude Code、GitHub Copilot CLI、Amp 里边干活边查。
工作原理三步走:
1. 指给它一个文件、文件夹或 glob 匹配
2. 它把书"蒸馏"成 skill——提炼框架、决策规则、反模式,再拆成按章节的文件
3. 你的 agent 按需加载——问某个话题,它就读对应章节,基于真实内容回答
关键词是"蒸馏"。它不是把原文原样塞进去,而是综合提炼。这也呼应了它的核心设计原则之一:Never raw text — always synthesize(绝不给原始文本,总是综合加工)。
省 token,最高省 51 倍
这是项目最硬的数据。官方 claim:回答一个问题,比把整本书塞进上下文省 24 到 51 倍的 token。
逻辑也好理解。一本技术书动辄几百页,全塞进 context 既贵又慢,还容易触发幻觉。book-to-skill 的做法是把书拆成结构化的"按需加载"单元:
○ SKILL.md:核心心智模型 + 章节索引,约 4000 tokens
○ chapters/ch01-*.md:每章一个文件,按需加载,各约 1000 tokens
○ glossary.md:关键术语,按字母排序带章节引用,约 1500 tokens
○ patterns.md:技术、算法、设计模式,约 2000 tokens
○ cheatsheet.md:决策表和速查规则,约 1000 tokens
agent 先扫一眼 SKILL.md(也就几千 token)知道这本书讲了什么、章节怎么分,问到具体内容时再去读对应的那一章。这本质上是 Skill 这种新能力的精髓——先目录后正文,按需取用,而不是把整本百科全书一次性倒进上下文。
11 种格式通吃,不止能喂书
输入端它支持一大堆格式:PDF、EPUB、DOCX、TXT、Markdown、reStructuredText、AsciiDoc、HTML、RTF,连 MOBI/AZW/AZW3 这种电子书格式都行。
技术栈是纯 Python。抽取工具按格式依次尝试多个引擎:PDF 走 poppler/pypdf/pdfminer.six,含表格代码的技术 PDF 还能上 docling;EPUB 用 ebooklib+beautifulsoup4;DOCX 用 python-docx。可以说是把各种文档的解析坑都趟了一遍。
而且它不止能喂书。官方原话很到位:「If you re-open a document often enough to wish you'd memorized it, it's a candidate.」——只要一份文档你经常重开、恨不得背下来,它就是候选。所以内部文档、品牌设计系统、研究资料、specs/RFC/标准,都能转成 skill 喂给 agent。
装一次,三大 agent 通吃
book-to-skill 遵循开放的 Agent Skills 标准,所以一个生成的 skill 能在三个 host 之间通用:Claude Code、GitHub Copilot CLI、Amp。
输出路径会自动放到对应位置:
○ Claude Code:~/.claude/skills/<slug>/
○ GitHub Copilot CLI:~/.copilot/skills/<slug>/
○ 跨 agent 通用:~/.agents/skills/<slug>/
安装也简单。当 agent skill 用,git clone 到对应 skills 目录就行:
git clone https://github.com/virgiliojr94/book-to-skill.git ~/.claude/skills/book-to-skill 当独立 CLI 用(只要抽取引擎):
pip install "book-to-skill[pdf,epub,docx]" 用起来就是一行命令,支持多文件、文件夹、glob,还能对已有的 skill 折叠更新:
/book-to-skill <文档路径或glob> [skill名] 跨平台这点挺重要——你不被绑死在某一个 agent 上,今天用 Claude Code,明天换 Copilot,技能照搬。
本地处理,隐私无忧;且不碰版权
处理完全在本地进行,工具本身从不上传文件。对涉及内部资料、敏感文档的场景,这点很关键。
版权方面也讲得明白:MIT 协议只适用于这个转换器本身(代码+skill 定义),不适用于你用它处理的书或文档。也就是说,你转出来给自己用的 skill 是综合提炼的笔记(不是原文复制),但源书的版权还是源书的——自己学习用没问题,别拿去传播。
迭代很快,最新版已是可安装包
看 release 历史,这项目一个月内连发三版,节奏很猛:
○ v1.0.0(6 月初):首个正式版,多格式抽取、自适应章节深度、CI 校验
○ v1.1.0(6 月中):加入 GitHub Copilot CLI 作为一等目标,SKILL.md 跨三平台通用
○ v1.2.0(6 月中下旬):升级为可安装 Python 包,支持 pip install 和命令行;章节检测真正多语言,覆盖法语、德语、意大利语、荷兰语和 CJK(中日韩),连全角数字和多语言目录都能识别
最新版从"git clone 用"进化到"pip install 用",门槛进一步降低。多语言支持对中文用户尤其友好——不少中文技术书的章节标题、目录结构之前可能识别不准,现在 CJK 模式覆盖到了。
写在最后
book-to-skill 抓的是个很普遍的痛点:知识"读进脑又溜走"。它的解法不是让你背更多,而是把你已经读过的东西,变成 AI agent 随时能调用的结构化技能。
对开发者来说,把常翻的技术书、内部文档、设计规范转成 skill,让 Claude Code 这类 agent 在你写代码时直接基于这些知识给建议——而且不幻觉、省 token、按需加载,这个体验是实打实的提升。
几点提醒:一是它处理的是你自己的书,注意版权,自用学习没问题但别传播生成的 skill;二是 skill 质量取决于原书和抽取效果,复杂排版的 PDF 可能需要调整;三是它本质是"知识搬运+提炼",不是替你理解,该读还是得读。
如果你书架上有一堆"读过但用不上"的技术书,不妨试试把它们变成 agent 技能。觉得有用的话,点个赞和在看,评论区聊聊你平时怎么管理读过的技术书。
参考资料/来源
book-to-skill GitHub 仓库:https://github.com/virgiliojr94/book-to-skill
夜雨聆风