前言¶
在 DeepSeek Harness(DSH)里写智能体、改工作区时,参考资料往往就放在当前项目目录:EPUB、Markdown、TXT 或导出的 HTML。若每次用系统默认应用或另开浏览器标签打开,既要离开 Web GUI,又难以和会话并排对照。dsh-reader 是 DSH 生态里的一类客户端插件:在 dsh 的 Web 界面右侧栏注册 reader 标签,点开即在同一页面内浏览已注册工作区中的读物,并记住上次阅读位置。下文介绍其定位、能力、安装方式与使用时的边界。
这是什么¶
dsh-reader 由维护者 guiyuan77 发布,属于 DSH 插件目录中的客户端分类。一句话定位:DeepSeek Harness 的右侧栏阅读器——文件取自 dsh 自己注册的工作区,在面板内渲染 EPUB、TXT、Markdown、HTML;PDF 交由浏览器原生查看器。按 README 说明,插件零运行时依赖、不写工作区文件、自身不请求任何非本机服务。
核心功能¶
下面按 README 功能表归纳已核实能力。
发现与打开¶
- 书架:递归扫描工作区找书(深度 ≤ 5,自动跳过
node_modules、dist、.git等);EPUB、PDF 优先排序。 - 目录浏览:逐层展开工作区,点开任意文件即读。
格式支持¶
| 格式 | 行为 |
|---|---|
| EPUB | 自写 ZIP 解析(中央目录 + DecompressionStream),读 OPF 与 spine 分章,插图正常显示;书内 <style> / <script> / 事件属性一律剥掉 |
| TXT | UTF-8 严格解码失败时回退 GB18030,保留原始换行 |
| Markdown | 标题、列表、代码块、行内码、粗体、引用 |
| HTML | DOMParser 解析后剥掉脚本、样式与事件属性,按当前主题排版 |
| 浏览器原生查看器,非面板内自绘 |
阅读体验¶
- 续读:按「工作区 + 书籍路径」记住章节与滚动位置;切书、收起面板、刷新页面都会先落盘(进度存在浏览器 localStorage)。
- 主题:跟随 dsh / 纸白 / 护眼 / 夜间(默认跟随);深色下书里写死的黑字自动回落为主题色。
- 老板键:面板内按
Esc收起整个右侧栏,会话区不受影响;再展开时标签、章节、滚动位置保留。
快捷键¶
| 键 | 作用 |
|---|---|
Esc |
收起右侧栏(目录抽屉或设置浮层打开时先关它们) |
← → |
EPUB 翻章;TXT / Markdown 滚动一屏 |
j k |
上下滚动 |
配置项¶
在 profile 的插件条目里给 config,不填则用默认值:
| 字段 | 默认 | 说明 |
|---|---|---|
roots |
[] |
额外允许的阅读根目录(绝对路径);不填则只认 dsh 已注册的工作区 |
maxBytes |
134217728 |
单文件上限(128 MiB),超过返回 413 |
安装与启用¶
插件尚未发布到 npm,需用 GitHub 形式安装。需要 dsh 0.2.x(package.json 中 engines.dsh 为 >=0.2.0-rc.1 <0.3.0-0 等区间)。当前插件版本为 0.1.0。
先做安装,再重启 Web 服务:
dsh plugin --profile web add github:guiyuan77/dsh-reader
plugin add 会改写 profile 的 package.json 与 node_modules;跑着的会话 UI 会断开,会话记录不丢。装完后必须重启 dsh web 才生效。插件自带 cordis.patch.yml(dsh.bundle.patch),安装时由 bundle 层自动插入条目,不需要手工编辑 profile。插件没有构建步骤,从源码安装即可用。
典型用法¶
经过上面的安装与重启后:
- 点右侧栏的 +。
- 在引导页选择「阅读器」卡片。
- 若上次会话仍保留该标签,会直接恢复。
在书架或目录树中选书即可阅读;EPUB 可用左右方向键分章,长文可用 j / k 滚动。需要快速收起界面时,在面板内按 Esc。
数据边界与已知限制¶
安全与权限¶
插件以当前 dsh 进程权限运行;安装前宜自行查看 GitHub 源码 与 MIT 许可证。
- 只读:不写、不删、不改工作区里的任何文件。
- 路径:只能读到 dsh 已注册的工作区,以及
roots里显式授权的目录;越界或未注册为 403。 - 网络:插件自身只访问本机
/reader/api/*,不上传书籍内容。 - 内容净化:脚本、表单、内嵌框架、书外样式表均被剥除;EPUB 插图只从包内解析。正文里写死的外链图片仍会由浏览器按普通网页规则加载——与直接在浏览器打开该文件相同。
功能边界¶
README 列出的限制包括:不做标注、书签、全文搜索;EPUB 不支持 ZIP64、不渲染书内 CSS;PDF 下焦点进入原生查看器后 Esc 可能不冒泡到面板;不做章节级分页;不做网络隔离(敏感书籍请选无外链版本)。
结尾¶
dsh-reader 把「工作区里的书」收进 DSH Web 右侧栏,适合需要在写 Harness、对照文档时少切窗口的开发者。生态上 DSH 奉行「一切皆插件」;社区目录 SkillHub 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系。源码与详细说明见 github.com/guiyuan77/dsh-reader。