READMESource: main@763ef68f
dsh-plugin-ade (@community/dsh-plugin-ade)
Hyprland-style drag-to-split multi-pane conversation layout for DeepSeek Harness Desktop.
Overview
dsh-plugin-ade transforms the DeepSeek Harness conversation area into a binary-tree multi-pane workspace without unmounting or losing live session state:
- Edge-Drop Splitting — Drag any session from the sidebar onto the left / right edge for a horizontal split, or top / bottom edge for a vertical split, with live drop-zone previews.
- Drag-to-Reorder & Swap — Drag any pane header onto another pane's center to swap positions, or onto any edge to re-split with live visual indicators.
- Scoped Split Orientation Toggle — Toggle horizontal (
⇄) and vertical (⇅) split orientation per immediate split pair without resetting sibling panes. - Flat Positioned Layout Engine — Panes render as flat sibling nodes (
computeTreeGeometry) so splitting, reordering, or resizing never unmounts active React trees or composer inputs. - Glassmorphism & Motion Lab Compatible — Preserves full backdrop-filter sampling across composers and slash command menus.
- Saved Layout Presets & Persistence — Pin named multi-pane layouts in a new Layouts sidebar section above Workspaces. Tap one-click presets (Side by Side, Stacked, Master + Stack, Quad Grid), save the current split under a custom name, or delete saved layouts. The active tree auto-restores on restart.
- Live Agent Status Pills — Each pane header shows a real-time RUNNING timer while the session is executing and an attention pulse for pending input, plus a READY completion pill when a reply is waiting.
Install
Via DSH CLI
dsh plugin add github:JessenReinhart/dsh-plugin-ade
From Local Checkout
git clone https://github.com/JessenReinhart/dsh-plugin-ade.git
cd dsh-plugin-ade
pnpm install
pnpm run build
Then install or enable @community/dsh-plugin-ade in your DeepSeek Harness profile.
Usage
- Create a Split: Drag a session row from the left sidebar over the conversation view. Hover near the left, right, top, or bottom edge to preview the split zone, then drop.
- Resize Panes: Drag the divider handle between any two split panes.
- Toggle Split Axis: Click the
⇄/⇅button in a pane header to flip that pane's immediate split between horizontal and vertical. - Reorder / Swap Panes: Drag a pane by its header bar into the center of another pane to swap, or onto an edge to re-dock.
- Close a Pane: Click
✕in the pane header to close the split slot and return the remaining tree space.
Development
# Build host + client bundles
node scripts/build.mjs
# Run layout engine unit tests
node --test src/layout/engine.spec.ts
License
MIT
No comments yet. Be the first to write one.