WSGsety/dsh-plugin-manager
WSGsety★ 0JavaScript最后同步: 2026-08-15
DSH web plugin manager — enable/disable installed plugins from Settings. · DSH 网页插件管理:设置页直接启停已安装插件。
README 摘要
dsh-plugin-manager DSH 网页插件管理:在 Web 设置页直接启用/停用已安装插件。npm 包名 @wsgsety/dsh-plugin-manager ,运行时条目 id dsh-plugin-manager 。 - 设置 → 插件 → 插件管理 :搜索、按官方/第三方筛选,每个插件一行开关。切换 立即生效 (Cordis loader 热更新)并 写入用户 patch 层 ( /.dsh/profiles/ /cordis.patch.yml ),重启后保持。 - 插件卡片带运行状态点(运行中/已停用/挂载失败…)、「官方」徽标( @deepseek-ai/ )与「受保护」标记。 - 完全自研,不依赖 dshmarket。 安装 - 运行时 loader 条目 id 带组前缀( include:ssh ),patch 层写入时自动去掉前缀( ssh ),与 bundle 层 id 对齐。 - 桌面应用(deepseek-harness-desktop)用 app 内置 dsh 启动 web profile、随机端口,profile 仍是 /.dsh/profiles/web ;改动后重启应用即可。 Host 路由 路由 方法 说明 /dsh-plugin-manager/entries GET loader 条目投影 + patch 停用列表 /dsh-plugin-manager/set-enabled POST 实时启停 + 写 patch 持久化(可信请求栅栏) /dsh-plugin-manager/ping GET 健康检查 安全 - 所有路由走官方 dsh-client-connection 同款 可信请求栅栏 : Host 必须是回环权威( localhost / 127.0.0.0/8 / [::1] ,DNS 重绑定无法伪造)、 Sec-Fetch-Site: cross-site 拒绝、携带的 Origin 必须与 Host 完全一致。写接口( /set-enabled )额外要求 TCP 对端可见时为回环地址,把配置平面限制在回环(与官方 WebServer 配置平面语义一致)。 - 写请求体积受限(16 KiB)JSON body,entry id 经白名单校验,杜绝 YAML 注入。 - 保护列表( lib/entries.js )禁止停用 web 外壳、插件自身与承载页面的核心条目: webserver 、 web-runtime 、 modules 、 connection 、 client-runtime 、 locale 、 ui-layout 、 ui-sidebar 、 ui-settings 、 ui-settings-plugins (本插件页面所在 slot 的所有者,防止 UI 自锁)、 …
在 GitHub 查看完整 README →