DeepSeek Harness Web GUI 會話歸檔插件

前言

DeepSeek Harness (DSH) Web GUI 採用插件化架構。DSH 原生提供了會話歸檔功能 (archiveSession),但缺少對已歸檔會話的後期管理能力,例如重命名、還原和刪除。@crack/dsh-archive 插件旨在補齊這一缺失的閉環,爲 DSH Web GUI 提供完整的歸檔會話管理能力。

核心功能

插件在側邊欄新增了歸檔入口,並在歸檔視圖中實現了以下能力:

  • 入口與視圖:在“添加工作區”按鈕右側新增圓形歸檔按鈕(28px)。點擊後,原工作區列表區域被歸檔視圖覆蓋。歸檔視圖按工作區分組,支持摺疊,列表按時間降序排列。
  • 會話操作:每行會話 Hover 出現三點菜單,支持:
    • 重命名:使用原生彈窗,支持中文輸入法保護。
    • 還原:將歸檔會話恢復至原工作區位置。
    • 刪除:通過原生確認彈窗執行,移除對應的日誌文件且不可恢復。
  • API 接口:提供 REST 接口供外部調用:
    • GET /plugins/@crack/dsh-archive/api/archived:獲取歸檔會話列表。
    • POST /plugins/@crack/dsh-archive/api/rename-session:重命名會話。
    • POST /plugins/@crack/dsh-archive/api/unarchive:還原歸檔會話。
    • POST /plugins/@crack/dsh-archive/api/delete-session:刪除歸檔會話。

安裝與啓用

安裝該插件需鏈接本地包並註冊配置。

  1. 鏈接本地包到 dsh web profile(一次性操作):
    dsh plugin --profile web add "link:E:\path\to\dsh-archive"
  1. 在 profile patch 中註冊插件:
    • 編輯 C:\Users\<you>\.dsh\profiles\web\cordis.patch.yml。
    • 追加配置:
        - insert:
            - id: archive
              name: '@crack/dsh-archive'
  1. 重啓 dsh web 服務。

開發與構建

項目使用 Node.js 和 pnpm 構建。構建完成後,瀏覽器支持自動熱替換。

pnpm install          # 安裝構建依賴
pnpm run build        # 構建宿主端與瀏覽器端代碼
pnpm run typecheck    # 類型檢查

開發時,可編輯以下文件:
* src/client/skin.css:歸檔視圖樣式。
* src/client/index.ts:瀏覽器端邏輯。
* src/index.ts:宿主端 API 路由註冊。

卸載

卸載需清理插件註冊和配置文件。

  1. 從 profile 中移除插件:
    dsh plugin --profile web remove @crack/dsh-archive
  1. 刪除 cordis.patch.yml 中的 archive 註冊行。
  2. 重啓 dsh web。

注意事項

  • 數據安全:歸檔會話的刪除操作會移除日誌文件,且不可恢復,操作前請確認。
  • 權限檢查:插件以當前 DSH 進程權限運行,安裝前建議檢查源碼與許可證。
羽毛球分组比赛记分
小程序二维码

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

小夜