dsh-minimal-session-delete:DeepSeek Harness 會話永久刪除插件

前言

DeepSeek Harness(DSH)默認提供歸檔功能,但未提供刪除接口,導致會話日誌和緩存會在持久化層堆積。dsh-minimal-session-delete 是一個由 reverse-PAI 維護的插件,它補全了這條鏈路:通過側邊欄菜單、懸停按鈕和快捷鍵提供刪除入口,經過二次確認後,通過 Host 鑑權路由清理日誌、緩存和歸檔標記。

核心能力

  1. 刪除入口
    • 側邊欄會話行的 ... 菜單項中提供「刪除會話」選項。
    • 會話行懸停時顯示垃圾桶圖標。
    • 快捷鍵:桌面端 Ctrl/⌘ + Shift + D,瀏覽器端 Ctrl/⌘ + Alt D。
  2. 執行流程
    • 觸發二次確認對話框,顯示標題與會話 id 及不可恢復警告。
    • 通過 Host 路由刪除會話日誌、投影緩存行和歸檔標記。
  3. 安全機制
    • 支持 dryRun 模式,先預覽後執行。
    • 路徑穿越防護,使用正則白名單校驗。
    • 運行中的會話返回 409 狀態碼拒絕刪除。
  4. 輕量特性
    • 零依賴、零構建、配置 0。

安裝方法

使用 DSH 命令行工具安裝:

dsh plugin add dsh-minimal-session-delete

安裝後插件會自動進入 dsh.profile.bundles 並默認啓用,無需額外配置。

使用方式

  1. 界面操作:鼠標移到會話行點擊垃圾桶圖標,或點擊 ... 菜單選擇「刪除會話」。
  2. 快捷鍵:在主視圖打開會話後,使用桌面端 Ctrl/⌘ + Shift + D 或瀏覽器端 Ctrl/⌘ + Alt D。
  3. 腳本調用:
    curl -X POST 'http://<你的 DSH Web 地址>/api/dsh-session-delete' \
      -H 'content-type: application/json' --cookie '<DSH 會話 Cookie>' \
      -d '{"sessionId":"session-6f1c2f0e-3b7a-4a6e-9a1d-2c5b8f7d9e01","dryRun":true}'
返回 `ok: true` 表示成功,`code` 字段包含 `running`、`invalid-id` 等錯誤信息。

注意事項

  • 歸檔 ≠ 刪除:歸檔僅是隱藏會話,持久化層仍保留日誌。
  • 不可恢復:刪除操作不可逆。
  • 運行中拒絕:正在運行的會話無法被刪除。
  • 客戶端更新:安裝或更新插件後,需要刷新頁面或重啓應用。

參考資料

  • GitHub: https://github.com/reverse-PAI/dsh-minimal-session-delete
  • 目錄: https://www.skillhub.cn/plugins/reverse-PAI/dsh-minimal-session-delete
羽毛球分组比赛记分
小程序二维码

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

小夜