DSH Plugins Marketplace

DSH Plugins

Plugins

/

Sessions & Messages

/

dsh-workspace-frontend

d

dsh-workspace-frontend

Manifest valid

Rebuilds the sidebar into a workspace / group / session tree with drag-to-group, per-row status and context rings, and resizable sidebars; the per-session cost column needs the dsh-claude-style plugin

UI (client)hasBundlePatch

Workspace Frontend for DeepSeek Harness

Rebuilds the left sidebar of DeepSeek Harness into a grouped workspace → group → session browser, and repaints every session row.

DeepSeek Harness / 工作区美化:把左侧栏重做成「工作区 → 分组 → 会话」,并让会话行显示状态、上下文与花费。

Features

Grouped sidebar

  • The plugin shadows the shipped sidebar.workspaces (priority: -1) with its own browser: workspaces, then user-defined groups, then sessions. Sessions in no group stay in an Ungrouped section at the end of each workspace; sessions in no workspace at all appear in a No workspace section.
  • Group actions, revealed on hover: new session, move up, move down, change colour (8-colour palette), rename (inline), delete (two-click confirm).
  • A session started from a group's + lands in that group; a collapsed group is expanded first.
  • Sessions drag between groups and across workspaces. Same-workspace drops rewrite the group assignment; cross-workspace drops are recorded as a display-level move (Host workspace membership is untouched).
  • Manual order: ↑/↓ on a group reorders groups, ↑/↓ on a session reorders it inside its group. A group ordered by hand stops auto-sorting by time.
  • Workspace actions: add workspace (native directory picker), delete workspace (two-click confirm). Deletion removes the Host registration only — sessions and files stay on disk, their rows fall into No workspace.

Session rows

  • Whole-row click opens the session.
  • Leading ring: blue = a question awaits you, yellow = approval / plan review pending, green = finished while unread. Colour changes play a 1 s exit plus 1 s enter sweep.
  • Context ring: green → red gradient by context usage, spins while the session runs; warns once at 20 % and again at 40 %.
  • Clock icon when the session has an active scheduled task.
  • Per-session cost and relative last-activity time; group and workspace headers show sums.
  • Row menu: open, rename, move to group…, archive / unarchive, copy session ID.

Layout

Resize handles on both sidebar boundaries (a thin line plus a rounded pull tab); drag to resize. Limits come from the Host: left 264–420 px, right up to 70 % of the viewport.

Install

Client-only plugin bundle — no dependencies, no build step.

# point the harness plugin manager at this directory
plugin_manager install_bundle  target: <absolute path to this directory>

Then refresh the page (Ctrl+R). The sidebar is rebuilt immediately and the Workspace entry appears in the sidebar icon column.

Group data is local to the browser: localStorage['dsh.session-groups.v1'] (sections, assignments, moves, orders). Nothing is written to the session log.

Compatibility

Built and verified against DeepSeek Harness 0.2.1-rc.3.

Extension points used:

  • Slots: sidebar.workspaces (shadowed, priority: -1), sidebar.panellist, main, sidebar.workspaces.session.menu.item, sidebar.session.row.leading, sidebar.session.row.hover, shell.overlay
  • Hooks: useWorkspaces, useSessions, useSessionStatus (pendingInteraction.kind, completionUnread), usePanelInfo
  • Services: uiWorkspace (openSession, openWorkspace + beforeOpen, startSession, archiveSession, unarchiveSession, pickDirectory), workspaces.create / .delete, sessions.using / .refreshProjections, layout.selectPanel, remote.schedule.catalog
  • Theme: --dsw-alias-* tokens only, each with a fallback colour. Skins that style the shipped browser by DOM class do not reach this list; token-level theming does.

Session cost is read from GET /dsh-claude-style/session-cost?id=<sessionId>, provided by the dsh-claude-style skin (cny in units of 1e-6 yuan). Without that skin the cost column shows —.

Limitations

  • Session order is plugin-local; the Host's own list order is never rewritten.
  • No content search in the browser, no workspace nesting, no drag reordering of groups (use ↑/↓).
  • The shipped row menu and hover card are not reused; this plugin renders its own.
  • No workspace may also list subagent sessions if the Host reports them in the session snapshot.

License

MIT

Comments

Loading…

Similar plugins

dsh-session-tree

by minhaoli

Enhanced session tree for the DSH sidebar (fork of ui-workspace): tag chips, group-by-tag, drag-to-move across workspaces, delete with backup.

Manifest valid

★ 0

MIT

JavaScript

Oct 17, 2026

dsh plugin --profile web add dsh-session-tree

by z-col

DeepSeek Harness web client plugin: group sidebar workspaces into a configurable three-level tree (分类→项目→会话). Sidecar YAML rules. dsh-plugin.

Development & InfrastructureManifest valid

★ 5

MIT

TypeScript

Aug 24, 2026

dsh plugin --profile web add dsh-workspace-groups

by ChrisLou-bioinfo

Show the workspace (project folder) on each session row in the flat, recency-sorted sidebar list

Terminal & ClientsManifest valid

★ 0

MIT

JavaScript

Oct 8, 2026

dsh plugin --profile web add dsh-workspace-badge

by KannaKuron

DSH web plugin: a hierarchical workspace tree for the sidebar — titles containing / group into virtual folders; the add-workspace flow gains a parent-group popup

UI & ExperienceManifest valid

★ 28

↓ 1.1k/wk

MIT

JavaScript

Oct 30, 2026

dsh plugin --profile web add dsh-better-workspace

by shinelon

Custom workspace groups for the DSH sidebar: group directories, drag to regroup/reorder, inline search and sessions, one-click official-view fallback.

UI & ExperienceDevelopment & InfrastructureManifest valid

★ 1

NOASSERTION

TypeScript

Oct 21, 2026

dsh plugin --profile web add @local/workspace-group-manager

by Knight-Zjy

DeepSeek Harness 侧边栏的工作区分类树:分类 > 工作区 > 会话(VS Code 风格)。Collapsible category tree for DSH workspaces.

UI & ExperienceManifest valid

★ 3

↓ 514/wk

MIT

JavaScript

Oct 23, 2026

dsh plugin --profile web add dsh-workspace-categories