dsh-sess:DeepSeek Harness 會話管理與清理插件

前言

DeepSeek Harness (DSH) v0.1.2-alpha.5 原生支持重命名、分叉和歸檔會話,以及重命名或刪除工作區註冊。然而,它缺乏兩個關鍵功能:永久刪除會話,以及在歸檔後重新管理會話(例如重命名或刪除歸檔的會話)。dsh-sess 插件填補了這些空白。

插件簡介

dsh-sess 是 DeepSeek Harness 的一個全局會話管理插件。它通過原生 Web UI 提供側邊欄會話刪除和工作區歸檔管理(重命名、恢復、刪除)。它通過官方 Profile Bundle + Cordis 機制掛載到 profile,並且絕不修改 DSH 源碼。

核心功能

  • 會話列表與查詢:在“所有會話”標籤頁中顯示會話列表。它反映了側邊欄投影,顯示標題、活動時間、工作區、運行/空標誌。
  • 會話識別與元數據:顯示持久化標題(回退到 ID)、工作區隸屬關係、歸檔狀態和活動時間。
  • 永久刪除:在“所有會話”標籤頁和每個側邊欄會話行的菜單中提供“刪除會話”選項。此操作僅適用於冷會話(未在運行進程中的會話),並拒絕正在進行的會話(agent-busy)。
  • 歸檔會話管理:在“已歸檔”標籤頁中列出歸檔會話,並允許重命名和刪除它們。
  • 會話持久化與恢復:存在性檢查通過官方 ctx.sessionPersistence.list() 進行。刪除操作通過官方 locate() 進行。DSH 重啓後,每個會話變爲冷會話並可被刪除。
  • 工作區關聯:顯示工作區標題。刪除操作通過官方 workspaceRegistry 分離 API 釋放工作區會計。
  • 異常會話安全處理:拒絕格式錯誤的 ID;對未知會話返回 session-not-found;拒絕運行中的會話;在接觸文件之前拒絕不安全的工件路徑。

安裝與啓用

此插件針對 Web UI,並要求 DSH v0.1.2-alpha.5 和 Node.js ≥ 20。

安裝到運行 Web UI 的 profile:

dsh plugin --profile web add dsh-sess

安裝後,停止 dsh web 並重新啓動。設置頁面現在包含一個“會話管理器”部分。

使用方法

  1. 打開設置:打開 設置 -> 會話管理器。
  2. 管理所有會話:
    • “所有會話”標籤頁顯示所有非子代理會話。
    • 正在運行的會話已標記,無法刪除。
    • 在會話行菜單中,選擇 歸檔 以將其移動到“已歸檔”標籤頁。
  3. 管理歸檔會話:
    • 切換到 已歸檔 標籤頁。
    • 使用行內編輯器 重命名 歸檔會話。
    • 使用確認流程 刪除 歸檔會話。
  4. 刪除冷會話:
    • 切換到“所有會話”標籤頁。
    • 找到一個冷會話(未標記爲運行)。
    • 在行菜單中選擇 刪除會話。
    • 確認刪除。

注意事項

  • 不支持取消歸檔:官方工作區歸檔集是單向的。歸檔的會話無法恢復。
  • 拒絕運行中的會話:正在運行的會話無法刪除以避免損壞。關閉會話或重啓 DSH(這會使每個會話變爲冷會話)後再次嘗試。
  • 子代理不顯示:子代理會話屬於父會話,因此不在此處顯示。
  • 側邊欄延遲:側邊欄更新可能需要刷新或重啓 DSH 以進行協調。
  • 孤立歸檔標記:孤立歸檔標記是不活躍的,從不渲染。
  • 僅限 Web UI:此插件僅針對 Web UI。

結語

dsh-sess 提供了 DSH 原生管理流程中缺失的清理和重新管理能力。它嚴格依賴官方 API,確保與 DSH 核心保持兼容。

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

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

小夜