dsh-upgrade:DSH 版本检测、多通道升级与服务守护

前言

在 DeepSeek Harness(DSH)里跑 Web 端和插件时,核心包 @deepseek-ai/dsh 的版本往往要手动对照 npm、再执行升级与重启;升级若与已装插件的 peer 依赖不匹配,还可能导致服务起不来。社区插件 dsh-upgrade(维护者 wonaren,分类:工作流)把版本比对、稳定版/尝鲜版分流、升级前备份、插件兼容性预检、服务重启和前端心跳重连收进侧边栏入口,面向日常维护 DSH 的开发者。

这是什么

dsh-upgrade 是发布在 npm 的 DSH 插件(当前资料中 package.json 版本为 1.1.0,MIT 协议,要求 DSH >=0.1.0)。它通过 Cordis 补丁接入 Web 平台,在 Host 端做版本查询与 npm 升级、服务重启,在 Client 端提供 React 弹窗与侧边栏底部工具栏(sidebar.footer.action)入口。

目录页:SkillHub - wonaren/dsh-upgrade
源码与说明:GitHub - wonaren/dsh-upgrade

核心功能

以下能力均来自项目 README 与 package.json 说明。

多源版本比对

自动对比本地已安装的 @deepseek-ai/dsh 与远端最新版本;查询优先走国内 npmmirror,失败时降级到官方 npmjs。

多通道分流

  1. 稳定版(Latest):日常推荐;有稳定新版本时在 UI 上提示蓝色徽章「有新版本」。
  2. 尝鲜版(Alpha):检测如 0.2.1-alpha.x 一类预览版;有更新时提示绿色徽章「有尝鲜版更新」。
  3. 历史版本:可浏览历史并在需要时回滚到指定版本。

升级前备份

每次升级前,将当前用户的 ~/.dsh/profiles/web 打包为 .tgz 写入系统临时目录,便于事后还原。

插件兼容性预检

升级前分析已安装插件的 peerDependencies 与目标 DSH 版本;在弹窗中列出尚未适配的插件及冲突依赖。升级过程中会把不兼容插件从启动列表暂时关闭(保留用户配置与代码),避免新版本因旧插件报错无法启动;待插件发布适配版本后可再开启。

服务重启与前端恢复

弹窗内提供「重启服务」,带二次确认与影响说明。重启或升级后,前端通过心跳轮询探测服务就绪,恢复后自动刷新页面。

安装与启用

插件已发布至 npm 与 npmmirror,可通过 DSH Web 界面或 CLI 安装。安装命令以 README 原文为准。

方式一:Web 界面(推荐)

  1. 打开 DSH 网页端(例如 http://127.0.0.1:3080)。
  2. 进入 设置 → 插件管理 → 添加插件。
  3. 在包名输入框填写:
dsh-upgrade
  1. 点击 安装,安装成功后重启后台服务使插件生效。

方式二:CLI

在终端执行:

# 从 npm 官方或国内镜像源直接安装(推荐)
dsh plugin --profile web add dsh-upgrade

# 或者直接从 GitHub 仓库源安装
dsh plugin --profile web add github:wonaren/dsh-upgrade

README 中给出的 macOS 后台服务重启示例:

launchctl kickstart -k gui/$(id -u)/com.deepseek.dsh.web

也可在插件弹窗内使用「重启服务」。非 macOS 环境请以你本机 DSH 部署文档中的重启方式为准。

典型用法

安装并重启服务后,在 Web 侧边栏底部工具栏找到升级入口,打开弹窗即可:

  1. 查看当前 DSH 与远端稳定版/尝鲜版差异及徽章提示。
  2. 按需选择稳定版升级、尝鲜版体验或历史版本回滚;升级前会自动备份 profile。
  3. 阅读兼容性预检结果,确认暂不兼容的插件会被临时关闭。
  4. 完成升级后,在弹窗内触发「重启服务」,等待心跳探测完成后页面自动刷新。

Host 逻辑位于 lib/index.js(版本查询、npm 升级、重启执行),UI 位于 lib/client.js(弹窗、入口、心跳重连)。

适用场景与注意

适合谁:长期在本地或单机维护 DSH Web profile、需要跟进 @deepseek-ai/dsh 稳定版或 Alpha、且希望减少「升完版服务起不来」风险的开发者。

权限与安全:插件在 DSH 进程权限下执行 npm 升级、读写 profile 与触发服务重启。安装前应阅读 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。

生态说明:DSH 社区插件目录(如 SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系;本插件星标在目录线索中为 0,选用时以仓库 README 与 npm 页面为准。

结尾

dsh-upgrade 把 DSH 的版本检测、多通道升级、profile 快照、插件兼容防护和服务重启串成一条可重复的工作流,入口集中在 Web 侧边栏。进一步细节见 SkillHub 目录页 与 GitHub README。

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

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

Xiaoye