READMESource: main@53ae75d8
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
No comments yet. Be the first to write one.