DSH Plugins Marketplace

DSH Plugins

Plugins

/

UI & Experience

/

dsh-plan-switch

a

dsh-plan-switch

Manifest valid★ 6

One-click enter/exit Plan mode for the DSH web input bar, a quick-click shortcut for /plan

UI (client)hasBundlePatch

dsh-plan-switch 📋

English | 简体中文

License: MIT

Awesome DSH Plugin

A one-click enter/exit Plan mode button for the DSH web input bar (a quick-click shortcut for /plan) — a plugin for DeepSeek Harness (dsh) web.

Unofficial project: independently developed and maintained by a community member, not an official DeepSeek product.

Screenshot

dsh-plan-switch plan button in the input bar

The checklist icon button at the left end of the input tool row (official DSH design tokens, follows dark/light theme).

Features

  • One-click enter/exit Plan mode: a checklist icon button at the left end of the input tool row; clicking it runs the official /plan toggle command.
  • Hides while Plan mode is active: the button hides itself and the official plan card takes over the status display — there is never a duplicated indicator.
  • Pending-switch guard: while a /plan toggle is queued, the button is disabled (the same "switching" semantics as the official plan chip), so a stray click can't reverse the switch.
  • Live state: the button follows the plan state through the official projection, so changes from any entry point (/plan command, official chip, agent switching mid-run) are reflected in real time.

Install

Official bundle install (one line):

dsh plugin --profile web add "github:a903067276-rgb/dsh-plan-switch#main"

Restart dsh web after installing (bundle layers are composed at startup). Requires pnpm on PATH (dsh plugin forwards to pnpm).

Manual mount (fallback): see docs/install.md — symlink into ~/.dsh/profiles/web/node_modules/ plus a single entry in ~/.dsh/cordis.patch.yml, then restart.

Usage

A checklist icon button appears at the left end of the input tool row (official DSH design tokens, follows dark/light theme). Click it to enter plan mode — the same as typing /plan. While plan mode is active the button hides itself: the official plan card takes over the status display, so there is never a duplicated indicator; while a /plan toggle is pending the button is disabled, so a second click can't reverse the switch.

Platform support

PlatformStatus
macOS✅ fully tested (development environment)
Linux⚠️ expected to work (pure frontend button, no platform dependency), untested
Windows⚠️ expected to work (pure frontend button, no platform dependency), untested

Requirements

  • DSH web >= 0.1.0-rc.6 (run with dsh web) — the code calls commands.execute with the 3-argument contract (rc.8+) and auto-degrades to the 2-argument one on rc.6/rc.7
  • Version compatibility:
  • Maintenance policy: this plugin keeps evolving with the latest DSH releases; compatibility with older DSH versions is best-effort only and not guaranteed going forward.
Your DSH versionInstall thisNote
0.1.0-rc.6 and newer (incl. 0.1.1-rc.1/rc.2)main (v0.3.2+)Best effort — 3-arg call with auto-degrade to 2 args on rc.6/rc.7 (verified locally on rc.6/rc.8, not guaranteed)
0.1.5-rc.1main (v0.3.2+)✅ Verified: the official slot catalog still declares conversation.input.left (occupants: [], replaceRisk: none) — no migration needed; the official Plan chip only exits plan mode, and the official README states there is deliberately no inactive affordance (which this plugin provides)
0.1.0-rc.8 and newer (conservative)v0.3.1 — dsh plugin add github:a903067276-rgb/dsh-plan-switch#v0.3.1Last build without the degrade logic
0.1.0-rc.6 – 0.1.0-rc.7 (conservative)v0.3.0 — dsh plugin add github:a903067276-rgb/dsh-plan-switch#v0.3.02-argument commands.execute contract
  • No host-side setup: the host half is a no-op — the whole plugin is a client-side button that runs the official /plan command, so nothing extra is required on any platform.

How it works

  • Host (lib/index.js): no behavior — this is a pure UI plugin; the client half is discovered through the dsh.client declaration in package.json (exports["./client"]).
  • Client (lib/client.js): registers the checklist icon button in the conversation.input.left seat using official DSW design tokens (follows dark/light theme); reads plan state live through useProjection("plan"); clicking executes the official /plan command via ctx.remote.commands.execute(sessionId, "/plan", []) — the whole flow stays on the official command chain.
  • State handling: the effective plan state mirrors the official PlanChip algorithm (pending ? !active : active). While plan mode is active the button returns null (hidden — the official plan card owns the indicator, no duplicate); while a toggle is pending the button is disabled so a second click can't reverse the switch; command failures turn the button error-colored with the message in its tooltip.

Notes

  • Pure client-side: no host routes, no file writes, no stored data.
  • Restart dsh web after installing or updating (bundle layers are composed at startup); client-side edits apply on a page refresh.

Development

  • Source: lib/index.js (host side, no-op), lib/client.js (web injection)
  • Workflow: edit locally → push to main → pnpm update to verify the install

License

MIT

Comments

Loading…

Similar plugins

dsh-mode-switch

by Yaya716

Persistent one-click plan/build mode toggle for DeepSeek Harness Web: switches the session plan state through the built-in /plan command.

Manifest valid

★ 0

JavaScript

Aug 20, 2026

dsh plugin --profile web add @local/dsh-mode-switch

by Nanmu-del

Persistent plan-mode toggle button in the DSH Web composer: a two-state control (Plan / Plan ×) that turns plan mode on and off, replacing the shipped show-only-when-active badge.

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Sep 8, 2026

dsh plugin --profile web add @dsh-external/dsh-plan-toggle

by lzxcs

Swap the web UI composer shortcuts: Ctrl/Meta+Enter inserts a newline, Shift+Enter sends.

Sessions & MessagesManifest valid

★ 0

MIT

JavaScript

Aug 26, 2026

dsh plugin --profile web add dsh-enter-swap

Plan / Build mode switcher for DeepSeek Harness: a composer dropdown plus a default-mode setting for new sessions.

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

dsh plugin --profile web add dsh-plan-build-mode

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

Oct 21, 2026

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

by Yaaaaaaa233

On-demand planning for DeepSeek Harness: execute simple tasks directly and call a configurable planning model for complex ones.

Manifest valid

★ 0

MIT

JavaScript

Oct 2, 2026

dsh plugin --profile web add dsh-plan-and-execute