DeepSeek Harness plugin

dsh-plugin-manager-retr67

DeepSeek Harness (DSH) 插件管理器:在 WebUI 里可视化查看、临时打开/关闭其他插件;无需重启 dsh,切换后自动刷新页面生效并跨重启保持。

Jump to install

Source facts

Repository
Retr67/dsh-plugin-manager
Latest update
Aug 19, 2026
Category
Plugin Markets & Managers
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/Retr67/dsh-plugin-manager
Plugin: dsh-plugin-manager-retr67
Author: Retr67

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-plugin-manager

DeepSeek Harness (DSH) 插件管理器:在 WebUI 设置 → 插件 → 插件管理 里可视化查看、临时打开、关闭其他插件。

  • 入口位于 设置 → 插件 → 插件管理(作为 settings.plugins.tab 槽位注册的一个标签页,与自带「可配置」标签并列)。
  • 用户插件(可开关):你在 profile/package.json 里安装的社区插件 + 你自己在 cordis.patch.yml 里加的条目(如 MCP 桥梁)。
  • 系统组件(只读):DSH 自带的 host/web 基础设施,只展示、不提供开关,避免误关导致 Harness 起不来。
  • 开关无需重启 dsh:走的是 Cordis loader 的 entry.update({ disabled })(与官方 dsh-market 主题开关同一条路)。默认在切换后自动刷新网页,让带前端界面的插件(桌宠、侧边栏等)也立即完全生效;也可在面板里切到手动刷新模式(选择保存在浏览器 localStorage)。
  • 跨重启保持:被关闭的插件 id 会记在 <profile>/.plugin-manager/state.json,下次启动时自动回放为关闭,直到你把它打开。
  • 「全部恢复开启」按钮一键清空所有保持关闭的插件。

结构

dsh-plugin-manager/
├── package.json        # dsh.bundle + dsh.client 声明
├── cordis.patch.yml    # 挂载 plugin-manager 主机条目
├── dsh/
│   ├── index.js        # 主机端:HTTP API + loader 枚举/开关 + 状态持久化
│   └── client.js       # 浏览器端:注册 设置→插件→插件管理 标签页(React)
└── README.md

与官方机制的关系

  • 不走 package.jsondsh.profile.bundles 增删(那需要重启才生效),而是对运行中的 loader entry 做热开关——这是 dsh-market 主题切换验证过的做法。
  • 状态持久化与启动回放、自愈守卫(internal/plugin 事件)同样移植自 dsh-market。
  • group 插件(如记忆插件 openviking-memory)无法直接置 disabled,管理器会自动改为开关其子条目。

HTTP API(同源校验)

方法路径说明
GET/plugin-manager/list返回插件列表与开关状态
POST/plugin-manager/toggle{ id, enabled } 热开关某个插件
POST/plugin-manager/reset恢复所有被保持关闭的插件

POST 接口(toggle/reset)做了 Origin === Host 的同源校验;GET 列表是只读、且只暴露在回环地址绑定的 web server 上,不再要求 Origin 头(同源 GET fetch 默认不携带 Origin,要求它会导致面板报 untrusted origin)。

安全

  • 主机端仅使用 node 内置模块(fs/os/path),无网络调用、无子进程、无 eval。
  • 客户端用 React 渲染插件名(自动转义,无 XSS),所有请求都是同源 fetch。
  • 管理器自己(plugin-manager)不会被关闭;系统组件不会提供开关。

License

MIT