DSH Plugins Marketplace

DSH Plugins

Plugins

/

Tools & Capabilities

/

dsh_workspace_switch

d

dsh_workspace_switch

Manifest valid

Per-workspace activation control: a dialog opened from the workspace row menu switches individual plugins, MCP servers, and skills on or off, and the host applies the choice in that workspace's own ag

UI (client)hasBundlePatch

dsh-workspace-switch

Per-workspace activation control for DeepSeek Harness: each workspace decides which plugins, MCP servers, and skills its sessions may use, and a dialog on the workspace row edits that decision.

English | 中文

What it does

Two halves, one plugin:

  • Host half (index.js, built to lib/index.js) reads the per-workspace configuration when an Agent is created and applies it to that Agent's own Cordis scope, so two Agents in two workspaces inside one harness process see different capabilities:
    • a disabled skill is shadowed in that scope by a same-name non-invocable registration, which removes it from the model's skill catalog;
    • a disabled MCP server has every mcp__<serverName>__* tool denied in that scope;
    • a disabled plugin has the tool names its entry declares denied in that scope. The same half serves the configuration routes the dialog uses.
  • Browser half (src/client/, built to lib/client.js) adds one row to a workspace's ... menu. It opens a dialog listing what the running composition offers under each category, with a switch per capability.

A workspace with no entry inherits the deployment's composition unchanged, so the plugin changes nothing until a workspace is configured.

Configuration

Two sources describe one workspace, in increasing precedence:

  1. <DSH_HOME>/workspace-switch.json, whose workspaces map is keyed by workspace directory;
  2. <workspace>/.dsh/workspace-switch.json, which replaces the shared entry for that workspace when it exists.
{
  "workspaces": {
    "E:\\my_project\\godot-game": {
      "plugins": { "mcp-godot-ai": { "enabled": false, "tools": ["mcp__godot-ai__run"] } },
      "mcp": { "godot-ai": { "enabled": false } },
      "skills": { "godot-scene-authoring": { "enabled": false } }
    }
  }
}

enabled: false switches a capability off for that workspace; an absent entry means enabled. A plugin entry also declares the tool names the plugin registers — the gate denies tools by name, so a plugin without tools has nothing to deny.

The dialog writes the document that currently answers for the workspace: the project file while one exists, the shared store otherwise. Output is published through a temp-file rename, so a reader never sees a half-written document.

Install

The plugin is a DSH bundle: add it to a profile and select it.

dsh plugin add link:/path/to/dsh_workspace_switch

then add dsh-workspace-switch to the profile's dsh.profile.bundles. A new bundle row loads at the next harness start.

Build

The browser half is a DSH client bundle and must be built; the repository toolchain is required (the plugin vendors its copy of the client build preset at scripts/tsdown.client.ts, which resolves the harness sources from the checkout it sits in).

# from a deepseek-harness checkout
pnpm exec tsdown --config dsh_workspace_switch/tsdown.config.ts   # or, inside the plugin: pnpm build
pnpm exec tsc -p dsh_workspace_switch/tsconfig.typecheck.json     # typecheck the browser half
node --test "tests/**/*.test.js"                                  # unit tests

lib/ is committed. The package's main and ./client both point into it, and a clone has neither the harness sources nor a build toolchain, so a build-from-source install (dsh plugin add github:…) would otherwise install a package with no entry points. Commit the rebuilt files with any change that alters them.

A standalone clone cannot run the build: the vendored preset imports the harness sources (../../packages/…, ../../scripts/…) that only exist inside a checkout. Build inside the checkout, then commit lib/ here.

Known limitations

  • Skills are gated, not unloaded — a disabled skill keeps its files on disk; only its catalog entry and loading are removed for that workspace.
  • A plugin needs declared tools — the gate denies tools by name, so switching a plugin off only removes what its entry names in tools.
  • The dialog lists what the Host can address — plugin rows come from the profile's plugin manager (or the read-only inventory); a capability the composition does not expose cannot be configured.

Licence

MIT.

Comments

Loading…

Similar plugins

dsh-mcp-servers-panel

by whiteS18

MCP server management panel in Settings: add, edit, enable/disable and delete servers across user and workspace scopes with form or JSON editing, and auto-register discovered MCP tools as native conve

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Sep 28, 2026

dsh plugin --profile web add dsh-mcp-servers-panel

by SanYe-SanJiu

Windows-only process control for the harness: a sidebar button that shuts DSH down through the host's own graceful exit path, an app-window / normal-tab switch on the Plugins card that rewrites the de

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Sep 24, 2026

dsh plugin --profile web add dsh-power-switch

by pure-craft

DeepSeek Harness plugin: see what your agent can actually reach — skills, MCP servers, system tools with true in-context state, and per-session / per-preset switches

UI & ExperienceManifest valid

★ 8

↓ 480/wk

MIT

TypeScript

Sep 30, 2026

dsh plugin --profile web add dsh-capability-panel

by SeanWang114514

Per-workspace memo/todo panel that auto-captures queued and running user instructions, marks preempted tasks as interrupted, and restores them to their previous state with one click.

Memory & ContextManifest valid

★ 0

MIT

JavaScript

Aug 27, 2026

dsh plugin --profile web add memo-notebook

by Max-Null

Skill and MCP management center for DeepSeek Harness: browse and toggle user/project skills, add/edit/remove MCP servers hot without restart, with live per-session status in the sidebar.

Manifest valid

★ 1

↓ 191/wk

MIT

TypeScript

Oct 6, 2026

dsh plugin --profile web add @max-null/dsh-skill-mcp-center

by functy23

DeepSeek Harness 的 MCP 服务与 Skills 管理器:面板里增删改 MCP 行、扫描导入其他 Agent 配置、管理 Skills(DSH Web 插件)

Tools & CapabilitiesManifest valid

★ 17

↓ 450/wk

MIT

TypeScript

Oct 6, 2026

dsh plugin --profile web add dsh-mcp-studio