epub-extractlisted
Install: claude install-skill kau10082/epub-extract
# epub-extract — 知識結構化萃取 Skill
## 用途與定位
把一本電子書或一組網頁,做**忠實的結構化萃取**——保留作者的論證脈絡、數據、
定義、圖表與列舉項,壓到原文約 20–30%,讓沒讀過原文者能據此重述主張與依據。
**這不是摘要工具。** GitHub 上 `epub2md` 一類是機械換容器(epub → 等長 md);
本 skill 換的是表徵(整本書 → 建檔用重組稿),接在 marker / MinerU 之後那一站。
**核心心法:忠實抽取、不評論、不填補;不確定標 [?];保真優先於篇幅;交付前機械對帳。**
## 啟動方式
- **`/epub`**(軟指令,明確召喚):可單獨輸入或後接說明,通常連書檔一起丟。
雲端 Chat 直接可用;Claude Code 因斜線撞 CLI 內建指令,該環境改用自然語言。
- **自然語言**:丟 epub/書檔/URL 並說「結構化萃取/忠實抽取進知識庫」即可觸發。
- **執行環境**:需 **Claude Cowork**(或其他能讀寫本機檔案、自跑多輪工具的環境),
才能跑「讀原檔 → 分段萃取 → append 寫檔 → verify.py 對帳」的全自動迴圈。
---
## 流程總覽
萃取細則全部在 `prompts/extract.md`(Cowork 開跑前先讀入該檔作為工作規格)。三段:
1. **來源路由**:epub/大型書稿 → 書籍模式(以「章」為單位);網頁/線上手冊 → URL 模式
(以章節階層為單位)。混合來源分開處理。
2. **逐塊萃取 + append 寫檔**:原文放磁碟、需要哪章讀哪章(繞 context 上限);每萃一塊
就 append 進輸出 .md(破輸出上限)。必收清單逐項保真,列舉型(附錄/註釋/推薦序/
參考文獻)**逐項全收**,不得節錄。
3. **收尾對帳**:出「覆蓋清單」(逐項附證據打勾)+「待讀圖清單」+ `review_flags`,
最後跑 `scripts/verify.py` 機械覆核。
---
## 交付前必跑:機械覆核(`scripts/verify.py`)
覆蓋清單是模型自己填的,可能照樣打勾而東西不在。verify.py 不信那份清單,改用
**原始 epub 機械可數的真相**去對帳輸出 .md:
```bash
python scripts/verify.py <來源.epub> <輸出.md> [--strict] [--expect-chapters N]
```
- 從 epub 機械數出:spine 內容文件數、圖檔數���exact)、疑似註釋錨點數。
- 從 .md 數出:`##` 區塊數、🟢🟡⚪ 圖標記數、覆蓋清單/`review_flags` 是否存在。
- **硬失敗(exit 1)**:epub 有圖但輸出零圖標記(靜默吞圖);或缺覆蓋清單/`review_flags`。
- **警告**:區塊數 < 保守正文估計(可能掉章,人工確認);`--strict` 把警告升級為失敗。
- 僅標準庫、可重現、不呼叫任何 LLM。非 epub 來源只能有限覆核,會明講哪些無法機械驗證。
⚠️ **verify.py 未 exit 0(或未跑)前,不得宣稱萃取「完整/已覆蓋」。**
這是本 skill 與一般「AI 讀書 prompt」的關鍵差異:完整與否不靠模型自我宣告,靠機械對帳。
---