Introduction¶
By default, the DeepSeek Harness (DSH) sidebar workspace list is flat. When the number of workspaces grows, or when you need to distinguish them by project type or technology stack, this structure becomes less intuitive. The dsh-better-workspace plugin adds a two-tier folder system to this list, nesting it along two dimensions—“disk layer” and “name layer”—to make the workspace organization clearer.
Plugin Introduction¶
Name: dsh-better-workspace
Maintainer: KannaKuron
License: MIT
The plugin uses DSH’s standard slot mechanism to replace the sidebar browsing area with a hierarchical tree view. The tree structure is composed of two orthogonal parts:
1. Disk layer: Automatically nested by directory path.
2. Name layer: Uses the / characters in workspace names as virtual groupings.
Core Features¶
The plugin takes over the sidebar workspace list and provides the following capabilities:
-
Two-tier folder system
- Disk layer: Automatically nested by directory path (official workspace-tree semantics).
- Name layer: Uses the
/characters in workspace names for virtual grouping (disabled by default; can be enabled in settings). For example, a workspace namedweb/frontendis automatically grouped underweb.
-
Immediate grouping and regrouping
- Rename to group: After creating a workspace, directly rename it and add
/to place it in the corresponding group; you can also drag a workspace row into a group. - Context menu: Right-click any row (workspace, group, session, or session group) to rename, delete, fork, archive, or apply a “custom appearance.”
- Rename to group: After creating a workspace, directly rename it and add
-
Appearance customization
- Supports custom colors, glow intensity, font weight, shadows, font outline (enabled by default), and icons (exclusive to workspaces and workspace groups) at any hierarchy level.
-
Session hierarchy support
- Session names within a workspace also support hierarchical grouping using
/(e.g.,Test1/maintaining-two-plugins). - Session groups use secondary color schemes and have no folder icons, distinguishing them from workspace groups.
- Session names within a workspace also support hierarchical grouping using
-
View interaction
- Collapse/expand: Click a workspace row or session group row to collapse/expand its contents.
- Drag and drop: Supports reordering and moving into groups. During dragging, highlighting and drop-indicator lines are shown.
- Status breathing light: When the status indicator is collapsed and hidden, its glow bubbles outward and is displayed on the parent tree row.
-
Native capability compatibility
- Supports DSH official shortcuts: ⌥⌘K (search), ⌥⌘O (add workspace), ⌥⌘N (new session).
- The workspace selector on the new session page uses the same tree as the sidebar, with view options synchronized in real time.
-
Automatic configuration for new items (v0.25.0)
- After enabling “Automatic color + icon” in the settings card, newly created workspaces and sessions are automatically assigned built-in color palettes and icons, avoiding manual configuration one by one.
Installation and Enablement¶
This is a pure JavaScript plugin with no build-tool dependencies. After installation, DSH must be restarted for the plugin to take effect.
dsh plugin --profile web add dsh-better-workspace
Typical Usage¶
- Group a workspace: Rename a workspace to
web/frontend, and it will immediately appear in thewebgroup. - Batch rename: Right-click a group row, choose “Rename group,” and batch-update the name prefix of all workspaces in the group.
- Customize appearance: Right-click any row, choose “Custom appearance,” and adjust color, glow intensity, etc. in the popup card.
- Cross-client sync: In Settings → Plugin → Plugin Settings → “Better Workspace” card, you can enable “Cross-client sync” to manually exchange appearance and settings data between the Web client and desktop client.
Notes and Limitations¶
- Cross-workspace session dragging: Currently rejected; sessions must remain within their own workspace.
- Search filtering: Search filters local titles only (after flattening the two layers, matching is done per workspace); it has not yet taken over host content search.
- Flat view: The flat view is not taken over; the hierarchical tree is the view. When the sidebar is switched to “single list/by workspace,” the selector on the new session page falls back to a full title list.
- URL handling: The rule that URLs or slash-containing titles are not split into layers applies only to sessions newly created after this launch. Existing sessions or manually named
/grouping titles are not modified. - Restart required: DSH must be restarted after installation or configuration changes.
Summary¶
dsh-better-workspace introduces a two-tier folder system to solve the issue of disorganized workspace management in DSH. It provides flexible grouping through renaming and dragging, while preserving core experiences such as appearance customization and native shortcuts. If you need finer-grained management of multiple projects or sessions, this is a tool you can install and use directly.