virgiliojr94/book-to-skill
Biến bất kỳ bản PDF sách kỹ thuật nào thành kỹ năng Claude Code — sẵn sàng để nghiên cứu, tham khảo và sử dụng trong khi bạn làm việc.
README
sách thành kỹ năng
Biến mọi cuốn sách kỹ thuật, thư mục tài liệu hoặc bộ sưu tập nguồn thành một kỹ năng tổng thể thống nhất — sẵn sàng để nghiên cứu, tham khảo và sử dụng khi bạn làm việc trong GitHub Copilot CLI, Amp hoặc Claude Code.
tại sao · Những gì nó tạo ra · Ngoài sách · Nó hoạt động như thế nào · Cách sử dụng · cài đặt · Câu hỏi thường gặp · Hiệu suất · Kiến trúc · Nhật ký thay đổi
Ít hơn 24×–51× mã thông báo so với việc đưa sách vào ngữ cảnh để trả lời một câu hỏi, được đo trên sách thật (nó được đo như thế nào).
Cách thức hoạt động, trong 3 bước:
- điểm nó ở một tập tin, thư mục hoặc toàn cầu —
/book-to-skill ./my-book.pdf - Nó chưng cất cuốn sách thành một kỹ năng - khuôn khổ, quy tắc quyết định, mô hình phản đối và tệp theo từng chương. Cấu trúc, không phải là một bản tóm tắt.
- Đại lý của bạn tải nó theo yêu cầu - hỏi
/my-book replicationvà nó đọc đúng chương và trả lời từ nội dung thật, không hề ảo giác.
🤔 Tại sao
Bạn mua một cuốn sách kỹ thuật tuyệt vời. Bạn đã đọc nó một lần. Ba tháng sau bạn không thể nhớ được chương 7 đã tồn tại.
Các cách giải quyết thông thường không giúp ích được gì:
- 📄 "Hãy để tôi tìm kiếm bản PDF" → bạn nhận được danh sách các trang, không phải câu trả lời
- 🧠 "Tôi sẽ hỏi người đại diện về cuốn sách này" → nó bị ảo giác hoặc nói không có nội dung
- 📝 "Tôi sẽ ghi chú khi đọc" → bạn kết thúc với một tài liệu 200 dòng mà bạn không bao giờ mở lại
book-to-skill giải quyết vấn đề này bằng cách biến cuốn sách thành một kỹ năng có cấu trúc mà đại lý của bạn tải theo yêu cầu.
Sau khi cài đặt, bạn chỉ cần gõ /your-book-slug replication và tác nhân đọc đúng chương và trả lời từ nội dung thực tế. Không có ảo giác. Không cần đào sâu vào các tệp PDF. Cuốn sách trở thành một phần trong quy trình làm việc của bạn.
Hoạt động với bất kỳ máy chủ nào hỗ trợ mở Kỹ năng đại lý tiêu chuẩn — GitHub Copilot CLI, Amp và Claude Code đều đọc giống nhau SKILL.md định dạng.
📦 Những gì nó tạo ra
Đang chạy /book-to-skill your-book.pdf (hoặc một thư mục, toàn cầu hoặc danh sách tệp) tạo ra một kỹ năng đầy đủ trong thư mục kỹ năng của đại lý của bạn (~/.copilot/skills/<slug>/ cho Copilot CLI, ~/.agents/skills/<slug>/ cho Amp hoặc tác nhân chéo, ~/.claude/skills/<slug>/ cho Claude Code):
| tập tin | Mục đích | Kích thước |
|---|---|---|
SKILL.md |
Mô hình tinh thần cốt lõi + chỉ mục chương | ~4.000 token |
chapters/ch01-*.md … |
Một tệp cho mỗi chương, được tải theo yêu cầu | ~1.000 token mỗi cái |
glossary.md |
Mỗi thuật ngữ chính, được sắp xếp theo thứ tự bảng chữ cái với các giới thiệu chương | ~1.500 token |
patterns.md |
Tất cả các kỹ thuật, thuật toán và mẫu thiết kế | ~2.000 token |
cheatsheet.md |
Bảng quyết định và quy tắc tham khảo nhanh | ~1.000 token |
Các tập tin chương được tải theo yêu cầu — chúng không được tính vào ngân sách kỹ năng cho đến khi bạn hỏi về chủ đề đó.
🏢 Ngoài sách
Tên là "cuốn sách", nhưng đầu vào là bất kỳ văn xuôi có cấu trúc nào. Việc trích xuất tương tự hoạt động dựa trên kiến thức bạn sở hữu và đọc lại liên tục:
- Tài liệu nội bộ — hồ sơ quyết định về kiến trúc, sổ ghi chép, hướng dẫn triển khai. Gấp toàn bộ
docs/vào một kỹ năng và hỏi nó trong khi bạn viết mã. - Hệ thống thương hiệu & thiết kế - hướng dẫn về giọng nói, tài liệu về giọng điệu, nguyên tắc thành phần. Biến cuốn sách thương hiệu thành một kỹ năng mà nhóm của bạn truy vấn thay vì đọc lướt một bản PDF 60 trang.
- Các cụm nghiên cứu — một chồng giấy tờ cộng với các ghi chú của riêng bạn, được hợp nhất thành một kỹ năng thống nhất duy nhất và được cập nhật dưới dạng vùng đất vật chất mới (xem Cập nhật/gập lại).
- Thông số kỹ thuật & tiêu chuẩn — RFC, hợp đồng API, tài liệu tuân thủ mà bạn tham khảo nhưng không bao giờ ghi nhớ.
Nếu bạn mở lại một tài liệu thường xuyên đến mức ước gì mình đã ghi nhớ nó thì đó là một tài liệu phù hợp.
🧾 Thuế vòng khám phá
Tác nhân đọc PDF không chỉ đọc — nó điều hướng: nó tìm nạp lại ToC, quay lại và xử lý lại tất cả trong mỗi lượt. book-to-skill trả chi phí cơ cấu đó một lần, tại thời điểm chuyển đổi, do đó các truy vấn luôn tỷ lệ thuận với câu trả lời — Ít hơn 24×–51× token hơn là vứt cuốn sách vào bối cảnh, đo lường trên những cuốn sách thật.
📊 Phương pháp đầy đủ, số lượng và bảng mỗi cuốn sách → tài liệu/hiệu suất.md
⚙️ Cách thức hoạt động
Hai nửa: xác định Python máy vắt (tài liệu → văn bản sạch + siêu dữ liệu) và định hướng theo thông số kỹ thuật máy phát điện (đại lý của bạn theo sau SKILL.md để biến điều đó thành một kỹ năng có cấu trúc). Các tệp chương theo yêu cầu giữ cho kỹ năng được tải ở mức nhỏ.
🔧 Hướng dẫn đầy đủ (Bước 0–10, chế độ trích xuất, ngân sách mã thông báo) → docs/how-it-works.md
🚀 Cách sử dụng
/book-to-skill <path|folder|glob> [skill-name] — cộng với các chế độ chỉ phân tích, tạo từ phân tích và cập nhật/gấp vào. Sau khi chuyển đổi, trình chuyển đổi có thể xuất bản kỹ năng lên GitHub (riêng tư theo mặc định) để bất kỳ máy chủ nào cài đặt nó với npx skills add.
▶️ Tất cả các chế độ và ví dụ → tài liệu/usage.md
💬 Trong thực tế → trường hợp sử dụng — một cuốn sách DevEx đã trở thành cuộc khảo sát của hơn 300 kỹ sư; một bản PDF được quét bị đình trệ đã trở thành #130. Thêm tài khoản của bạn: tài khoản tồn tại trong Gist của riêng bạn, chỉ mục có PR một dòng.
📥 Cài đặt
# One command, any host — via the cross-agent skills CLI:
npx skills add virgiliojr94/book-to-skill
# Or manually — clone into your skills folder (registers /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/)
📥 Tất cả máy chủ, trình trích xuất tùy chọn và CLI độc lập → tài liệu/install.md
❓ Câu hỏi thường gặp
Các câu hỏi phổ biến - "tại sao không kết xuất tệp PDF?", chi phí, quyền riêng tư, đầu vào không phải sách, sách nhiều tệp.
❓ Câu trả lời → tài liệu/faq.md
🔧 Yêu cầu
Trình giải nén thử các công cụ theo thứ tự cho mỗi định dạng và sử dụng công cụ có sẵn đầu tiên. Nếu không có gì được cài đặt, nó sẽ cho bạn biết lệnh nào sẽ chạy. Văn bản thuần túy, Markdown, reStructuredText và AsciiDoc không cần thêm chi tiết.
Kiểm tra thiết lập của bạn bằng một lệnh:
python3 scripts/extract.py --checkin ra những trình giải nén được cài đặt cho mọi định dạng và lệnh chính xác để cài đặt mọi thứ còn thiếu — không cần tệp.
PDF - chọn theo loại sách:
| Loại sách | Công cụ | cài đặt | Tốc độ |
|---|---|---|---|
| Nhiều văn bản (văn xuôi, ít bảng) | pdftotext (popper) |
sudo apt install poppler-utils |
⚡ ngay lập tức |
| Dự phòng nặng về văn bản | pypdf |
pip3 install pypdf |
⚡ ngay lập tức |
| Dự phòng nặng về văn bản | pdfminer.six |
pip3 install pdfminer.six |
⚡ ngay lập tức |
| Kỹ thuật (mã, bảng, công thức) | docling |
pip3 install docling |
~1,5 giây/trang |
Trước khi bắt đầu trích xuất, kỹ năng sẽ hỏi bạn xem cuốn sách có kỹ thuật hoặc văn bản nặng và tự động chọn đúng công cụ. Việc ghi chép bảo tồn các bảng đánh dấu và khối mã; pdftotext nhanh hơn đối với sách chỉ có văn xuôi.
Các tệp PDF được quét cần có OCR trước. Một tệp PDF là hình ảnh trang không có lớp văn bản — một cuốn sách được chụp hoặc quét — không có gì để các công cụ này trích xuất. Trình trích xuất kiểm tra các trang đầu tiên và dừng lại ngay lập tức với lời giải thích, thay vì xem qua toàn bộ cuốn sách để tạo ra một kỹ năng trống rỗng. Tự chạy OCR, sau đó chuyển đổi kết quả:
ocrmypdf input.pdf output.pdf
EPUB:
| Công cụ | cài đặt | chất lượng |
|---|---|---|
ebooklib + beautifulsoup4 |
pip3 install ebooklib beautifulsoup4 |
⭐⭐⭐ Tốt nhất |
stdlib zipfile |
tích hợp - không cần cài đặt | ⭐⭐ Luôn có sẵn |
Các định dạng khác:
| định dạng | Công cụ | cài đặt |
|---|---|---|
| DOCX | python-docx (dự phòng: stdlib ZIP/XML) |
pip3 install python-docx |
| HTML | beautifulsoup4 (dự phòng: stdlib html.parser) |
pip3 install beautifulsoup4 |
| RTF | striprtf (dự phòng: biểu thức chính quy) |
pip3 install striprtf |
| MOBI / AZW / AZW3 | Cỡ nòng ebook-convert (ứng dụng bên ngoài, không phải pip) |
https://calibre-ebook.com/download |
| TXT / Markdown / văn bản tái cấu trúc / AsciiDoc | tích hợp sẵn | — |
📁 Cấu trúc kho lưu trữ
book-to-skill/
├── SKILL.md # Skill definition + step-by-step instructions (the generator spec)
├── scripts/
│ ├── extract.py # Thin entrypoint wrapper
│ └── extractor/ # Modular extraction package
│ ├── config.py # Extensions, paths, dependency constants
│ ├── dependencies.py # optional-dep probing + --check
│ ├── exceptions.py # ExtractionError (per-source failures, batch-safe)
│ ├── utils.py # CLI parsing, multi-source resolution, chapter detection, runner
│ └── parsers/ # Format-specific parsers (pdf, epub, docx, html, rtf, calibre, text)
├── tools/
│ ├── discovery_tax.py # measures token cost vs context-dump / discovery loop
│ └── validate_skill.py # checks a generated SKILL.md against host rules (--lens claude|copilot|amp)
├── tests/ # pytest suite (extraction, detection, discovery tax)
├── docs/
│ ├── performance.md # measured benchmarks, discovery tax, cost
│ └── architecture.md # pipeline + component map
├── CHANGELOG.md # release history (semver)
├── CONTRIBUTING.md # dev setup, PR conventions, release process
├── SECURITY.md # vulnerability reporting
└── README.md # This file
⚖️ Bản quyền và sử dụng hợp lý
tàu sách-to-kỹ năng không có nội dung sách - không một trang nào. Đó là một công cụ chuyển đổi mà bạn trỏ đến các tập tin bạn đã sở hữu.
- Xử lý là cục bộ. Trích xuất và phân tích chạy trên máy của bạn. Các tập tin của bạn không bao giờ được tải lên bởi công cụ này. (Nếu mô hình của tổng đài viên của bạn chạy trên đám mây thì văn bản bạn cung cấp sẽ tuân theo các điều khoản dữ liệu thông thường của nhà cung cấp đó — giống như bất kỳ lời nhắc nào.)
- Bạn sử dụng bản sao của riêng bạn. Mang theo một cuốn sách bạn đã mua, tài liệu mà công ty bạn sở hữu hoặc các tài liệu bạn có quyền đọc.
- Đầu ra là ghi chú của bạn. Kỹ năng được tạo ra là một dẫn xuất tổng hợp, có cấu trúc - tên khung, định nghĩa, bài học - không phải là sự tái tạo văn bản. Kỹ năng này rõ ràng không bao giờ sao chép các đoạn thô (xem Quy tắc chất lượng số 7). Hãy coi nó như những ghi chú học tập viết tay: của bạn, để sử dụng cho cá nhân.
- Đừng phân phối lại. Việc xuất bản hoặc chia sẻ kỹ năng được tạo ra của tác phẩm có bản quyền có thể vi phạm chủ sở hữu quyền. Giữ kỹ năng của sách của bên thứ ba ở chế độ riêng tư. Các tài liệu nội bộ, bài viết của riêng bạn và tài liệu được cấp phép mở đều có thể chia sẻ trong giới hạn giấy phép của họ.
Khi nghi ngờ, hãy làm theo giấy phép hoặc điều khoản của tài liệu nguồn. Dự án này là một công cụ; cách bạn sử dụng nó là tùy thuộc vào bạn.
💖 Nhà tài trợ
book-to-skill là miễn phí và được MIT cấp phép, được duy trì theo thời gian cá nhân. Nếu nó giúp bạn tiết kiệm token hoặc thời gian học tập, hãy cân nhắc tài trợ cho việc bảo trì nó: đánh giá PR, sửa lỗi đa ngôn ngữ, phát hành và tài liệu.
Trở thành nhà tài trợ → GitHub.com/sponsors/virgiliojr94
Mỗi nhà tài trợ được liệt kê trong BACKERS.md. Cảm ơn bạn đã duy trì hoạt động của công cụ mở, ưu tiên quyền riêng tư. ✨
Giấy phép
MIT - áp dụng cho trình chuyển đổi (định nghĩa mã + kỹ năng) trong kho lưu trữ này, không tới bất kỳ cuốn sách hoặc tài liệu nào bạn xử lý với nó.
Dự án cùng danh mục
Trợ lý AI cá nhân của riêng bạn. Bất kỳ hệ điều hành nào. Bất kỳ nền tảng nào. Cách tôm hùm. 🦞
Hệ thống tối ưu hóa hiệu suất khai thác tác nhân. Kỹ năng, bản năng, trí nhớ, bảo mật và sự phát triển ưu tiên nghiên cứu cho Claude Code, Codex, Opencode, Cursor và hơn thế nữa.
Đại lý phát triển cùng bạn
Kỹ năng dành cho kỹ sư thực sự. Trực tiếp từ thư mục .agents của tôi.
Triển lãm bảo tàng do đại lý quản lý, được xây dựng trong Rust với Gajae-Code / LazyCodex — được phát triển và duy trì mà không có sự can thiệp của con người.