前言¶
在 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。