DeepSeek Harness 自帶“歸檔會話”操作,會將會話 ID 加入全局 archivedSessionIds 集合,使其從側邊欄隱藏。DSH 原生並未提供查看歸檔列表或恢復(取消歸檔)的界面。本文介紹的 dsh-archive-manager 插件正是爲了填補這一缺口,它爲側邊欄新增入口,列出所有已歸檔的會話(按工作區分組),並提供查看、恢復以及直接打開對話文件夾的能力。
核心能力¶
- 按工作區分組查看:側邊欄底部新增按鈕,彈出面板列出所有已歸檔會話,按所屬工作區歸類,顯示標題、ID 和更新時間。
- 恢復會話:點擊恢復後,會話 ID 從歸檔集合中移除,會話在側邊欄恢復原位。
- 打開會話:點擊打開時,插件會先執行恢復操作,然後打開該會話。
- 打開對話文件夾:直接在文件管理器中打開該會話的對話記錄目錄(包含
session.jsonl*日誌文件)。 - 安全與輕量:代碼防禦性強,遠程掛載失敗時降級爲只讀面板;無編譯步驟,純 ESM/CommonJS 文件。
工作原理¶
插件通過註冊一個遠程服務 ctx.archiveManager 來實現核心邏輯。
- 恢復:
archiveManager/unarchive接口通過註冊表的操作隊列移除會話 ID,從而實現恢復。 - 打開文件夾:
archiveManager/openSessionFolder接口利用ctx.sessionPersistence定位持久化目錄並在本地打開。 - 設計邊界:由於 DSH 的持久化接口(
dsh-session-persistence-jsonl)不支持刪除,且日誌文件爲追加式存儲,該插件不提供物理刪除會話文件的功能,僅支持從歸檔集合中移除(軟刪除)。
安裝與啓用¶
使用官方 CLI 安裝(無需全局安裝 dsh):
npx --yes @deepseek-ai/dsh plugin --profile web add https://github.com/Earnest02522/dsh-archive-manager.git
安裝完成後,重啓 DeepSeek Harness(或等待熱更新重載配置),並刷新瀏覽器(Ctrl+Shift+R)。
注意事項¶
- 刪除限制:根據 DSH 設計,刪除對話(物理刪除文件)不受支持,持久化接口本身無刪除接口,因此該插件也不提供物理刪除功能。
- 文件清理:若需徹底清理會話,需停止 DSH 進程,手動刪除
~/.dsh/sessions/下的目錄,由後續掃描索引自行清理。
相關資源¶
- 插件目錄:https://www.skillhub.cn/plugins/Earnest02522/dsh-archive-manager
- 項目倉庫:https://github.com/Earnest02522/dsh-archive-manager