DSH Web GUI 插件控制中心:以卡片列表聚合展示当前 profile 已安装插件,显示名称、版本与简介,并提供在线启用/停用开关。
前言¶
在使用 DeepSeek Harness (DSH) 进行智能体开发时,插件是核心组件。管理这些插件通常涉及编辑配置文件或重启服务。停用插件时,如果仅仅移除加载逻辑,可能会导致插件残留(例如宠物插件变成不可交互的“僵尸”)。本插件旨在通过 Web GUI 提供可视化的插件管理入口,解决手动维护配置与状态同步的问题。
核心功能¶
- 设置页新增一级区块「插件控制」。
- 卡片展示每个 Loader 插件条目:名称、版本、简介、启用状态。
- 支持搜索与「仅显示已安装插件」过滤。
- 在线开关直接写入 profile 层
cordis.patch.yml,由 DSH 现有 HMR watcher 热生效。 - 设置感知开关:对通过自身设置项控制界面的插件(如 dsh-pet),停用会写它的设置开关,确保插件真正消失而非残留。
- 核心基础设施条目与本插件自身不可关闭,避免误操作。
安装¶
通过官方 CLI 命令安装:
dsh plugin --profile web add https://github.com/CloudFan-cyf/dsh-plugin-control
安装后需重启 dsh web 以加载新界面。后续的插件开关操作将利用 HMR 热更新,无需再次重启。
典型用法¶
- 重启
dsh web。 - 打开 设置 → 插件控制。
- 在卡片列表中查看当前 profile 已安装的插件。
- 点击卡片上的开关即可启用或停用插件。
适用场景与注意事项¶
- 适用场景:需要快速查看和管理已安装插件状态的 Web 环境用户。
- 层级冲突:本插件仅管理 profile 层的
cordis.patch.yml。如果 home 层(~/.dsh/cordis.patch.yml)存在同名补丁,需要用户自行处理。 - 注释处理:改写 patch 文件时,YAML 注释可能会被规范化处理导致丢失,但语义会被保留。
- 安全限制:API 路径前缀为
/api/dsh-plugin-control,且仅允许 loopback + 同源请求。 - 权限要求:插件以当前 dsh 进程权限运行,安装前请检查源码与许可证。
- 自动备份:首次改写 patch 文件前,系统会自动备份为
cordis.patch.yml.dsh-plugin-control.bak。
生态背景¶
DSH 理念是「一切皆插件」,社区目录与 DeepSeek / 幻方无官方从属关系。本插件由社区开发者 CloudFan-cyf 维护,遵循 MIT 许可证。