svestar/dsh-readpilot:把本機書庫變成 DSH 裏的 AI 共讀工作區

前言

DSH 的理念是一切皆插件,閱讀這件事也不例外。直接把一本書丟給模型,通常是拆成若干段塞進上下文:沒有書籤、沒有批註,讀到後面前面的判斷也消失了。多個 Agent 各自處理同一本書時,進度和筆記還容易互相覆蓋。

下面介紹一個把閱讀流程放進 DSH 的插件:svestar/dsh-readpilot(ReadPilot)。它把本機書庫做成可檢索、可批註、可與 AI 共讀的工作區,支持 TXT、Markdown、EPUB、PDF 四種格式,維護者是 svestar。

這個插件解決什麼

它落在 DSH Web GUI 裏,提供三個互相銜接的部分:一個掃描本機目錄的書庫,一個可切換原版/重排的閱讀器,以及每本書一個原生會話,用於「選段問伴讀 + 帶引用回答」。先裝成插件,再創建書庫;經過上面的步驟,設置、進度、會話與解析緩存都放在 $DSH_HOME/dsh-readpilot/,原書不復制,筆記留在 notes/ 目錄,可用外部編輯器編輯。

核心功能

下面按功能分塊說明,細節均來自 README,各格式的不確定性見文末「限制」。

書庫

掃描 TXT、Markdown、EPUB、PDF 四類文件,列表項包含封面、狀態評分、標籤,支持檢索與排序。單本默認上限 100 MB,目錄深度 3 層、最多 2000 個文件。

閱讀

提供原版與重排兩種排版,滾動/分頁、單頁/雙頁、字號、主題與毛玻璃效果集中在「Aa 閱讀設置」裏。重排會重建文本層:EPUB 覆蓋文本、圖片與簡單表格,PDF 覆蓋文本層。頁碼同時顯示本章進度與全書進度。目錄、檢索、劃線、批註、書籤與跳轉齊全,並有快捷鍵。

AI 伴讀

每本書綁定一個原生會話,複用 DSH 的 Chat 工具、推理與審批機制。選段後詢問伴讀,回答帶引用,PDF 的引用頁碼可以點擊跳轉。閱讀過程在只讀沙箱中執行,會話失效會自動重建。

筆記、記憶與導出

先寫筆記,再處理記憶。長筆記寫入 notes/,可用外部編輯器查看,草稿先顯示 diff 再自動應用;可以按書把筆記注入上下文。歷史筆記可恢復、刪除或清空。記憶默認關閉,手動開啓後每張卡片最多 600 字。筆記和記憶都能導出爲 Markdown。

工具

插件註冊八個工具:reader_books、context、open、read、search、note、notes、memory。另外,閱讀紀律會寫入書庫的 AGENTS.md。

安裝與啓用

先安裝依賴:

npm install dsh-readpilot

README 寫明 npm 上最新發布版本是 0.2.2,0.2.3 已在 GitHub 打標籤但尚未發佈到 npm;插件兼容 DSH 0.2.2-rc.1 到 0.2.x。

再在 DSH Plugins 或 plugin_manager 裏安裝 dsh-readpilot,刷新後創建書庫即可。開發需要 Node 22.18+。

目錄結構上 Host 位於 index.ts 與 src/,Client 位於 src/client/,構建產物是 client.js。構建與檢查命令同 README:

pnpm run build         # 生成 Host 與 client.js
pnpm test              # 跑測試
pnpm run typecheck     # 類型檢查
python scripts/check_docs.py

典型用法

下面是一條可復現的路徑。

1、掃描書庫。把書放進掃描目錄,插件按四種格式建索引,生成封面、評分與標籤。

2、開始閱讀。在書庫中打開一本書,用 Aa 閱讀設置切到重排模式;EPUB 按塊級內容重排,PDF 從文本層重建,頁碼同時顯示章節進度與全書進度。

3、選段提問。劃選一段文字,由伴讀會話基於所選內容回答,回答攜帶引用;PDF 的引用頁碼可點擊。若會話失效,插件會自動重建。

4、記錄。劃線批註,或把筆記寫入 notes/,草稿先 diff 再應用;之後可以把筆記注入該書的上下文,需要時導出 Markdown。

適用場景與注意

適合想把一批本地電子書納入 DSH 流程、並希望閱讀進度與 AI 對話留在同一處的人。閱讀紀律寫入書庫的 AGENTS.md,便於其他 Agent 沿用同一套規則。

需要注意幾件事。插件以當前 DSH 進程的權限運行,能訪問你能訪問的目錄,安裝前應檢查源碼與許可證;許可證是 MIT。EPUB 原版保留 CSS、圖片與字體但不執行腳本;重排只保留塊級圖片與普通行列表格,行內圖片、SVG、合併單元格與複雜版式會丟失。PDF 重排不識別圖片、公式與複雜表格,掃描版需要自帶文本層,雙欄和頁眉頁腳可能影響文本層對齊。檢索是字面量掃描,不做分詞或模糊匹配。原生伴讀依賴 DSH Conversation Factory,失敗時退回摺疊形態。

結尾

ReadPilot 的價值在於把「打開一本書」變成可檢索、可批註、可與 AI 共讀的一次會話:書仍在原處,讀取的進度和筆記留在 DSH 裏。目錄頁在 https://www.skillhub.cn/plugins/svestar/dsh-readpilot,源碼在 https://github.com/svestar/dsh-readpilot,功能文檔見倉庫內的 docs/features/index.md,取捨記錄在 docs/decisions/。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜