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/。

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

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

小夜