dsh-session-delete:爲 DeepSeek Harness 補上「刪除對話 + 回收站」

前言

DeepSeek Harness(DSH)桌面版裏,會話側欄默認更偏向「歸檔」:不想看的對話可以歸檔,但缺少一條明確的「刪掉這條對話」路徑。若你習慣像其它工具一樣清理列表、又希望誤刪還能找回,原生能力就不夠用了。

下面介紹社區插件 dsh-session-delete(npm 包名 dsh-plugin-session-delete)。它在對話菜單裏增加紅色 刪除,並把刪除做成可恢復的回收站,而不是立刻銷燬磁盤上的會話日誌。

這是什麼

維護者 GitHub 用戶 3542967095 維護的開源客戶端插件,分類爲 客戶端,當前版本 1.1.1(見倉庫 package.json),許可證 MIT。

定位一句話:給 DeepSeek Harness 增加「刪除對話 + 回收站」——菜單刪除、側邊欄預覽、恢復與徹底刪除。插件代碼與對話數據分離;刪除對話不會影響已安裝的其它插件。

實現上按 DSH 0.2.1-rc.3 的 Slot 與 /api 契約編寫,純 JavaScript,無構建步驟。

核心功能

能力 說明
刪除對話 對話行「…」→ 紅色 刪除,確認後移入回收站
回收站預覽 側邊欄底部 回收站 (n),顯示已刪除條數
恢復 將會話日誌與投影緩存移回原路徑,並儘量恢復 Workspace 歸屬、置頂/歸檔狀態
徹底刪除 單條永久刪除,需二次確認
清空回收站 一次清空全部,需二次確認
安全判斷 有進行中回合的對話拒絕刪除;空閒但已打開的對話可刪;文件佔用時重試;失敗儘量回滾
獨立存儲 插件在插件目錄,刪除數據在 ~/.dsh/trash/,互不影響

DSH 原生只支持歸檔,不支持刪除會話;本插件補上刪除,並把刪除做成可恢復流程。

安裝與啓用

前置條件

  • DeepSeek Harness 桌面版(按 0.2.1-rc.3 的 Slot 與 /api 契約);
  • 插件目錄可寫;
  • 默認 profile:%USERPROFILE%\.dsh\profiles\desktop。

不要把插件放在 S:\Deepseek Harness\ 安裝目錄內——Harness 更新會整體替換該目錄。推薦例如 S:\DSH-Plugins\session-delete。

方式 B:獨立安裝(README 推薦)

  1. 將倉庫文件夾放到插件目錄,例如:
S:\DSH-Plugins\session-delete
  1. 雙擊 install.cmd,或在 PowerShell 中執行:
powershell -ExecutionPolicy Bypass -File .\install.ps1
  1. 若 Harness 未自動加載,刷新頁面(Ctrl+R)或重啓 Harness。

卸載:

powershell -ExecutionPolicy Bypass -File .\uninstall.ps1

方式 A:統一插件管理器(可選)

若插件根目錄有 install-plugin.cmd:

cd "S:\DSH-Plugins"
.\install-plugin.cmd session-delete

安裝器會校驗 package.json、lib/index.js、lib/client.js,在 profile 的 node_modules 建立指向插件目錄的 junction,寫入 cordis.patch.yml 中的 # >>> dsh-plugin:session-delete 塊,並更新 plugins.json。只建立 junction,不把代碼複製到 C 盤。

方式 C:手動安裝

在 profile 的 node_modules 建立 junction,並在 cordis.patch.yml 末尾加入 README 中的 session-delete 配置塊,然後刷新或重啓。具體命令與 YAML 片段見 GitHub README。

典型用法

刪除一個對話

  1. 打開對話行右側 「…」;
  2. 點擊紅色 刪除;
  3. 確認 移入回收站。

對話從側邊欄消失並進入回收站,頁面會自動刷新。只有正在運行(有進行中回合)的對話不能刪除;其它對話在生成時,刪除空閒對話不受影響。

查看、恢復與清空

  1. 點擊側邊欄底部 回收站 (n);
  2. 對單條選擇 恢復 或 徹底刪除(徹底刪除需再點一次確認);
  3. 清空回收站 同樣需二次確認,清空後不可恢復。

恢復成功後頁面刷新,對話回到列表。回收站不會自動清理,需手動徹底刪除或清空。

數據存放與安全

回收站目錄:

%USERPROFILE%\.dsh\trash\session-delete\
└─ 20261026-223927-xxxxxxxx\
   ├─ meta.json
   ├─ session\
   └─ projcache\

刪除使用同卷 rename,不復制大文件。會移動會話 JSONL 目錄、投影緩存及 Workspace/置頂/歸檔引用;不會動其它對話、plugins/ 下插件代碼、子智能體會話(目前不遞歸)或已導出文件。

Host 路由走 DSH 自帶 /api 瀏覽器會話通道,例如 POST /api/session-delete 移入回收站、GET /api/session-delete/trash 列表等。插件以 Harness 當前進程權限讀寫文件,安裝第三方插件前請先審查源碼與許可證。

適用場景與注意

適合:需要在 DSH 側欄主動清理會話、又希望保留「誤刪可恢復」緩衝期的桌面用戶。

務必注意:

  • 回收站不自動過期;徹底刪除或清空後無法恢復。
  • 若刪除後又創建了同 id 的新會話,恢復可能提示原目錄已存在,需先處理現有目錄。
  • 子智能體會話不會隨主對話遞歸刪除;搜索裏「已歸檔恢復行」沒有「…」菜單(README 已知限制)。
  • 大版本升級 DSH 後可能需要插件適配;原 Workspace 目錄不存在時,恢復後可能無法自動掛回。

菜單或回收站入口未出現時:先 Ctrl+R,檢查 junction 與 cordis.patch.yml 中的 dsh-plugin:session-delete 塊,必要時重啓 Harness。

結尾

dsh-session-delete 在不動 Harness 核心的前提下,用 Slot 菜單 + 側邊欄回收站補上了「可恢復刪除」這一環,數據落在 ~/.dsh/trash/session-delete/,與插件目錄分離。

SkillHub 等爲社區插件目錄,與 DeepSeek / 幻方無官方從屬關係;安裝與使用以倉庫 README 爲準。

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

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

小夜