kagurazakayashi/dsh-delete-session:DeepSeek Harness Web 插件,用於會話刪除

前言

在 DeepSeek Harness(DSH)的工作流中,會話管理是日常操作的一部分。當不再需要某個會話時,通常需要通過文件系統或特定的界面操作進行清理。對於習慣使用 Web 界面的開發者來說,直接在列表中刪除會話能節省時間。

dsh-delete-session 插件正是爲了解決這個痛點。它不依賴額外的配置文件修改,而是通過註冊官方插槽,將“Delete session”選項直接集成到會話行的菜單中。

這是什麼

這是一個 DeepSeek Harness Web 插件,由 kagurazakayashi 維護。它旨在爲 Web UI 提供快速且徹底的會話刪除能力。

該插件通過以下方式實現功能:
* 註冊一個“Delete session”菜單項到會話行的菜單插槽中。
* 註冊一個配置卡片到官方的 plugins.bundle.config 插槽中,用於管理刪除確認策略。
* 提供三種確認模式,以適應不同的安全需求。

核心功能

  1. 菜單集成
    插件在會話行的 ... 菜單中註冊了“Delete session”選項。在默認配置下,該選項會出現在“Archive session”下方。

  2. 三種確認模式
    用戶可以通過插件設置選擇刪除時的確認方式:

    • click-again(默認):點擊後變爲警告狀態,需再次點擊才執行刪除。
    • dialog:彈出確認對話框。
    • instant:無確認,點擊即刪除。
  3. 兩步刪除流程(默認模式)
    在默認的 click-again 模式下:

    • 第一次點擊:菜單項變爲紅色警告狀態,提示“再次點擊刪除”。
    • 第二次點擊:調用刪除接口,刷新列表。
    • 超時/失敗:如果在 8 秒內未完成第二次點擊,狀態會自動恢復。
  4. 運行會話保護
    插件會檢查會話狀態。如果會話正在運行(Agent 狀態不是 idle),刪除請求會被拒絕,返回 HTTP 409。這是爲了防止正在寫入的日誌文件被破壞。

  5. 配置持久化
    插件的設置通過官方插件管理器保存,寫入到 cordis.patch.yml 的 id: delete-session 行的 config: 字段中。

安裝與啓用

安裝該插件需要執行以下命令:

dsh plugin --profile web add @kagurazakayashi/dsh-delete-session

安裝完成後,啓動 Web 服務:

dsh web

重啓服務並刷新頁面後,在任意會話行的菜單中即可看到“Delete session”選項。

典型用法

默認情況下,插件使用兩步確認模式。操作步驟如下:

  1. 在會話列表中,點擊對應會話行的 ... 按鈕。
  2. 在彈出的菜單中,點擊“Delete session”。
  3. 菜單項變爲紅色警告狀態,再次點擊該選項。
  4. 會話被刪除,列表刷新。

若要更改確認模式,需通過插件的配置卡片進行設置。該卡片位於側邊欄的 Plugins 頁面中,在已安裝列表中找到該插件並進入詳情頁,展開配置卡片即可選擇模式。

注意事項

  • 運行中的會話無法刪除:如果會話正在處理任務,插件會返回 HTTP 409 錯誤,並顯示錯誤提示。只有狀態爲 idle 的會話可以刪除。
  • 閒置但打開的會話可刪除:即使用戶切換了會話,只要會話沒有處於運行狀態,通常仍可被刪除。
  • 不修改核心:該插件不會修改 DSH 核心安裝或補丁核心文件,它是完全通過官方插件機制實現的。

結語

dsh-delete-session 插件通過標準化的插槽註冊和可配置的確認機制,爲 DSH Web 用戶提供了更便捷的會話清理手段。對於需要頻繁管理會話的用戶來說,這是一個實用的工具。

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

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

小夜