dshbase

插件目录 / Network / plugin-switch

plugin-switch

已验证 · 实测可装 cynch18

✓ 持续维护

查看 GitHub ↗ ← 返回插件目录

3Stars
0Forks
0未关闭 issue
JavaScript语言
2026-08-15最近推送
跨平台平台

功能简介

DSH Web插件:GUI切换插件,无需重启

✅
我们的评价
可用 — 实测通过,早期项目

DSH Web插件:GUI切换插件,无需重启 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

plugin-switch

awesome · DSH plugin
release
test

English | 中文

给 DeepSeek Harness (DSH) 的插件清单页加上滑块开关:点一下即可启用/停用任何插件,立即生效、不用重启服务端,重启后状态保持。

功能

  • 实时启停(主动重放通道,绕开平台 watcher 死锁,确定性生效)
  • 分组(系统/第三方/本地)、状态筛选、排序、搜索
  • 批量启用/停用(单事务:一次备份,撤销一步全回)
  • 撤销 + 自动备份(保留最近 20 份)
  • 关键条目强确认、被依赖提示 + 停用确认警告、停用来源分层、config 预览、失败诊断
  • 多标签页实时同步、CLI 恢复工具、双语界面与动画

快速开始

方式一:dsh plugin add(推荐)

dsh plugin --profile web add github:cynch18/plugin-switch

方式二:直接下载(不用 git)

在 Releases 下载 plugin-switch.zip,解压后运行:

powershell -ExecutionPolicy Bypass -File .\install.ps1

方式三:git clone

git clone https://github.com/cynch18/plugin-switch.git
cd plugin-switch
powershell -ExecutionPolicy Bypass -File .\scripts\install.ps1

然后重启 dsh web,按 Ctrl+Shift+R 刷新 → 设置 → 插件 → 插件清单,每个插件右侧就是滑块开关。

⚠️ 三种方式任选其一:dsh plugin add、zip、install.ps1 不要重复安装(同一 profile 装两次会产生重复条目,重启报错)。

方式二/三的 -KeepOriginal 参数保留原只读清单(仅启用 HTTP API);-Dev 参数建 junction 指向源码,改代码直接生效。

常见问题(FAQ)

Q:我把"插件开关"自己关了,页面消失了,怎么恢复?

打开 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml,找到 plugin-switch 条目,把 disabled: true 改回 false(或删掉这一行),保存后约 3 秒自动生效,无需重启。

Q:开关点了没反应?

重启 dsh web 再试;若仍无效,见下方故障排查。

Q:误操作了想回退?

页面上的"↺ 撤销"按钮恢复到上一次开关前的配置(每次开关前自动备份,保留最近 20 份)。

故障排查

症状 处理
开关页没出现 确认只用了一种安装方式、已重启 dsh、已强制刷新(Ctrl+Shift+R);检查 cordis.patch.yml 里 ui-settings-plugin-inventory 与 plugin-inventory 两行是 disabled: true
开关后状态没变 重启 dsh web 再试
服务端报错 看 dsh 启动窗口日志(loader apply/error 行)
无法打开 GUI 用 CLI 恢复工具:node scripts/dsh-plugin-fix.mjs list / enable <id> / disable <id> / undo / backups(在仓库目录运行)
配置文件损坏 备份在 %USERPROFILE%\.dsh\profiles\web\backups\,把最新一份复制回 cordis.patch.yml 即可

卸载 / 恢复原版

  • 恢复原只读清单:把 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml 里 ui-settings-plugin-inventory、plugin-inventory 的 disabled: true 改回 false,同时删除 plugin-switch 条目。
  • 彻底卸载:删除 %USERPROFILE%\.dsh\profiles\web\node_modules\dsh-profile-plugin-switch,并移除 cordis.patch.yml 中的相关条目。

注意事项

  • 需要以 web profile 运行 DSH(npx @deepseek-ai/dsh web),Node ≥ 22。
  • 关闭"插件开关"自身会让开关页消失,恢复需手动把 cordis.patch.yml 里 plugin-switch 的 disabled: true 改回 false(页面上会弹确认)。
  • /plugin-switch 是无鉴权的本地 HTTP 路由(与 DSH 自带 /plugins/... 同级信任),仅限个人本机使用。
  • 改包内 index.js 需重启 dsh;改 client.js 刷新页面即可。

开发

npm install
npm test   # 单元测试(applyPatchEdit / 备份轮换 / 来源判定 / baked-disabled scrub)

License

MIT © 2026 CYNCH18

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 plugin-switch」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:cynch18/plugin-switch

Headless(CLI)profile:

dsh plugin --profile headless add github:cynch18/plugin-switch

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

使用场景

给 agent 网络能力——请求、API、代理或协议——让它能触达外部系统。

适合谁

任务涉及网络的人——调 API、抓资源或与远端服务通信。

二次开发建议

适配器和请求整形是缝——加协议、鉴权处理器、重试和端点抽象。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Network 里更多

浏览全部 7797 个插件 →