前言¶
DSH 側邊欄裏的「歸檔對話」只是把會話從列表中隱藏,會話日誌文件仍留在文件系統裏。akira399/dsh-session-delete 是一個 DSH 插件,在會話行的 ··· 菜單中新增「刪除對話」入口,用於把會話日誌從文件系統中永久刪除,而不是僅做歸檔隱藏。
這是什麼¶
- 插件名:
akira399/dsh-session-delete - 維護者:
akira399 - 許可證:
MIT - 定位:在 DSH 側邊欄會話菜單中永久刪除會話,真正的物理刪除,不是歸檔隱藏
- 依賴:僅使用 Node 內置模塊與注入的官方服務,無第三方運行時依賴
核心能力¶
1、定位並刪除日誌文件:通過官方 sessionPersistence.locate() 定位會話目錄,並遞歸刪除日誌文件。
2、處理運行中的會話:刪除運行中的會話時,會先取消當前回覆,並從內存摘除,再執行刪除。
3、清理記賬信息:同步清理 workspace.json 的會話席位與全局歸檔集合。
4、即時刷新:刪除後會話行立即消失,無需刷新頁面。
5、二次確認:刪除前彈出確認框,並提示操作不可恢復。
6、定位校驗:依據快照 store、側邊欄行序和標題校驗,用於定位目標會話。
7、低依賴:僅使用 Node 內置模塊與注入的官方服務,沒有第三方運行時依賴。
安裝與啓用¶
已覈實資料中的安裝命令如下,其中 <owner> 是資料給出的佔位符,未直接給出具體替換值:
npx -p @deepseek-ai/dsh dsh plugin --profile web add <owner>/dsh-session-delete
安裝完成後重啓 dsh web 生效。
由於刪除操作會直接處理 DSH 本地會話文件,插件以當前 dsh 進程權限運行;安裝前應檢查源碼與許可證。該插件許可證爲 MIT。
典型用法¶
1、在左側對話列表找到目標會話,點擊該會話行尾的 ··· 按鈕。
2、在「歸檔對話」下方點擊「刪除對話」。
3、在確認彈窗中點擊「確定」。
4、如果刪除的是運行中的會話,會先中止該會話的回覆,再執行刪除。
5、安裝完成後,需要重啓 dsh web 才能使用新入口。
適用場景與注意¶
適合需要從文件系統中移除會話日誌、而不只是從側邊欄隱藏會話的 DSH 場景。
需要注意以下邊界:
- 刪除操作不可恢復。
- 刪除請求僅接受來自
localhost的訪問。 sessionId嚴格校驗爲session-<uuid>格式。- 附件屬於跨會話共享資源,不隨會話刪除。
- 子代理會話獨立存儲,需要逐個操作。
- 菜單注入依賴官方客戶端 DOM 結構與菜單文本。
- 查詢/投影緩存不強制清理,官方緩存機制會在下次讀取時自愈。
鏈接¶
GitHub 倉庫:akira399/dsh-session-delete
目錄頁 URL 未在已覈實資料中明確出現。