@chendaleiq/dsh-plugin-auto-update

中文文档
0.2.2发布于 2026/11/06MITES Module零依赖构建来源已验证近 30 天下载 1961

通过插件管理器自动更新您在 DeepSeek Harness 中选择的插件捆绑

中文使用文档
文档目录10 节
  1. 它做什么
  2. 安装
  3. 配置:插件页里的面板
  4. 更新记录
  5. 语言
  6. 日志
  7. 边界(有意为之)
  8. 高级配置
  9. 开发
  10. 协议

dsh-plugin-auto-update

给 DSH 插件做按包白名单的自动更新:在插件页打开开关、勾选允许自动升级的插件即可。

npm license DeepSeek Harness plugin

勾选允许升级的包、按计划检查 npm、结果写进日志

(上图是示意图,不是录屏)

它做什么

  • 按计划去 npm 查已安装插件的最新版本
  • 只更新你勾选的包;本地 link: / file: 安装、锁定版本、报错的包一律跳过
  • 默认不跨大版本、不装预发布
  • 更新走 profile 里运行中的官方 pluginManager:profile 写锁、pnpm 执行、bundle 补丁校验、HMR 重载都由它负责;安装失败会把旧版本装回去
  • 每次更新都记进更新记录:插件页里直接看「谁、从哪个版本、到哪个版本、什么时候、成没成」

安装

插件页 → 安装 → 填包名:

@chendaleiq/dsh-plugin-auto-update

装完重启 DSH(宿主半边需要新代际才加载)。也可以填 GitHub 地址或本地目录的绝对路径。

配置:插件页里的面板

插件 → DSH 插件自动更新 → 详情页底部:

  • 启用自动更新 —— 总开关,默认关
  • 升级范围 —— 允许跨大版本 / 允许预发布
  • 自动更新的插件 —— 列出所有从注册表安装的插件,逐个勾选;「全部可更新的插件」= 通配
  • 不能更新的包会置灰并说明原因(本地安装 / 锁定版本 / 存在错误)

改动即时生效,不需要重启。

更新记录

详情页底部的第二块就是更新记录:按时间倒序列出每次真正发生的动作。

  • 一行一条:时间、包名、旧版本 → 新版本、结果(已更新 / 更新失败 / 可升级(演练))
  • 失败的记录带上回滚说明和原因(鼠标悬停可看完整原因);更新了宿主半边会标「需重启生效」
  • 刷新 重新读一次;清空记录 需要点两次确认(几秒内不点第二次就自动取消)
  • 记录只记「和版本有关」的动作:current(已经是最新)和 error(查不到版本)不写进来,免得记录被刷成流水账
  • 同一个包重复出现相同结果(同一个版本反复升级失败、演练反复看到同一个可升级版本)只记一次

数据存在 ~/.dsh/plugin-auto-update-history.json,最多保留 200 条(historyLimit 可改)。面板通过宿主半边提供的 GET /dsh-plugin-auto-update/history 读取,删除走同一个地址的 DELETE;没有 web server 的部署(headless)里这块会提示接口不可用,记录仍写进日志。

语言

跟随 DSH 的语言设置:默认中文,切英文后插件页和面板文案同步变英文。

日志

~/.dsh/plugin-auto-update.log,每行一个 JSON:

{"at":"…","kind":"cycle","decisions":[{"name":"dsh-plugin-desktop-notify","action":"updated","installed":"0.5.6","latest":"0.5.7"}]}

action 有 current / would-update / updated / failed / error。

边界(有意为之)

  • 只碰「从注册表安装、且依赖写成范围(^ ~ * latest)」的包
  • 随 DSH 自带的 bundle 不动;不修改你的其它配置
  • 网络或插件管理器出错只记录,不中断其它包
  • 宿主半边更新后需要重启应用;渲染层由 HMR 直接换掉

高级配置

面板没覆盖的字段(intervalHours 默认 6 小时、initialDelayMinutes、maxUpdatesPerRun、dryRun、registry、timeoutMs、logPath、historyPath、historyLimit)写在 profile patch 的 config 里,或覆盖 ~/.dsh/profiles/<profile>/cordis.patch.yml 的同一行。改完需要重启。

开发

node test/index.test.mjs    # 宿主半边:检查、更新循环、更新记录的去重与上限
node test/client.test.mjs   # 渲染层:插槽注册、远端信封、置灰原因、记录接口

协议

MIT · 仓库 https://github.com/chendaleiQ/dsh-plugin-auto-update

版本与发布记录

@chendaleiq/dsh-plugin-auto-update 共发布 8 个版本,首次发布于 2026/10/27;过去 12 个月发布了 8 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.2.2latest2026/11/063 天前
0.2.12026/11/054 天前
0.2.02026/11/054 天前
0.1.192026/10/2713 天前
0.1.182026/10/2713 天前
0.1.172026/10/2713 天前

关于 @chendaleiq/dsh-plugin-auto-update 的常见问题

@chendaleiq/dsh-plugin-auto-update 是什么?

通过插件管理器自动更新您在 DeepSeek Harness 中选择的插件捆绑

如何安装 @chendaleiq/dsh-plugin-auto-update?

在项目目录运行 npm install @chendaleiq/dsh-plugin-auto-update,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@deepseek-ai/schemastery(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@chendaleiq/dsh-plugin-auto-update 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/chendaleiq__dsh-plugin-auto-update 是否存在。

@chendaleiq/dsh-plugin-auto-update 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@chendaleiq/dsh-plugin-auto-update 可以商用吗?

@chendaleiq/dsh-plugin-auto-update 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@chendaleiq/dsh-plugin-auto-update 的下载量有多少?

根据 npm 官方下载统计,@chendaleiq/dsh-plugin-auto-update 在 2026/10/10 – 2026/11/08 这 30 天内被下载 1,961 次,日均约 65 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@chendaleiq/dsh-plugin-auto-update 还在维护吗?

最新版本 0.2.2 发布于 2026/11/06(3 天前);至今共发布 8 个版本,其中过去 12 个月发布了 8 个;首次发布于 2026/10/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。