工程審閱 |book-to-skill 超級省錢實用·源碼證據(jù)驅(qū)動評測【Agent Skill 特輯 #001】)
Valhalla 靜態(tài)工程審閱 book-to-skill 超級省錢實用·源碼證據(jù)驅(qū)動評測【Agent Skill 特輯 #001】硬核工業(yè)風(fēng)技術(shù)文章建議搭配封面圖閱讀。本文基于固定 Commit 快照開展只讀靜態(tài)工程審閱不代表動態(tài)安全結(jié)論所有觀測均以可復(fù)查源碼證據(jù)為邊界。 本文檔聲明性質(zhì)本文系基于固定代碼快照442aaaa的靜態(tài)工程特征分析屬于開源組件盡職調(diào)查參考材料不構(gòu)成任何形式的安全漏洞最終判定或法律合規(guī)意見。證據(jù)錨定所有結(jié)論均以文內(nèi)引用的源碼文件路徑為唯一證據(jù)邊界未經(jīng)驗證的動態(tài)運(yùn)行數(shù)據(jù)不納入本文分析范疇。使用建議若將 book-to-skill 納入生產(chǎn)或核心業(yè)務(wù)系統(tǒng)建議結(jié)合內(nèi)部 SAST/DAST 掃描及實際部署測試形成完整的評估報告。摘要技術(shù)書買了讀完了三個月后連第 7 章的存在都忘了——這是每個技術(shù)人的真實困境。傳統(tǒng)的解法各有各的痛搜 PDF 返回一堆頁碼而不是答案問 AI 要么幻覺要么說沒讀過邊讀邊記筆記最后得到一份 200 行的文檔再也沒打開過。book-to-skill給出了一個完全不同的答案把書“編譯”成 Agent Skill讓 Agent 在需要時按章節(jié)按需加載——而不是把整本書塞進(jìn)上下文。它的效果很直接24 倍到 51 倍的 Token 節(jié)省實測 103 頁技術(shù)書轉(zhuǎn)換成本約$1單本書 Skill 的核心骨架約4,000 tokens每章按需加載約1,000 tokens。本文從 Valhalla 靜態(tài)工程審閱視角拆解 book-to-skill 的架構(gòu)底層與工程特征。1. 評測基礎(chǔ)信息字段內(nèi)容評測類型證據(jù)驅(qū)動只讀靜態(tài)審閱目標(biāo)項目virgiliojr94/book-to-skill項目性質(zhì)技術(shù)書籍 → Agent Skill 轉(zhuǎn)換工具分析快照442aaaa2d21dbe5ae0f7c6a396585ef3a9d2534e分析范圍倉庫文件、模塊結(jié)構(gòu)、風(fēng)險標(biāo)簽排除范圍動態(tài)執(zhí)行、滲透測試、性能壓測、商業(yè)生態(tài)判斷、法律合規(guī)意見2. 項目全景把技術(shù)書“編譯”成 Agent 的隨身外掛2.1 一句話定位把任意技術(shù)書 PDF、文檔文件夾或資料合集變成一個統(tǒng)一的 Agent Skill——讓你在 Claude Code、GitHub Copilot CLI、Amp 里一邊干活一邊查閱。2.2 核心洞察RAG 是檢索Skill 是推理book-to-skill 的作者在 FAQ 里做了一個極其關(guān)鍵的區(qū)分維度RAGbook-to-skill工作時機(jī)查詢時Query Time編譯時Compile Time輸入把書切成塊 → Embed → 找相似向量一次深度分析提取作者的框架、命名、決策規(guī)則輸出“這里有和你查詢相近的段落”“這里有作者構(gòu)建的 12 個框架準(zhǔn)備好用于推理”適用場景寬而淺幾十本書找提到 X 的部分窄而深一本書或緊密相關(guān)的資料集群工作中反復(fù)應(yīng)用RAG 是檢索Skill 是推理。RAG 索引一個書架book-to-skill 精通一本書的脊梁。2.3 技術(shù)書讀完就忘是這本書最大的“未完成價值”技術(shù)書的價值不在于“讀過”而在于“能用上”。但現(xiàn)實是痛點(diǎn)傳統(tǒng)解法的問題“讓我搜一下 PDF”返回頁碼列表不是答案“我問問 AI 關(guān)于這本書”要么幻覺要么說沒讀過“我邊讀邊記筆記”200 行文檔再也沒打開過“把整本書塞進(jìn)上下文”每輪對話都燒 Token400 頁 ≈ 200K tokensbook-to-skill 把“讀過的書”從負(fù)擔(dān)變成了資產(chǎn)——Agent 按需加載章節(jié)只問當(dāng)下需要的部分。3. 資產(chǎn)微觀面板指標(biāo)觀測值工程解讀受支持源文件29全部 Python輕量級代碼基主導(dǎo)語言Python29 個文件純 Python易擴(kuò)展一級模塊根4book_to_skill/、scripts/、tests/、tools/構(gòu)建/依賴文件pyproject.toml標(biāo)準(zhǔn) Python 打包入口證據(jù)book_to_skill/__main__.py可執(zhí)行模塊版本v1.3.0活躍迭代中許可證MIT商業(yè)友好靜態(tài)風(fēng)險命中4 條全部為RISK-SHELL-INVOCATION4. 核心機(jī)制三步把書變成 Skill4.1 整體流程技術(shù)書純文本用戶輸入: PDF/EPUB/DOCX/文件夾Step 1: 提取文本Step 1.5: 識別書籍類型Docling 解析表格代碼塊→Markdownpdftotext/pypdf/pdfminerStep 2: 合并文本/tmp/book_skill_work/Step 3: Claude 分析結(jié)構(gòu)標(biāo)題/作者/章節(jié)/目錄Step 4: 生成 Skill 文件輸出到 ~/.claude/skills/slug/4.2 生成的 Skill 文件結(jié)構(gòu)運(yùn)行/book-to-skill your-book.pdf后會在 Agent 的 Skills 目錄下生成一套結(jié)構(gòu)化文件文件用途大小SKILL.md核心心智模型 章節(jié)索引~4,000 tokenschapters/ch01-*.md每章獨(dú)立文件按需加載~1,000 tokens eachglossary.md術(shù)語表按字母排序 章節(jié)引用~1,500 tokenspatterns.md所有技術(shù)、算法、設(shè)計模式~2,000 tokenscheatsheet.md決策表 速查規(guī)則~1,000 tokens章節(jié)文件是按需加載的——在你問到那個主題之前它們不消耗 Skill 預(yù)算。4.3 不止是書文檔文件夾、資料合集都行“book”在名字里但輸入可以是任何結(jié)構(gòu)化文本輸入類型示例內(nèi)部文檔架構(gòu)決策記錄、Runbook、Onboarding 指南品牌與設(shè)計系統(tǒng)品牌手冊、語氣指南、組件原則研究資料集群論文堆 個人筆記合并成一個 Skill規(guī)范與標(biāo)準(zhǔn)RFC、API 契約、合規(guī)文檔把整個docs/文件夾變成一個 Skill一邊寫代碼一邊問。5. 性能與成本5.1 Token 節(jié)省24×–51×book-to-skill 最核心的價值主張是 Token 效率方法Token 消耗相對 book-to-skill把整本書塞進(jìn)上下文200K400 頁書51×每次重新搜索 PDF每次都是全量持續(xù)燒錢book-to-skill按需加載~5K核心骨架 1 章基準(zhǔn)大上下文窗口讓“把整本書塞進(jìn)去”可行但并沒有讓它便宜。Skill 加載的是 KB 級別不是 MB 級別。5.2 實際轉(zhuǎn)換成本實測數(shù)據(jù)在 Claude Sonnet 4.5 上$3/$15 per MTok書籍頁數(shù)Token章節(jié)估算成本Think Python 2244119K19$0.88Working Backwards371175K10$0.96Pro Git501229K—$1.23Moby-DickEPUB—301K—$1.42一本技術(shù)書的完整 Skill 轉(zhuǎn)換成本約為 $1——遠(yuǎn)低于每輪對話都把整本書塞進(jìn)上下文的累計成本。5.3 解析速度103 頁技術(shù)書實測方法耗時表格代碼塊pdftotext0.1s00Docling技術(shù)書專用164s4836技術(shù)書用 Docling 雖然慢但能正確提取表格和代碼塊——這是技術(shù)書 Skill 質(zhì)量的關(guān)鍵。6. 靜態(tài)風(fēng)險標(biāo)簽風(fēng)險標(biāo)簽命中文件定級RISK-SHELL-INVOCATIONbook_to_skill/dependencies.py需人工復(fù)核RISK-SHELL-INVOCATIONbook_to_skill/parsers/calibre.py需人工復(fù)核RISK-SHELL-INVOCATIONbook_to_skill/parsers/pdf.py需人工復(fù)核RISK-SHELL-INVOCATIONtests/test_repo_hygiene.py測試代碼可降低優(yōu)先級解讀四條 Shell 調(diào)用命中分布在三個核心區(qū)域區(qū)域文件性質(zhì)依賴檢查dependencies.py運(yùn)行時檢查外部依賴如 Calibre、pdftotext是否可用Calibre 解析parsers/calibre.py調(diào)用 Calibre 轉(zhuǎn)換 MOBI/AZW 格式PDF 解析parsers/pdf.py調(diào)用 pdftotext 或 Docling 提取 PDF 文本測試tests/test_repo_hygiene.py測試輔助腳本非生產(chǎn)路徑book_to_skill/parsers/pdf.py作為 PDF 解析的核心入口其中的 Shell 調(diào)用需重點(diǎn)確認(rèn)是否涉及用戶可控的輸入如文件路徑是否經(jīng)過充分校驗建議在使用前進(jìn)行人工復(fù)核。7. 適用場景與生態(tài)位置7.1 適用場景場景推薦度說明技術(shù)書深度學(xué)習(xí)★★★★★把讀過的書變成 Agent 可隨時查閱的“外掛大腦”內(nèi)部文檔 Skills 化★★★★★把團(tuán)隊 Wiki、ADRs、Runbooks 變成可查詢的 Skill研究資料集群管理★★★★☆把論文堆 筆記合并成一個 Skill編碼時即時參考★★★★★在 Claude Code / Copilot CLI 中直接/book-to-skill查詢7.2 與同類工具的生態(tài)關(guān)系book-to-skill 遵循開放Agent Skills 標(biāo)準(zhǔn)與 RAG 工具是互補(bǔ)關(guān)系而非競爭關(guān)系工具定位適用場景RAG 工具如 CandleKeep寬而淺幾十本書找“提到 X 的部分”book-to-skill窄而深一本書或緊密資料集群工作中反復(fù)應(yīng)用8. 對話式總結(jié)問book-to-skill 是什么答把技術(shù)書 PDF、文檔文件夾或資料合集“編譯”成 Agent Skill 的工具。遵循開放 Agent Skills 標(biāo)準(zhǔn)支持 Claude Code、GitHub Copilot CLI、Amp。問它和“把書塞進(jìn)上下文”有什么不同答塞書是每輪對話都燒 Token400 頁 ≈ 200K tokensSkill 是按需加載~5K tokens。實測24 倍到 51 倍的 Token 節(jié)省。問一本書的轉(zhuǎn)換成本是多少答實測約$1每本書。244 頁的 Think Python 2 轉(zhuǎn)換成本 $0.88。問和 RAG 有什么區(qū)別答RAG 是查詢時檢索“找到提到 X 的段落”book-to-skill 是編譯時提取結(jié)構(gòu)“這里有一組作者構(gòu)建的框架準(zhǔn)備好用于推理”。兩者是互補(bǔ)關(guān)系不是替代關(guān)系。9. 后續(xù)驗證建議優(yōu)先級驗證動作目的P1審查book_to_skill/parsers/pdf.py中的 Shell 調(diào)用參數(shù)校驗排除路徑注入風(fēng)險P1在隔離環(huán)境中執(zhí)行/book-to-skill轉(zhuǎn)換測試驗證實際轉(zhuǎn)換效果P2測試不同格式PDF/EPUB/DOCX的解析質(zhì)量確認(rèn)格式覆蓋完整性P2評估 Calibre 依賴在目標(biāo)環(huán)境中的可用性確認(rèn) MOBI/AZW 格式支持 本文檔聲明性質(zhì)本文系基于固定代碼快照442aaaa的靜態(tài)工程特征分析屬于開源組件盡職調(diào)查參考材料不構(gòu)成任何形式的安全漏洞最終判定或法律合規(guī)意見。證據(jù)錨定所有結(jié)論均以文內(nèi)引用的源碼文件路徑為唯一證據(jù)邊界未經(jīng)驗證的動態(tài)運(yùn)行數(shù)據(jù)不納入本文分析范疇。使用建議若將 book-to-skill 納入生產(chǎn)或核心業(yè)務(wù)系統(tǒng)建議結(jié)合內(nèi)部 SAST/DAST 掃描及實際部署測試形成完整的評估報告。本文不是 Agent Skill 質(zhì)量評測或轉(zhuǎn)換效果對比而是一次基于固定 Commit 快照的開源組件靜態(tài)工程盡職畫像。更新日志版本號發(fā)布日期修訂內(nèi)容v2.02026-08-10發(fā)布完成項目核心架構(gòu)評測、安全風(fēng)險審計與場景落地建議本文由 Valhalla Matrix V2 評測體系出品僅作技術(shù)研究與風(fēng)險提示不構(gòu)成任何部署建議。