book-to-skill — превращает техническую книгу в навык для AI-агента
📂 Исходный код на GitHubИнструмент, который превращает любую техническую книгу, папку с документацией или коллекцию источников в единый навык для AI-агента — готовый к изучению, использованию и работе. Поддержка PDF, EPUB, DOCX, Markdown, HTML, RTF, MOBI. Локальная обработка, без загрузки файлов на сервер.
Вы купили отличную техническую книгу, прочитали её один раз — и через три месяца не помните, что в ней была глава 7. Знакомо? Проект book-to-skill решает именно эту проблему: он превращает книгу в структурированный навык (skill), который AI-агент загружает по требованию. Проект набрал 17 тысяч звёзд на GitHub и совместим с открытым стандартом Agent Skills — один и тот же формат SKILL.md читают GitHub Copilot CLI, Amp и Claude Code.
Как это работает в трёх шагах:
- Указываете на файл, папку или glob —
/book-to-skill ./my-book.pdf - Инструмент дистиллирует книгу в навык: фреймворки, правила принятия решений, анти-паттерны и отдельные файлы по главам. Структура, а не пересказ.
- Агент загружает его по требованию — пишете
/my-book replication, и агент читает нужную главу и отвечает по реальному содержимому, без галлюцинаций.
Зачем это нужно
Обычные обходные пути не работают:
- 📄 «Дай-ка я поищу по PDF» — вы получаете список страниц, а не ответы
- 🧠 «Спрошу агента про эту книгу» — он либо галлюцинирует, либо говорит, что у него нет контента
- 📝 «Запишу заметки по мере чтения» — в итоге у вас документ на 200 строк, который вы больше никогда не откроете
book-to-skill превращает книгу в структурированный навык, который агент загружает по требованию. После установки достаточно ввести /ваш-слаг-книги replication — и агент прочитает нужную главу и ответит по фактическому содержимому. Книга становится частью рабочего процесса.
Что генерируется
Запуск /book-to-skill your-book.pdf (или папки, glob, списка файлов) создаёт полный навык в каталоге навыков агента (~/.copilot/skills/<slug>/ для Copilot CLI, ~/.agents/skills/<slug>/ для Amp или кроссплатформенного использования, ~/.claude/skills/<slug>/ для Claude Code):
| Файл | Назначение | Размер |
|---|---|---|
SKILL.md |
Ядро: ментальные модели + индекс глав | ~4 000 токенов |
chapters/ch01-*.md … |
По одному файлу на главу, загрузка по требованию | ~1 000 токенов каждый |
glossary.md |
Все ключевые термины в алфавитном порядке со ссылками на главы | ~1 500 токенов |
patterns.md |
Все техники, алгоритмы и паттерны проектирования | ~2 000 токенов |
cheatsheet.md |
Таблицы решений и правила быстрого доступа | ~1 000 токенов |
Файлы глав загружаются по требованию — они не входят в бюджет навыка, пока вы не спросите про эту тему.
Не только книги
В названии «book», но на вход принимается любая структурированная проза. Та же экстракция работает с контентом, который вы постоянно перечитываете:
- Внутренняя документация — ADR, runbooks, гайды по онбордингу. Сверните целую папку
docs/в один навык и спрашивайте его во время работы. - Бренд и дизайн-системы — гайды по голосу, документация по tone-of-voice, принципы компонентов. Команда спрашивает навык вместо пролистывания PDF на 60 страниц.
- Исследовательские кластеры — стопка статей плюс ваши заметки, объединённые в единый навык, который обновляется по мере поступления нового материала.
- Спецификации и стандарты — RFC, API-контракты, документы по комплаенсу.
Если вы открываете документ достаточно часто, чтобы хотеть запомнить его — это кандидат.
Экономия токенов: Discovery Loop Tax
Агент, читающий PDF, не просто читает — он навигирует: перечитывает оглавление, возвращается назад и переобрабатывает всё на каждом шаге. book-to-skill платит эту стоимость структурирования один раз, при конвертации, поэтому запросы остаются пропорциональными ответу — в 24×–51× меньше токенов, чем при загрузке книги в контекст, измерено на реальных книгах.
Как это устроено
Две части: детерминированный экстрактор на Python (документ → чистый текст + метаданные) и генератор, управляемый спецификацией (агент следует SKILL.md, чтобы превратить это в структурированный навык). Файлы глав по требованию держат загруженный навык небольшим.
Установка
# Agent skill (регистрирует /book-to-skill) — клонируйте в папку навыков:
git clone https://github.com/virgiliojr94/book-to-skill.git ~/.claude/skills/book-to-skill
# (Copilot CLI: ~/.copilot/skills/ · Amp/cross-agent: ~/.agents/skills/)
Требования и поддерживаемые форматы
Экстрактор перебирает инструменты по порядку для каждого формата и использует первый доступный. Если ничего не установлено, он скажет, какую команду запустить. Чистый текст, Markdown, reStructuredText и AsciiDoc не требуют дополнительных зависимостей. Проверить окружение можно одной командой: python3 scripts/extract.py --check.
PDF — выбор по типу книги:
| Тип книги | Инструмент | Установка | Скорость |
|---|---|---|---|
| Много текста (проза, мало таблиц) | pdftotext (poppler) |
sudo apt install poppler-utils |
мгновенно |
| Много текста, запасной вариант | pypdf |
pip3 install pypdf |
мгновенно |
| Много текста, запасной вариант | pdfminer.six |
pip3 install pdfminer.six |
мгновенно |
| Техническая (код, таблицы, формулы) | docling |
pip3 install docling |
~1,5 с/страница |
Перед началом извлечения навык спрашивает, техническая ли книга, и автоматически выбирает нужный инструмент: Docling сохраняет markdown-таблицы и блоки кода, pdftotext быстрее для книг без таблиц.
Другие форматы:
| Формат | Инструмент | Установка |
|---|---|---|
| EPUB | ebooklib + beautifulsoup4 (или stdlib zipfile) |
pip3 install ebooklib beautifulsoup4 |
| DOCX | python-docx (запасной: stdlib ZIP/XML) |
pip3 install python-docx |
| HTML | beautifulsoup4 (запасной: stdlib html.parser) |
pip3 install beautifulsoup4 |
| RTF | striprtf (запасной: regex) |
pip3 install striprtf |
| MOBI / AZW / AZW3 | Calibre ebook-convert |
https://calibre-ebook.com/download |
| TXT / Markdown / reStructuredText / AsciiDoc | встроенный | — |
Конфиденциальность и честное использование
book-to-skill не поставляет никакого контента книг — ни одной страницы. Это конвертер, который вы направляете на файлы, которыми уже владеете:
- Обработка локальная. Извлечение и анализ выполняются на вашей машине. Файлы не загружаются этим инструментом.
- Вы используете свою копию. Приносите купленную книгу, документацию своей компании или статьи, которые вам разрешено читать.
- Результат — ваши заметки. Сгенерированный навык — структурированный, синтезированный дериватив: названия фреймворков, определения, выводы. Навык никогда не копирует дословные отрывки.
- Не распространяйте. Публикация навыка по защищённой копирайтом книге может нарушать права правообладателя. Навыки по сторонним книгам держите в приватном доступе.
Итог
book-to-skill — это инструмент, который платит за структурирование один раз и окупает его при каждом обращении. Вместо «поищу в PDF» или «спрошу у агента и получу галлюцинацию» книга становится нагружаемой по требованию базой знаний вашего агента. 17k звёзд, MIT-лицензия и совместимость со стандартом Agent Skills делают его безопасным выбором для тех, кто всерьёз работает с AI-агентами.