dsh-update-check
其他 活跃维护

dsh-update-check

awa-123-cw/dsh-update-check

为对应WebUI设置页「关于」栏位新增一键更新检测能力,可自动比对当前版本与官方最新版本,实时提示更新可用性,轻量无额外依赖,安装后即可快速校验组件版本状态。

1
Stars 标星
0
Forks 分支
1
Watchers 关注
0
Open Issues
JavaScript
主要语言
None
开源协议
15 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:awa-123-cw/dsh-update-check
git clone https://github.com/awa-123-cw/dsh-update-check.git
git clone git@github.com:awa-123-cw/dsh-update-check.git
README.md master

dsh-update-check

DSH 设置页「关于」栏位 + 一键检测更新插件。

功能

  • 设置页新增「关于」导航栏位(additive,不替换任何官方 UI):
    • 当前版本 / 安装目录 / DSH_HOME / Node 环境 / 进程 PID / 自动更新状态
    • 检测更新按钮:经 host 同源端点代理查询 npm registry(@deepseek-ai/dsh dist-tags),
      与本地版本做标准 semver 比较(含 rc/beta 预发布规则),给出结论:
    • ✅ 已是最新版本
    • ⚠️ 发现新版本 → 显示升级命令 + 一键复制 + npm 页面直达
    • ❌ 检查失败(含原因,可重试)
    • 上次检测结果持久化在 <DSH_HOME>/data/dsh-update-check.json,重开设置页仍可见
  • 只检测、不升级:DSH 本身没有自动更新机制,本插件也不做任何写盘/更新操作,
    升级始终由用户在安装目录手动执行(命令一键复制)。

端点(host half 注册,同源)

端点 说明
GET /dsh-update-check/info 本地版本与环境信息 JSON(版本来源:进程启动入口 bin.js 上级包 package.json,多路径兜底)
GET /dsh-update-check/check 代理 npm registry dist-tags,返回 latest / next(10s 超时,失败返回 { ok:false, error },HTTP 502)
GET/POST /dsh-update-check/last-check 上次检测结果的读写(原子写 JSON 文件)
GET /dsh-update-check/debug 诊断:settings 注册状态(仅排障用)

持久化为何不走 settings 服务:官方 dsh-host-apiproxy
WEB_SETTINGS_NAMESPACES 白名单硬编码了可读写命名空间,插件命名空间不在
白名单会被 RPC 以 settings-not-exposed 拒绝(改官方包需重启 dsh 才生效),
因此改用 host 独立 JSON 文件,热装配即可用,升级 DSH 也不受影响。

装配

# 运行时注入(免重启,立即生效)
# 或用 dev_install_package 热装配(同时写入 profile bundles,重启后自动装配)

依赖:host 侧仅 Node 内置模块 + webServer 服务;client 侧仅 react +
slots/locale(client 运行时核心服务)。