前言¶
DeepSeek Harness(dsh)的擴展理念是「一切皆插件」。對於需要頻繁打開、刷新和切換會話的 dsh 用戶,聊天記錄加載路徑中的 inspect、readFrom、list 以及投影緩存寫盤,都會直接影響使用體驗。
dsh-better-chat-history 是一個 DSH 會話 I/O 優化插件,通過讀路徑緩存與寫合併優化聊天記錄加載。它不修改 DSH 本體,按插件方式掛載後生效。下面介紹它的功能、安裝方式和注意事項。
這是什麼¶
dsh-better-chat-history 由 echo-xianyu 維護,當前版本爲 0.1.0,許可證爲 MIT。
它的定位是一句話:DeepSeek Harness(dsh)會話 I/O 優化插件,通過讀路徑緩存與寫合併優化聊天記錄加載。
實現方式上:
- 零依賴,純 JS ESM;
- 不修改 DSH 本體;
- 通過包裝既有服務實例方法 + patch 配置覆蓋生效;
- 需要
dsh >= 0.1.0-rc.6。
核心功能¶
讀路徑緩存¶
插件對讀路徑做三級緩存:
inspect:LRU 緩存,默認 64 槽,TTL 60s,並做併發去重;readFrom:緩存命中時直接內存截取,零磁盤 IO;list:5s TTL 緩存,避免每次打開 GUI / 刷新都全盤掃描所有會話 header。
會話預熱器¶
web 啓動後,插件會在後臺把最近活躍的會話預先 inspect 進緩存,默認 24 個。
這樣可以減少後續打開這些會話時再次走完整讀路徑的概率。
精確失效¶
插件監聽以下事件:
session/event
session/created
session/disposed
會話日誌一旦變化,會立即棄用對應緩存。語義上是隻讀路徑緩存 + 事件失效:最多返回陳舊視圖,絕不產生錯誤數據。
寫合併¶
插件對 fail-soft 的投影緩存做合併落盤,fsync 頻率降低約 10 倍。
需要注意的是,workspace.json 等權威數據不合並,保持原語義。
安裝與啓用¶
方式一:使用本地 Release tarball¶
先把 dsh-better-chat-history-0.1.0.tgz 放到命令執行目錄,然後執行:
dsh plugin --profile <profile> add ./dsh-better-chat-history-0.1.0.tgz
安裝後重啓對應 profile 即可。
方式二:手動掛載¶
如果不用插件包安裝,也可以把插件文件直接掛到目標 profile 中。先掛載文件,再追加配置,最後重啓 dsh。
1、把本包放入目標 profile 的目錄:
node_modules\dsh-better-chat-history\
包內應包含:
lib\index.js
cordis.patch.yml
package.json
零依賴,無需額外 install。
2、在 profile 的 package.json 的 dependencies 中加入:
"dsh-better-chat-history": "file:<本包路徑>"
3、在 profile 的 cordis.patch.yml 末尾追加以下配置項:
session-persistence-jsonl
session-projection-cache
io-optimizer
4、重啓 dsh:
dsh web
或者:
dsh --profile <profile>
驗證¶
重啓後執行:
dsh --profile web --dump-config
應看到 session-persistence-jsonl 行帶:
preparedSessionCacheSize: 64
writeBatchMaxDelayMs: 2000
同時應看到 io-optimizer 行。
插件靜默運行:正常時不輸出任何日誌,僅 error 級會輸出。
適用場景與注意¶
適合使用 dsh profile / dsh web 管理多個會話,並希望在讀取聊天記錄時減少重複讀盤、在投影緩存寫入時減少落盤次數的用戶。
安裝前需要注意:
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證;
- 需要
dsh >= 0.1.0-rc.6; - 只讀路徑緩存 + 事件失效的語義是:最多返回陳舊視圖,絕不產生錯誤數據;
- 寫合併只作用於
fail-soft的投影緩存;workspace.json等權威數據不合並,保持原語義; - 崩潰丟失窗口:最近 ~2s 的日誌事件、合併窗口內的投影緩存更新;
- 項目部分代碼與文檔由 AI 輔助生成,並經過人工審查與測試;按 MIT 許可證開源,僅供學習與參考,使用者請自行評估代碼的安全性與合規性。
獲取¶
社區目錄頁(獨立站點,與 DeepSeek / 幻方無官方從屬關係):
https://www.skillhub.cn/plugins/echo-xianyu/dsh-better-chat-history
GitHub 倉庫:
https://github.com/echo-xianyu/dsh-better-chat-history