dsh-autoload-history:打開會話自動加載全部歷史消息

前言

在 DSH Web 中,打開一個已有會話時,通常只能看到最近的內容;更早的消息需要反覆點擊「加載更早」。對長會話來說,這會打斷查看舊上下文的節奏。

dsh-autoload-history 是一個由 magicOF2 維護的 DSH 插件,採用 MIT 許可證。它的作用是在會話打開後自動逐頁加載歷史消息,直到整個會話全部就緒。下面介紹它的功能、安裝方式和可選設置。

插件定位

一句話定位:打開會話自動加載全部歷史消息,免去反覆點擊「加載更早」。

它面向需要查看完整歷史會話的 DSH Web 使用者。安裝後不需要額外界面操作,插件會在後臺完成翻頁。

核心功能

自動翻頁

打開會話後,插件會按頁自動加載歷史消息,每頁 50 條,直到 hasMore === false。也就是說,長會話在打開後會逐漸完成完整加載,不需要手動繼續點擊「加載更早」。

會話跟隨

切換會話時,插件會自動跟隨當前會話繼續工作,不同會話之間互不干擾。

不打斷正常聊天

自動翻頁與即時追加互不衝突,加載歷史消息的過程中不會打斷正常聊天。

無 UI 痕跡

插件掛載在官方會話級槽位 conversation.composer.dock,全程沒有可見 UI 痕跡。

防呆機制

如果連續 3 頁沒有出現進展,插件會自動放棄翻頁,避免死循環。

安裝與啓用

從 GitHub 源碼安裝

以下命令用於從 GitHub 源碼安裝插件:

dsh plugin --profile web add github:magicOF2/dsh-autoload-history

首次從 GitHub 源碼安裝會請求 allowBuilds 構建授權。按提示允許後,重試一次即可。

從 npm 安裝

以下命令用於從 npm 安裝預構建包:

dsh plugin --profile web add dsh-autoload-history

npm 預構建安裝會跳過 allowBuilds 步驟。

安裝完成後,打開任意會話即自動生效,不需要額外配置。

典型用法

臨時停用自動加載

如果只想臨時停用,而不卸載插件,可以執行:

localStorage.setItem('dsh-autoload-history.disabled', '1')

需要恢復時執行:

localStorage.removeItem('dsh-autoload-history.disabled')

限制單次最大翻頁數

如果只想限制單次打開會話時自動翻頁的頁數,可以執行:

localStorage.setItem('dsh-autoload-history.maxPages', '20')

這裏的 20 表示最多翻 20 頁,約 1000 條消息。非法設置值會一律回落到默認行爲:啓用自動加載、不限頁數。

工作原理

插件主要做三件事:

  1. 掛載到官方會話級槽位 conversation.composer.dock,不新增可見 UI。
  2. 調用 session.loadOlder() 自動翻頁,直到 hasMore === false。
  3. 連續 3 頁無進展時自動放棄,避免死循環。

兼容性與注意

  • 兼容 DeepSeek Harness >= 0.1.0-rc.5(Web profile)。
  • package.json 聲明 engines:node >=22.19.0、dsh >=0.1.0-rc.5。
  • peerDependencies 聲明 @deepseek-ai/cordis ^4.0.1。
  • 純瀏覽器端插件:無宿主行爲、無數據上報、無網絡請求。
  • 不修改官方文件,卸載即完全還原。

插件會在當前 dsh 進程權限下運行。安裝前建議先檢查 GitHub 源碼和 MIT 許可證,確認行爲符合你的使用要求。

結尾

dsh-autoload-history 解決的問題比較具體:打開長會話後,不再需要手動反覆點擊「加載更早」。它適合需要頻繁查看完整歷史會話的 DSH Web 用戶,安裝簡單,卸載後也能完全還原。

社區目錄頁:

https://www.skillhub.cn/plugins/magicOF2/dsh-autoload-history

該目錄頁是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不等同於官方應用商店。

GitHub 倉庫:

https://github.com/magicOF2/dsh-autoload-history

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

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

小夜