DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

The-Focus-AI /

The-Focus-AI/dsh-plugin-sidebar-workspace-names

Verified

DeepSeek Harness sidebar plugin: shows the owning workspace name on a second line under each session title in the In one list view.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@36fd647f

Sidebar Workspace Names — DeepSeek Harness

See which workspace a session belongs to, without leaving the sidebar's In one list view.

┌──────────────────────────────────┐
│ Fix the sidebar labels        3h │
│ 📁 claude-usage-esp32            │
├──────────────────────────────────┤
│ Add the cost pill              2h │
│ 📁 focus-desk                    │
└──────────────────────────────────┘

The flat session list mixes sessions from every workspace, so a title alone does not say where the session lives. This plugin puts the owning workspace on a second line under the title, and keeps the full, untruncated name in the row's hover card.

What you get

  • In one list (View options → Group by → In one list) renders each session as a two-line row: title and relative time on top, the workspace name below.
  • Sessions that belong to no registered workspace read Ungrouped.
  • The automatic default workspace reads as a localized "Default workspace".
  • Grouped and Workspace Tree views are unchanged — their workspace headers already name the workspace.
  • Hovering a row shows the full workspace name in the hover card, even when the second line had to truncate a long name.

Install

From npm:

dsh plugin --profile desktop add dsh-plugin-sidebar-workspace-names

You can also install it from the Plugins page in the desktop app. Restart the profile and refresh the page once.

From a checkout instead (no build step, no dependencies):

git clone https://github.com/The-Focus-AI/dsh-plugin-sidebar-workspace-names
dsh plugin --profile desktop add ~/The-Focus-AI/dsh-plugin-sidebar-workspace-names

How it works

It is an ordinary Cordis client plugin bundle — no harness source is patched, forked, or monkey-patched:

  • sidebar.workspaces.session.row.action hosts the workspace chip.
  • sidebar.session.row.hover hosts the full name inside the hover card.
  • A small stylesheet turns flat-view session rows into two-line rows and scopes every rule to the flat list, so grouped views keep their shipped 32px rows.

client.js ships as plain JavaScript on purpose: the harness injects client plugin bundles into the page as a classic script, so the file reaches the JS engine verbatim. There is no build step and no runtime type stripping in the browser.

Known limits

  • Row DOM coupling. The chip is placed relative to ui-workspace's session row ([data-row-key="session:…"]) and the always-mounted row action strip. That is a decoration contract, not a public API; engines.dsh pins the tested range, and a harness change should get a plugin version bump.
  • :has() is required for the flat-view scoping (Chromium 105+, Safari 15.4+). Without it the chip simply stays hidden.
  • Fixed two-line height. Workspace names longer than the line ellipsize; the hover card carries the full name. Rows are 48px tall in the flat view.
  • Blank New Session rows have no action strip, so they keep the single-line height.
  • No visual test. The suite covers name resolution only; the layout is CSS against another package's DOM.

Development

mise trust
mise install
mise test          # node --test
npm pack --dry-run # verify the published file list

The package has no runtime dependencies and no build step.

License

MIT — see LICENSE.

—/ 5

No ratings yet

Verified DSH bundle

Commit 36fd647fd8ad

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout