程序员必备:把任何技术书秒变 AI智能体技能


现代开发者越来越依赖 AI 助手:Copilot、Claude、Cursor……但这些工具在处理“特定深度知识”时,表现一直很尴尬。

直接把PDF扔进上下文?几百页书就是十几万甚至几十万 token,每次对话都得烧一遍,成本高不说,模型还容易“迷失”在海量文本里。

靠模型的预训练知识?热门书还凑合,冷门书、内部文档、新书,直接抓瞎。。

“直接搜索 PDF” → 得到的是页面列表,而不是答案

“问代理这本书” → 要么幻觉,要么说没有内容

“边读边记笔记” → 最后得到一份 200 行的文档,再也没打开过

项目简介

book-to-skill将任何技术书籍、文档文件夹或来源集合转化为统一的代理技能(Agent Skill)——随时准备好在 GitHub Copilot CLI、Amp 或 Claude Code 中学习、参考和使用。

支持格式:PDF、EPUB、DOCX、TXT、Markdown、reStructuredText、AsciiDoc、HTML、RTF、MOBI/AZW/AZW3。

🏆 Trendshift 上 Python 仓库日榜第 10 名 和 总仓库日榜第 25 名(2026 年 5 月 23 日)。

与直接将整本书塞进上下文相比,回答一个问题时可节省 24×–51× 的 token(基于真实书籍实测)。

安装后,你只需输入 /your-book-slug replication,代理就会读取正确章节并基于真实内容回答。没有幻觉,不用翻 PDF,书籍真正成为你工作流的一部分。

它兼容任何支持开放 Agent Skills 标准的宿主 —— GitHub Copilot CLI、Amp 和 Claude Code 都使用相同的 SKILL.md 格式。

工作原理

指向 文件、文件夹或 glob 模式:/book-to-skill ./my-book.pdf

提炼 成技能 —— 包含框架、决策规则、反模式以及按章节拆分的文件(是结构化内容,而非简单摘要)。

代理按需加载 —— 输入 /my-book replication,代理就会读取对应章节并基于真实内容回答,无幻觉。

生成的内容

运行 /book-to-skill your-book.pdf(或文件夹、glob、通配符、文件列表)会在代理的技能目录中创建一个完整的技能(Copilot CLI 为 ~/.copilot/skills//,跨代理或 Amp 为 ~/.agents/skills//,Claude Code 为 ~/.claude/skills//):

文件

用途

大小(约)

SKILL.md核心心智模型 + 章节索引

~4,000 tokens

chapters/ch01-*.md…

按章节拆分,按需加载

~1,000 tokens/每个

glossary.md所有关键术语(按字母排序,带章节引用)

~1,500 tokens

patterns.md所有技巧、算法和设计模式

~2,000 tokens

cheatsheet.md决策表和快速参考规则

~1,000 tokens

章节文件按需加载 —— 在你询问相关主题之前,它们不占用技能预算。

超越书籍

虽然名字叫“book-to-skill”,但输入可以是任何结构化文本。它特别适合你经常重读的知识:

内部文档 —— 架构决策记录、运维手册、入职指南。将整个 docs/ 文件夹折叠成一个技能,边写代码边查询。

品牌与设计系统 —— 语音指南、语气文档、组件原则。将品牌手册转化为团队查询的技能,而非翻阅 60 页 PDF。

研究集合 —— 一堆论文 + 个人笔记,合并成一个统一技能,并可随新材料更新(见更新/折叠功能)。

规范与标准 —— RFC、API 契约、合规文档(你经常参考但从不记住的内容)。

如果你经常重新打开某个文档并希望能记住它,它就是合适的目标。

🚀 使用方法

/book-to-skill … [skill-name-slug] 示例:

将多个文件合并成一个统一技能

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

处理文件夹中所有支持的文件

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

使用 glob 模式处理文件

/book-to-skill ”~/books/*.epub” my-library

将新材料更新/折叠到现有技能文件夹

/book-to-skill ~/articles/new-paper.pdf ~/.claude/skills/project-knowledge 创建技能后,像其他代理技能一样使用:

/designing-data-intensive-apps # 加载核心心智模型 /designing-data-intensive-apps replication # 查找并解释某个主题 /designing-data-intensive-apps ch05 # 深入第 5 章 /designing-data-intensive-apps “what chapters do you have?” 在 GitHub Copilot CLI 中,文件写入后可能需要运行 /skills reload 才能在 /skills list 中看到。Claude Code 和 Amp 会在下次会话自动加载。

环境要求

提取器会按顺序尝试每种格式的工具,使用第一个可用的。如果未安装,它会告诉你需要运行的命令。纯文本、Markdown、reStructuredText 和 AsciiDoc 无需额外依赖。

一键检查环境:python3 scripts/extract.py —check 会显示每种格式已安装的提取器及缺失项的安装命令。

PDF 处理(根据书籍类型选择):

书籍类型

工具

安装命令

速度

文本为主(散文,少表格)

pdftotext (poppler)

sudo apt install poppler-utils⚡ 即时

文本为主(备选)

pypdfpip3 install pypdf⚡ 即时

文本为主(备选)

pdfminer.sixpip3 install pdfminer.six⚡ 即时

技术类(代码、表格、公式)doclingpip3 install docling~1.5s/页

提取前会询问你是技术类还是文本为主,自动选择合适工具。Docling 能保留 Markdown 表格和代码块;pdftotext 对纯散文书更快。

其他格式的依赖类似(EPUB、DOCX 等),详见原文。

项目地址

https://github.com/virgiliojr94/book-to-skill

如果你觉得这篇文章不错,别忘了点赞、在看、转发给更多需要的小伙伴哦!我们下期再见!

            预览时标签不可点