插件目录 / UI & Skins / dsh-local-plugin-switch
dsh-local-plugin-switch
已验证 · 实测可装 jcleener
功能简介
DSH 插件:设置页「本地插件开关」区块 —— 列出本地已安装插件并实时/持久开关
可用 — 实测通过,早期项目
DSH 插件:设置页「本地插件开关」区块 —— 列出本地已安装插件并实时/持久开关 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-local-plugin-switch
DSH(DeepSeek Harness)插件:在设置页新增「本地插件开关」区块,列出所有本地已安装插件,每个带开/关。
开关 = 实时启停 loader fiber + 把disabled: true/false写入 profile 的cordis.patch.yml,重启后仍生效。
功能
- 列出所有本地插件:非 group 的 loader 条目,显示名称 / id / 状态(active / failed / loading)
- 实时开关:调用
entry.update({ disabled: true | null }, false, true)立即停止 / 启动对应 loader 条目(fiber) - 持久化:把
- id: <row>+disabled: true|false写入 profile 的cordis.patch.yml,重启后依旧生效(Cordis HMR 开启时保存后约 1s 生效) - 宿主保护:webServer / storage / connection 等基础设施行显示「宿主」且不可开关 —— 停掉它们会破坏本页面依赖的链路
- 与 DSH 自带设置页同款观感(复用
--dsw-alias-*主题 token)
安装
dsh plugin --profile web add "github:jcleener/dsh-local-plugin-switch"
# 或固定版本
dsh plugin --profile web add "github:jcleener/dsh-local-plugin-switch#v0.1.0"
安装后重启 dsh web,设置页出现《本地插件开关》区块。
使用
打开设置页 → 《本地插件开关》,点任意插件的开关即可。宿主基础设施行显示「宿主」徽标且不可操作。
工作原理
Host 半段提供两个 HTTP 路由:
GET /dsh-local-plugin-switch/list— 所有非 group loader 条目POST /dsh-local-plugin-switch/toggle—{ name, enabled }
Client 半段(设置页区块)调用以上路由渲染开关列表。
开发 / 结构
lib/index.js Host 半段(路由 + 实时/持久开关逻辑)
lib/client.js Client 半段(设置页「本地插件开关」区块 UI)
cordis.patch.yml 加载器补丁层(insert 声明)
许可证
MIT © 2025 jcleener
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-local-plugin-switch」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:jcleener/dsh-local-plugin-switch Headless(CLI)profile:
dsh plugin --profile headless add github:jcleener/dsh-local-plugin-switch 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。