dsh-deep-reading:DeepSeek Harness 的深度閱讀插件

DeepSeek Harness (DSH) 的插件生態允許開發者擴展模型推理能力。對於閱讀任務,最大的痛點在於上下文窗口限制:把整本書丟進主會話會迅速消耗 Token。dsh-deep-reading 解決這個問題:它通過拆分章節、單章子代理處理原文、主會話僅接收短結果的方式,實現 Token 效率優先的讀書流程。

插件核心價值在於將「讀一本書」變成一件可累積、可續讀、可導出的事。它維護一份帶定位的章節記憶,允許用戶在不重讀原文的情況下切換視角;同時支持逐字導出,確保導出的筆記與原文完全一致。

核心功能

導入與拆章

插件支持導入多種格式並自動拆章:
- 格式支持:EPUB、單個 Markdown 文件、包含多個章節的 Markdown 目錄、TXT、PDF。
- 轉換邏輯:TXT 和 PDF 會先通過 lib/convert.js 轉換爲 Markdown。轉換後的全文保留在 books/<ID>/source.md 中。
- 切章規則:Markdown 按 # 一級標題切分,標題前內容算「前言」;EPUB 按書自身的 spine 結構切分。
- 段落編號:導入時會給每章正文添加 [1] [2] [3] 段落號,用於後續定位。
- 冪等性:源文件未變再導入會返回 skipped:true。

單章精讀與子代理

  • 原文隔離:用戶發起精讀指令後,主會話會派生一個 reading_chapter 子代理。子代理帶着本章原文和閱讀目的獨立工作,返回的講解和狀態落盤,但原文不會進入主會話。
  • 斷點續讀:超長章節(默認 12000 字節)會自動分節。中途斷開下次可從斷點續讀;讀完全章後狀態由 partial 變爲 complete。

章節記憶與複用

  • 帶定位的記憶:每條 AI 解釋必須帶有 [n] 段落定位,寫入 memory/NNN.md。記憶綁定源文件哈希,源文件變動會導致舊記憶過期。
  • 記憶不可回改:標記爲 complete 的記憶一旦寫入,不可修改。若後續理解改變,需在後續章節的記憶中追加修正。
  • 已讀複用:dr_status 會檢查記憶是否滿足 complete、哈希一致、協議版本一致三個條件。若滿足,標記爲 reusable,後續直接基於記憶講解,不重讀原文。

工具與導出

插件提供以下核心工具:
- dr_import:導入並拆章。
- dr_read:只讀模式,支持 index、range、locate、find 四種定位原文的方式。
- dr_write:寫入記憶、講解、用戶筆記等。
- dr_status:查看每章狀態與 reusable 判定。
- dr_usage:記錄 Token 消耗,支持 report 模式彙總。
- dr_export_epub:將 lecture/*.md 逐字拼接成 EPUB3。

安裝與啓用

安裝插件需要使用官方提供的命令,直接指定本地目錄路徑:

dsh plugin --profile <profile> add <本目錄路徑>

安裝完成後,桌面版必須重啓 DSH 應用纔會加載插件。

典型用法

以下是一個典型的閱讀流程:

  1. 導入書籍:
    導入一本書並指定 ID,插件會自動拆分章節並建立索引。
  2. 精讀單章:
    對話中發起精讀指令,主會話生成子代理處理本章,原文不進入主對話。
  3. 繼續閱讀:
    在新會話中直接說「繼續讀書」,插件會從第一個未完成或過期的章節開始。
  4. 切換視角:
    對已讀完的章節,要求「從人物角度再講一遍」,插件會複用記憶,不重讀原文。
  5. 導出:
    使用 dr_export_epub 生成逐字收錄的電子書。

注意事項

  • 掃描件限制:沒有文字層的 PDF 掃描件會被拒絕導入。
  • PDF 依賴:PDF 轉換依賴特定的 CMap 表和 pdfjs-dist 構建,若配置不當會導致中文靜默抽空。
  • 數據結構:complete 的記憶不可回改,需通過後續章節追加修正。
  • 權限:插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。

書庫配置

默認書庫路徑爲 $DSH_HOME/deep-reading/books。若需共享書庫或更改路徑,可在 profile 的 cordis.patch.yml 中修改 booksRoot 配置。

生態信息

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

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

小夜