dsh-my-plugins:DSH 插件管理面板

DeepSeek Harness (DSH) 采用插件化架构,允许开发者通过 dsh plugin 安装自定义组件。在官方插件列表中同时管理内置插件与个人安装的插件,容易造成界面混乱。dsh-my-plugins 在「设置 → 插件」区域新增了「我的插件」标签页,仅用于管理用户通过 dsh plugin 安装的插件。

核心功能

该面板提供以下能力:

  • 状态查看:展示已安装插件的版本与运行相位(Phase)。
  • 热切换:支持启用和关闭插件,状态变更即时生效。
  • 卸载清理:提供卸载功能,并清理相关残留。
  • 重启服务:面板内提供一键重启 dsh web 的工具,用于在卸载或完成关键操作后刷新环境。
  • 样式与主题:界面风格与官方插件清单保持一致,自动跟随系统的亮色/暗色模式。
  • 持久化:停用状态会被写入 cordis.patch.yml,重启后依然保持。

安装

通过官方命令安装插件包:

dsh plugin --profile web add https://github.com/I-am-shy/dsh-my-plugins.git

安装完成后,刷新浏览器,进入 设置 → 插件 → 我的插件 即可使用。

使用方法

  1. 在面板中点击卡片展开详情。
  2. 点击卡片内的「启用」或「关闭」按钮控制插件状态。
  3. 需要卸载插件时,展开卡片点击「卸载」,并在确认后使用工具栏的「重启 dsh web」以确保完全生效。

注意事项

  • 管理范围:仅管理 profile 的 dependencies 中定义的插件。官方自带插件(如 @deepseek-ai/dsh-base)不显示也不管理。
  • 安全性:组条目(options.group)无法作为操作目标,防止因关闭自身导致无法从界面恢复。
  • 卸载生效:卸载操作需要重启 dsh web 后才能完全生效。
  • 审计日志:所有操作均写入审计日志。

HTTP API

面板提供同源仅回环的 HTTP API,用于脚本或外部工具调用:

端点 方法 请求体 作用
/my-plugins/list GET — 获取插件列表、profile 及端口信息
/my-plugins/set-enabled POST {pkg, enabled} 启用或停用插件并持久化
/my-plugins/uninstall POST {pkg} 卸载插件并清理
/my-plugins/restart POST {} 重新拉起 dsh web

项目链接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜