dsh-plugin-ade:Hyprland 式拖拽分屏的多會話佈局

前言

在 DeepSeek Harness Desktop 裏同時跑多個會話時,常見做法是在側邊欄來回切換標籤,或開多個窗口。會話一多,對比子智能體輸出、並排改 prompt 時,上下文切換成本會明顯上升。dsh-plugin-ade 面向同一套 DSH 進程內的對話區,把單塊會話視圖改成可拖拽分屏的二叉樹多窗格工作區,且分屏、重排、縮放時不卸載正在運行的 React 樹,也不丟 composer 裏的未發送輸入。下面介紹它是什麼、能做什麼,以及如何安裝與日常使用。

這是什麼

dsh-plugin-ade(npm 包名 @community/dsh-plugin-ade)由維護者 JessenReinhart 發佈,歸類爲 DSH 客戶端插件。一句話定位:爲 DeepSeek Harness Desktop 提供 Hyprland 風格「拖到邊緣即分屏」的多窗格對話佈局。它通過 Cordis patch 注入客戶端 UI(佈局、會話、工作區等模塊),在 Web 端立即生效。

核心功能

以下能力均來自項目 README 與 package.json 中的說明。

邊緣拖拽分屏與窗格操作

  • 邊緣投放分屏:從左側邊欄拖動任意會話行到對話視圖,靠近 左 / 右 邊緣爲水平分屏,靠近 上 / 下 邊緣爲垂直分屏,投放前會顯示實時 drop zone 預覽。
  • 拖拽重排與交換:拖動窗格標題欄到另一窗格 中心 可交換位置;拖到邊緣可重新分屏,並有視覺指示。
  • 局部切換分屏方向:窗格標題上的 ⇄ / ⇅ 只切換 當前這一層 父子分屏的橫豎方向,不會重置兄弟窗格。
  • 扁平佈局引擎:窗格以扁平兄弟節點渲染(computeTreeGeometry),分屏、重排、調整分隔條大小時 不卸載 活躍 React 樹與 composer。
  • 關閉窗格:標題欄 ✕ 關閉該分屏槽位,剩餘樹形空間由其它窗格佔用。

佈局預設與持久化

側邊欄在 Workspaces 上方新增 Layouts 區域:可一鍵套用 Side by Side、Stacked、Master + Stack、Quad Grid 等預設,將當前分屏樹保存爲自定義名稱,或刪除已保存佈局;重啓後自動恢復活動樹。此處還可開關 Auto-split Subagents。

子智能體與狀態展示

  • Subagent Stack Pane:首個子智能體對父窗格分屏一次;後續子智能體進入同一右側窗格內的 可滑動 chip 條,運行中的子智能體可自動跟隨,點擊 chip 即時切換且不 remount;chip 可彈出爲獨立窗格(總數上限 4);已完成的子智能體保留直至手動 dismiss。
  • Live Agent Status Pills:窗格標題顯示 RUNNING 計時、待輸入時的 attention 脈衝,以及回覆就緒時的 READY pill。

譜系圖與側邊欄層級(README 標註 NEW)

  • Lineage Graph & Layout Scoping:Blueprint 風格的會話與子智能體關係圖畫布;從當前分屏或已保存佈局打開時,可 Layout Only 限定爲佈局內窗格及其傳遞閉包子智能體,並在保存佈局組與 All 之間過濾。
  • Sidebar Subagent Hierarchy:側邊欄父會話帶 chevron,可展開查看內聯的子智能體會話列表。

其它

  • 與 Glassmorphism & Motion Lab 類主題兼容,composer 與 slash 菜單仍可做 backdrop-filter 採樣。
  • 倉庫附帶 DSH Cookie 維護腳本:npm run check-cookies、npm run clean-cookies,用於緩解 DSH 臨時端口 header 過大導致的 HTTP 431(「Web authentication failed」)。

安裝與啓用

插件在 DSH 配置裏以 @community/dsh-plugin-ade 啓用;package.json 要求 DSH 引擎 >=0.1.1-rc.1,許可證爲 MIT。安裝前建議瀏覽 GitHub 源碼與許可證;插件與 DSH 客戶端同進程運行,權限等同於當前 DSH 進程。

官方 CLI 安裝命令如下:

dsh plugin add github:JessenReinhart/dsh-plugin-ade

若從本地檢出開發構建,README 給出:git clone 後 pnpm install、pnpm run build,再在 DeepSeek Harness profile 中安裝或啓用 @community/dsh-plugin-ade(本文不展開 clone 流程)。

典型用法

README 中的可復現步驟如下。

  1. 創建分屏:從左側邊欄拖動會話行到對話視圖,在 左 / 右 / 上 / 下 邊緣懸停預覽分屏區,鬆手完成投放。
  2. 調整大小:拖動任意兩個分屏窗格之間的分隔條。
  3. 切換分屏軸:點擊窗格標題的 ⇄ 或 ⇅,翻轉該層 immediate split 的橫豎方向。
  4. 重排 / 交換:拖動窗格標題到另一窗格中心交換,或拖到邊緣重新 dock。
  5. 關閉分屏:點擊標題欄 ✕。

佈局預設與 Auto-split Subagents 在 Layouts 側邊欄區操作;子智能體 stack、譜系圖等進階能力見 README Overview 各條說明。

適用場景與注意

適合:需要在單窗口內並排或多格對比多個 DSH 會話、主會話與子智能體輸出,並希望佈局可保存、重啓恢復的智能體開發者。

注意:

  • 社區目錄(如 SkillHub 上的插件頁)爲獨立生態站點,與 DeepSeek / 幻方無官方從屬關係;安裝來源以 GitHub 與 dsh plugin add 爲準。
  • 不要編造未在資料中出現的配置項;除 README 與 package.json 外,本文未列出額外環境變量或 secret。
  • Cookie 腳本是倉庫內 npm script,僅在本地 checkout 且需排查 431 時使用,與 CLI 插件安裝路徑可能不同,按你實際部署方式執行。

結尾

dsh-plugin-ade 把 DSH 對話區變成可拖拽、可持久化的多窗格工作區,並在子智能體與譜系可視化上做了 stack 與 Layout 範圍隔離,適合多會話並行開發。進一步瞭解可訪問社區目錄頁與 GitHub 倉庫:

  • 目錄頁:https://www.skillhub.cn/plugins/JessenReinhart/dsh-plugin-ade
  • GitHub:https://github.com/JessenReinhart/dsh-plugin-ade
羽毛球分组比赛记分
小程序二维码

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

小夜