DSH Pin-Sessions:固定側邊欄會話以快速訪問

在 DeepSeek Harness (DSH) 的日常使用中,頻繁重複的工作流需要頻繁切換會話。當側邊欄會話列表較長時,快速定位活躍會話變得困難。fallow5/dsh-pin-sessions 插件通過將活躍會話固定到側邊欄頂部並集中管理歸檔會話,解決了這一導航問題。

插件定位

這是一個 DSH web 插件,允許用戶將活躍會話固定到側邊欄頂部,並提供歸檔面板以管理被隱藏的會話。

核心功能

  1. 固定與取消固定

    • 將會話固定到側邊欄頂部,同時從工作區瀏覽器中隱藏該會話。
    • 取消固定會將會話恢復到工作區瀏覽器中。
  2. 歸檔面板

    • 提供設置面板用於管理歸檔會話。
    • 支持批量刪除、逐行恢復、按工作區分組以及每頁 20 條的分頁顯示。
  3. 上下文菜單集成

    • 通過 @baihejiangnan/dsh-session-context-menu 擴展右鍵菜單,提供固定/取消固定的操作選項。
  4. 設計邏輯

    • 固定即歸檔:固定操作調用 workspaceRegistry.archiveSession() 將會話從工作區瀏覽器中隱藏;取消固定調用 unarchiveSession() 恢復會話。

安裝與構建

在安裝前,請確保已安裝 Node.js (>=20) 和 pnpm。

cd dsh-pin-sessions
pnpm install
pnpm run build

安裝命令:

dsh plugin --profile web add /path/to/dsh-pin-sessions

依賴與架構

依賴項

該插件依賴以下包:
* 運行時依賴:@baihejiangnan/dsh-session-context-menu(用於上下文菜單)。
* DSH 核心包:@deepseek-ai/cordis、@deepseek-ai/dsh-storage-domain、@deepseek-ai/dsh-typert-protocol、@deepseek-ai/dsh-client-runtime、@deepseek-ai/dsh-client-ui-slots、@deepseek-ai/dsh-client-ui-sidebar、@deepseek-ai/dsh-client-locale、@deepseek-ai/dsh-client-ui-primitives、@deepseek-ai/schemastery。

架構設計

插件採用標準的 DSH 插件拆分結構:
* 主機側:負責存儲管理(pin_sessions 域)和 TYPERT 遠程服務定義(PinsRuntime)。包含 8 個 TYPERT 方法:list、pin、unpin、toggle、isPinned、deleteSessions、listArchived、unarchiveSession。
* 客戶端側:負責 UI 渲染。通過 window.__ModuleLoader__.load 包裝器加載,並將 PinnedSection(固定區)和 ArchiveSection(歸檔區)渲染到側邊欄中。

注意事項

  1. 服務端變更:主機側代碼變更後,需要重啓 DSH 服務器才能生效。
  2. 客戶端變更:客戶端代碼變更後,需要刷新瀏覽器頁面才能生效。
  3. 前置依賴:必須安裝 @baihejiangnan/dsh-session-context-menu 才能使用右鍵菜單集成功能。

總結

該插件通過將活躍會話固定到頂部並提供集中的歸檔管理界面,優化了 DSH 側邊欄的交互體驗。適合需要頻繁在多個特定工作流之間切換的用戶使用。

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

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

小夜