# đ˛ dsh-workspace-tree
English | įŽäŊ䏿
> **Virtual Session Folder Grouping, Move-to-Folder Menu, and In-App Visual Directory Browser for DeepSeek Harness (DSH).** [](LICENSE) [](https://github.com/pipipigu/dsh-workspace-tree) [](https://www.typescriptlang.org/) [](https://vitest.dev/) --- ## đ¸ Visual Previews ### 1. Sidebar Overview & Core Features  --- ### 2. In-App Visual Directory Browser & Workspace Creator  --- ### 3. Precision Click-to-Move Folder Menu  --- ## đ Key Features - **đ Virtual Session Folders** - **Zero Filesystem Pollution**: Never moves or modifies underlying conversation logs or physical directories. Metadata is atomically persisted at `.dsh/workspace-tree.json`. - **Multi-Workspace Stability**: Independent classification and pin queue per workspace. Folders remain persistent and stable across workspace switches. - **Full Folder Lifecycle**: Create, inline rename (double-click), custom color badge, and delete (internal sessions safely fallback to uncategorized). - **â Folder-Scoped Session Creation** - Hover on any folder and click **`[+]`** to start a new conversation **directly inside that targeted folder** with atomic SessionId binding, avoiding race conditions. - **đ Active Task Banner & Read-to-Dismiss** - **Compact 28px Top Capsule**: Pins active running tasks and unread completed conversations at the top of the sidebar. - **Smooth Lifecycle Transition**: Pulsing blue dot during generation -> persistent green `[Unread]` badge when completed in background -> automatically dismissed upon reading. - **Deep-Jump & Auto-Expand**: One-click navigation that automatically expands the parent workspace and folder. - **đ Precision Move-to-Folder Dropdown Menu** - **Zero Misclicks**: Replaced awkward sidebar drag-and-drop with a crisp, reliable click-to-move dropdown menu. - **Instant Categorization**: Quick folder selection or inline new folder creation; dedicated eject button inside folders to return sessions to uncategorized. - **đī¸ In-App Visual Directory Browser & Workspace Creator** - **One-Click Visual Adoption**: Click **`[+]`** on the sidebar header to open a native-feeling "Select Workspace Directory" modal dialog. - **Full Hierarchy Navigation**: Home directory jump, breadcrumb navigation, single-click selection, double-click/chevron drill-down, and up-level button. - **Inline Folder Creation & Hidden Files**: Create new subdirectories directly in the dialog and toggle hidden files (`.config`, etc.). - **Direct Path Editing**: Click the pen icon to switch to raw path typing/pasting. - **Zero Slot Conflicts**: Self-contained host RPC and UI, completely bypassing DSH internal slot conflicts with 100% stability across Web and Desktop. - **đ Session Pinning, Inline Rename & Pagination** - Pin important sessions to the top of the workspace. - Double-click any session title to activate inline renaming. - Displays top 10 sessions by default with an expander for remaining items. - **đ¨ Native Single Slot Shadowing** - Seamlessly shadows the native `sidebar.workspaces` slot with `priority: -10`, blending with DSH dark/light color schemes (`--dsw-*`). - Pure SVG vector icons with zero emoji clutter. - **⥠0ms Reactive Engine (Version Snapshot)** - Powered by `useSyncExternalStore` with immutable version increment snapshots, ensuring instant 0ms UI re-renders on any action. --- ## đĻ Installation ### Option A: Install from GitHub (Recommended) Run the following command in your terminal: ```bash dsh plugin --profile web add github:pipipigu/dsh-workspace-tree ``` Restart your DSH Web instance (or refresh the browser) to enjoy! ### Option B: Local Development (Link Mode) ```bash # 1. Clone repository git clone https://github.com/pipipigu/dsh-workspace-tree.git cd dsh-workspace-tree # 2. Install dependencies & build pnpm install pnpm build # 3. Link to DSH Web Profile dsh plugin --profile web add link:$(pwd) ``` --- ## đī¸ Architecture & Data Flow  --- ## đ ī¸ Development & Commands ```bash # Install dependencies pnpm install # Type checking (0 errors) pnpm typecheck # Unit tests (Vitest) pnpm test # Production build (generates lib/index.js & lib/client.js) pnpm build ``` --- ## đ License This project is licensed under the [MIT License](LICENSE).