前言¶
DeepSeek Harness(DSH)桌面版在長時間使用後,會話列表會逐漸膨脹,刪除操作又分散在各個面板裏,查看和清理都不方便。dsh-session-manager 插件在左側導航欄增加一個「會話管理」面板,集中列出所有會話,支持按時間、體積、回合排序,以及批量刪除和多種清理方式。
是什麼¶
dsh-session-manager 是一個給 DeepSeek Harness 桌面版用的會話管理插件。插件在左側導航欄註冊一個面板,列出會話的標題、回合數、體積、最後活動時間和所屬工作區。它提供批量刪除、單條刪除、多種排序方式、空會話清理和失效記錄清理等能力,並內置 5 種佈局和外觀設置。
安裝與啓用¶
安裝只需要一條命令:
dsh plugin --profile desktop add https://github.com/daxianya/dsh-session-manager/releases/latest/download/dsh-session-manager.tgz
安裝後退出應用再打開,左側導航欄會出現「會話管理」入口。也可以先下載 tgz 文件到本地再安裝:
dsh plugin --profile desktop add ./dsh-session-manager-0.2.0.tgz
dsh plugin add 會自動處理依賴、登記 dependencies 並寫入 dsh.profile.bundles,不需要手動編輯配置文件。
確認安裝成功:
dsh --profile desktop --dump-config | grep -A2 session-manager
如需卸載:
dsh plugin --profile desktop remove dsh-session-manager
核心功能¶
會話列表
面板列出會話的標題、回合數、體積、最後活動時間、所屬工作區,支持按時間、體積、回合、標題排序,並可切換升序或降序。
批量刪除
勾選會話後點擊刪除,插件會進行兩步確認,然後刪除對應目錄、清空索引、清除緩存。刪除是硬刪除,不留備份。
單條刪除
每行右側有垃圾桶圖標,點兩下確認後刪除單條會話。
孤兒會話篩選
可篩選出所屬工作區已被刪除的孤兒會話。
空會話清理
有些會話點擊了「新會話」但一句話沒發,軟件本身不會顯示這些空殼,可在設置裏一鍵清理。
失效記錄清理
刪除會話後,內存中的會話對象可能在下次寫入 workspace.json 時產生殘留條目,設置面板提供清理失效記錄的功能。
5 種佈局
表格視圖、卡片視圖、按項目分組、左右分欄、帶體積條,可在設置面板切換。
外觀設置
支持淺色、深色、跟隨系統三種主題,字號分三檔,只作用於本面板。
安全設計¶
不刪當前正在對話的會話
插件通過服務端讀取會話狀態,如果會話正在運行回合,刪除請求會被拒絕,理由回傳「正在運行回合」。
同源校驗
非本機 Origin 的 POST 請求一律返回 403。
id 白名單
只接受 session-<uuid> 格式的會話 ID,對 ../ 這類路徑穿越嘗試直接判非法。
原子寫
修改 workspace.json 時使用臨時文件 + rename 的方式,不會出現半個文件寫入磁盤的情況。
典型用法¶
- 安裝插件後,左側導航欄會出現「會話管理」。
- 在面板頂部選擇排序方式(時間、體積、回合、標題)和方向。
- 勾選不需要的會話,點擊刪除按鈕,在確認對話框中再次確認。
- 如需清理空會話,在設置面板點擊「清理空會話」按鈕。
- 如需清理失效記錄,先
⌘Q退出應用,再打開並進入設置面板,點擊「清理失效記錄」。
注意事項¶
插件只測過 macOS + DeepSeek Harness 桌面版。刪除會話後建議重啓一次應用,否則內存中的會話對象可能在下次寫入 workspace.json 時產生失效記錄,需要通過「清理失效記錄」修復。
插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證(MIT)。
總結¶
dsh-session-manager 爲 DeepSeek Harness 提供了一個集中管理會話的入口,支持批量刪除、排序和多種清理方式。它不依賴宿主預留位置,通過插件自身的接口註冊側邊欄,提供硬刪除、同源校驗、路徑穿越防護等安全設計。適合需要在桌面版中集中管理會話的開發者使用。
插件目錄頁:https://www.skillhub.cn/plugins/daxianya/dsh-session-manager
GitHub:https://github.com/daxianya/dsh-session-manager