乐于分享
好东西不私藏

把任意技术文档变成 AI 技能:book-to-skill 完整指南

把任意技术文档变成 AI 技能:book-to-skill 完整指南

一篇博客 → 15 个结构化章节 → Claude Code 可随时查阅的私有知识库。全程 5 分钟。


你是否有过这种经历?

收藏了一篇很好的技术教程,然后——就再也没有打开过。

不是不想学,是每次打开都要从头扫一遍,找到自己当时关心的那个知识点。书签越积越多,真正用上的寥寥无几。

book-to-skill 解决的就是这个问题。它把 PDF 、 EPUB 、网页、 Markdown 等任意文档,转化成 AI 编程助手可以直接查阅和应用的结构化技能( Skill )

不是摘要。不是读书笔记。是一个能让你在写代码时随时调用的"专家知识库"。


它做了什么?

举个真实的例子。上周我遇到一篇很棒的技术博客——K155LA3 写的《 Building Speech Controlled Robot with Tensil and Arty A7 》,讲如何在 FPGA 上用开源 ML 框架做语音识别机器人,分上下两篇。

正常流程:读一遍( 1 小时)→ 做笔记( 30 分钟)→ 两周后忘了大半 → 重新翻原文。

用 book-to-skill 的流程:

下载博客 → 转 Markdown → book-to-skill 分析提取 → 生成 Skill

5 分钟后,我的 Claude Code 里多了一个 building-speech-controlled-robot-tensil 技能。

它的结构是这样的:

building-speech-controlled-robot-tensil/

SKILL.md — 核心框架索引 + 主题速查表

chapters/

ch01-introduction.md

ch02-system-architecture.md

ch03-microphone-acquisition.md

ch04-speech-commands-ml-model.md

ch05-fourier-transform-stft.md

ch06-softmax-main-loop.md

...(共 15 个章节)

glossary.md — 50 个术语精确定义

patterns.md — 11 个可复用设计模式

cheatsheet.md — 决策规则 + 时序预算 + 调试技巧

这不是简单的目录切分。每个章节文件都经过了结构化提取:

Core Idea:这一章最重要的 1-2 句话
Frameworks Introduced:作者提出的命名框架,保留精确表述
Worked Example:具体的代码片段、配置命令、数据流示例
Anti-patterns:作者明确指出"不要这样做"的坑
Connects To:与其他章节的关联

实际使用效果

写代码时遇到问题,直接在对话里问:

"TCU 的 DRAM0 和 DRAM1 怎么分配内存?"

Claude Code 自动加载 ch04 ,告诉你:

DRAM0 = 变量/激活值区域,输入输出写在这里
DRAM1 = 常量/权重区域,.tdata 从 Flash 加载到这里
.tmodel 文件是"说明书",给出了精确的 base address 和 size
还附带 Arty 板没有 SD 卡的替代方案( Quad-SPI Flash )

"STFT 的参数是什么?改了会怎样?"

自动加载 ch05 ,直接给出参数表: 256 采样窗口、 128 步长、 Hann 窗函数、 129x124 频谱图尺寸。同时警告:改任何参数都要重训模型并重新综合 bitstream 。

"Part II 的 debouncing 是怎么实现的?"

自动加载 ch12 ,解释 tick counter 机制、冷启动 debounce 、以及 per-command threshold 的调优策略。

本质上,你把一篇教程变成了一个可以对话的专家


支持哪些格式?

格式
状态
PDF
支持( Technical 模式用 Docling 保留表格/代码块)
EPUB
支持
HTML / 网页
支持(直接给 URL ,先下载再转换)
Markdown / 纯文本
支持
DOCX
支持
MOBI / AZW
支持(需 Calibre 转换)

三种使用模式

模式 1 :分析预览( Analyze Only )

只想看看一本书里有啥,不急着生成完整 Skill :

"analyze only ,先帮我看看这本书讲了什么"

book-to-skill 会输出一份提取报告:列出所有命名的框架、核心原则、技术方法、反模式,以及建议的 Skill 名称。你审核后再决定是否生成。

模式 2 :完整转换( Full Conversion ,默认)

拿到一本书直接开搞:

"把这本书转成 skill"

跑完全流程:提取文本 → 分析结构 → 生成章节 → 创建词汇表/模式库/速查表 → 打包成可用的 Skill 。

模式 3 :更新合并( Update / Fold-in )

已经有一个 Skill ,拿到了新资料想合并进去:

"这是 Part II ,合并到现有的 skill 里"

book-to-skill 会自动检测已有 Skill 的章节编号、词汇表和模式库,新内容追加为新章节( ch12-ch15 ),索引全部重新排序,术语定义按字母合并。

这就是前面 FPGA 教程的实际情况——Part I 先生成了 11 章, Part II 以 Update 模式追加了 4 章( State Machine 、 Motor Control 、 Chassis Assembly 、 Conclusion ),全程无需手动编辑。


怎么用?

前置条件

Claude Code (或其他兼容的 AI 编程助手)已安装
有要转换的文档文件( PDF / EPUB / HTML / MD / DOCX )
Python 3 可用(用于文本提取脚本)

最简单的方式

在 Claude Code 对话中直接说:

把 ~/Downloads/some-book.pdf 转成 skill

或者在 Copilot CLI / Amp 中说同样的话。

关键选项

book-to-skill 会在过程中问你两个关键问题:

1. 内容类型

Technical — 有代码、表格、公式(编程书、论文、技术教程)← 选这个会用 Docling 做结构感知提取,保留代码块和表格
Text-heavy — 主要是文字(管理、社科、叙事类)
Not sure — 自动用快速模式

2. 用途

边工作边参考 — 写代码时随时查框架和方法
学习思维模式 — 理解作者的思考方式
快速查阅章节 — 当作可搜索的参考手册
以上全部(推荐) — 生成完整的学习级深度

第一个问题决定了提取质量,第二个问题决定了章节深度。(选"以上全部"会进入 DEPTH=study 模式,每个章节会包含 Worked Example 、详细的 How-to 步骤、以及失败模式分析。)

输出位置

生成的 Skill 自动放在你的 AI 助手能发现的位置:

Claude Code → ~/.claude/skills/
GitHub Copilot CLI → ~/.copilot/skills/
Amp → ~/.agents/skills/

重启会话或执行 /skills reload 后即可使用。


什么适合做 Skill ?什么不适合?

适合

有明确框架、方法论的书籍(技术架构、设计模式、工程实践)
多章节的教程系列(每个章节是一个独立的知识单元)
需要反复查阅的参考手册
你想让 AI 理解某个特定领域的知识体系

不适合

纯叙事类书籍(小说、传记)—— 没有可提取的框架
单页的简短博客(直接总结就够了)
纯代码仓库(用 README 或文档生成工具更合适)

本质是什么

book-to-skill 做了一件很聪明的事:它不帮你读书,它帮你把书变成你能问的东西

传统的"读书笔记"是一次性的——你写了一篇摘要,放到 Notion 里,然后忘了它的存在。

Skill 是活的。你在写代码时问一个问题,它自动定位到对应的章节,给你精炼过的答案。你问 10 次,它就帮你查 10 次。每次都是按需加载,不占上下文。

它遵循一个核心哲学:提取结构,而非生成摘要。 一个 Skill 不是一本书的读书报告,它是一个工具箱,里面有:

命名的框架(什么时候用、怎么用)
可执行的原则(能指导决策的规则)
逐步操作的技术( how-to 步骤)
明确的反模式(什么不要做、为什么)

开始试试

你现在就可以试试。找一本你一直想读但没时间的技术书( PDF 或 EPUB ),在 Claude Code 里说:

book-to-skill ~/Downloads/那本书.pdf

5-10 分钟后,你有了一个随时可问的专家。下次写代码时,它会默默帮你。

这就是"把知识变成能力"的感觉。


本文由 AI 辅助创作,作者进行了实测验证和编辑修改。