dsh-session-folders:爲 DeepSeek Harness 會話添加文件夾層級

前言

DeepSeek Harness (DSH) 插件生態強調模塊化。在開發或調試過程中,會話數量增多後,直接通過列表管理變得低效。dsh-session-folders 插件爲 DSH 會話引入了一個獨立的文件夾層級。它不依賴核心工作區模型,而是通過持久化的註冊表來管理會話與文件夾的映射,適合需要按目錄歸檔和隔離項目記憶的場景。

核心功能

持久化註冊表

插件維護一個獨立的 DSH 存儲域來存儲文件夾定義和 sessionId 到 folderPath 的映射。這些數據在應用重啓後依然保留,不依賴於核心工作區模型。

非破壞性移除

移除文件夾不會刪除任何會話或其日誌文件。被移除文件夾內的會話會自動返回到收件箱('')。

管理界面

插件在「Session Folders」設置頁面中提供了文件夾管理能力:
* 創建、重命名、刪除文件夾。
* 將會話歸檔到指定文件夾。
* 每個會話列表項中包含「Move to folder…」操作。

記憶作用域鉤子

文件夾路徑被設計爲項目範圍記憶命名空間的自然鍵。通過 assignment[sessionId] 可以獲取會話所屬的文件夾路徑,從而實現基於目錄的記憶隔離(例如 .harvis/memory)。

安裝與啓用

在終端中執行以下命令安裝:

dsh plugin --profile web add github:Harzva/dsh-session-folders

安裝後,插件會自動加載其持久化註冊表和客戶端界面組件。

典型用法

  1. 自動歸檔:會話可以根據當前工作目錄(cwd)自動歸入對應的文件夾。
  2. 手動移動:在會話列表的操作菜單中選擇「Move to folder…」,將其移動到任意其他文件夾。
  3. 項目記憶隔離:在編寫代碼或處理任務時,利用 assignment[sessionId] 獲取的文件夾路徑作爲上下文,實現不同項目會話記憶的物理隔離。

注意事項

  • 側邊欄限制:當前版本不提供側邊欄的「group by folder」樹狀視圖。
  • 架構原因:DSH 的 sidebar.workspaces 區域負責會話列表,並不提供添加文件夾樹的內嵌插槽。因此,分組視圖需要通過核心插槽補丁或其他插件來實現,本插件僅負責文件夾註冊表與 UI 管理部分。
  • 記憶鍵值:文件夾路徑是構建項目級記憶命名空間的天然鍵值,這一點在集成其他依賴項目記憶的插件時需要注意。

總結

該插件通過持久化註冊表和記憶作用域鉤子,爲 DSH 會話提供了基礎的文件管理能力。它適合需要結構化組織會話和項目記憶的開發者。完整源碼與文檔可參考 GitHub 倉庫。

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

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

小夜