dsh-plugin-toggle
Manifest valid★ 4DSH plugin switchboard: Settings tab with descriptions, fuzzy search, and runtime start/stop
dsh-plugin-toggle
English | 中文
A DeepSeek Harness (DSH) plugin switchboard for the web GUI.
Open Settings → Plugins → Plugin Switch. Every loaded plugin is a card with:
- a short description (from that package's
package.jsondescription) - enabled / disabled + fiber phase (running / pending / failed / …)
- Start / Stop (runtime only — does not rewrite
cordis.yml) - fuzzy search (name / module / id / description; subsequence match)
Core / surface plugins (webserver, connection, session, agent, …) are marked Core and cannot be stopped from this UI, so the page cannot take itself down.
Install
dsh plugin --profile web add github:DamonKoy/dsh-plugin-toggle
Restart dsh web, then open Settings → Plugins → Plugin Switch.
Or add the repo as a profile dependency and include the bundle:
{
"dependencies": {
"dsh-plugin-toggle": "github:DamonKoy/dsh-plugin-toggle"
},
"dsh": {
"profile": {
"bundles": ["dsh-plugin-toggle"]
}
}
}
Then pnpm install in the profile directory and restart dsh web.
What you get
| Feature | Notes |
|---|---|
| Plugin cards | Title, entry id, description, enabled tag, phase |
| Categories | Grouped sections (core / UI / theme / tools / fun / other), collapsible |
| Sorting | Within a group: togglable plugins first, then by status (running first), then name |
| Fuzzy search | Tokens match as substring or subsequence across fields incl. category |
| Start / Stop | entry.update({ disabled }) — runtime only, no tree.write() |
| Core guard | Surface/runtime entries cannot be stopped (id- and module-name-based); others need a two-step confirm |
| Usage history | Every toggle is persisted to ~/.dsh/dsh-plugin-toggle.jsonl (last 1000), shown in a collapsible “使用记录” section |
| Persistence | Installed as a composition plugin — survives dsh web restarts |
HTTP API (same origin)
| Method | Path | Role |
|---|---|---|
GET | /plugin-toggle/list | { entries: [...] } |
GET | /plugin-toggle/logs | { records: [...] } (recent usage history, newest first) |
POST | /plugin-toggle/set | { entryId, enabled } → { ok, entry? | message? } |
POST is same-origin only.
Layout
dsh-plugin-toggle/
lib/index.js Host: list + set routes over the Cordis Loader
client/client.js Client: Settings tab (ModuleLoader factory)
cordis.patch.yml Bundle insert (`id: plugin-toggle`)
The client exports.inject is the service name slots (not a package name). Using package names here parks the client fiber forever.
License
MIT
Compatibility
Versions
| Latest version | Published | Size |
|---|---|---|
| 0.1.0 | — | — |
| 0.1.1 | — | — |
| 0.1.2 | — | — |
| 0.1.3 | — | — |
Comments
Loading…
Similar plugins
by Zenjibad
Enables or disables DSH plugins from Settings → Plugins: each toggle stops or starts the plugin immediately without a restart and the change persists across restarts.
★ 1
↓ 51/wk
MIT
TypeScript
Aug 28, 2026
dsh plugin --profile web add dsh-plugin-toggleby huntersxy
DSH 第三方插件开关 | Settings-page toggle for third-party DSH plugins. Install: dsh plugin --profile web add dsh-plugin-toggle
★ 0
MIT
JavaScript
Aug 16, 2026
dsh plugin --profile web add dsh-plugin-toggleby Nishikinov
DSH plugin: puts a Settings row in the sidebar header, immediately before Plugins, and opens the native Settings panel in one click.
★ 0
MIT
JavaScript
Oct 6, 2026
dsh plugin --profile web add dsh-sidebar-settings-buttonby DoiiarX
Search field for the DSH Web Settings panel: independent candidate list, click to navigate to the owning section and focus the setting
★ 0
MIT
JavaScript
Aug 15, 2026
dsh plugin --profile web add @doiiarx/dsh-settings-search-pluginby Alail691
把 DSH 侧栏的「插件」整体收进设置:在「设置 → 插件」里新增一个「插件管理」标签页,内嵌官方插件面板的全部能力(浏览 / 安装 / 开关 / 卸载)。Bring the sidebar's Plugins page into Settings as a tab, embedding the official plugin manager.
★ 0
MIT
JavaScript
Oct 16, 2026
dsh plugin --profile web add dsh-plugins-in-settingsby cynch18
DSH web plugin: toggle plugins on/off from the GUI without restarting the server
★ 4
MIT
JavaScript
Sep 7, 2026
dsh plugin --profile web add dsh-profile-plugin-switch