DeepSeek Harness 自动更新怎么开?桌面端内置更新、dsh 本体与插件三层对照
DeepSeek Harness 的「自动更新」要分三层看:桌面端自带更新检查,菜单里还有「检查更新…」,但下载与安装都要你确认;命令行本体没有更新开关,要么改用 npx 启动(每次按 @latest 重新解析),要么用系统计划任务定时执行更新命令;插件侧则由 DSH Plugin Hub 的启动时检查更新与可更新徽标负责提醒。 DSH插件 与 DeepSeek插件 的提醒都落在插件侧这一层,命令行本体那一层没有开关,两者别混。这篇把三层分开讲,各自的实现方式与代价都说清。
先分清三层:桌面端自动更新、dsh 本体更新与 DSH plugin 提醒
「自动更新」在 DeepSeek Harness 里是三个独立问题:桌面端是 Electron 应用,内置自动更新并在菜单提供手动检查;命令行本体是 npm 全局包或 npx 临时包,要靠外部机制取最新;插件由 dsh plugin 通道管理,有内建的检查与提示(来源)。 对照表:
| 层 | 有没有内建自动更新 | 实现方式 | 代价 |
|---|---|---|---|
| 桌面端(Electron 应用) | 有(只检查,不自动安装) | 启动时查更新频道 + 约 10 分钟轮询,菜单「检查更新…」可手动触发 | 下载与安装需你确认,更新时机由你决定 |
| dsh 本体(npm 全局) | 没有 | 系统计划任务定时跑 npm install -g @deepseek-ai/dsh@latest | 更新后要重启常驻服务 |
| dsh 本体(npx) | 形式上等于每次更新 | 启动时带 @latest 让 npx 重新解析 | 每次启动可能有下载等待 |
| 插件 | 有「检查 + 提醒」,不静默安装 | DSH Plugin Hub 启动时检查更新 + 可更新徽标 | 需要你点一次确认才升级 |
先确定自己属于哪一类:装了桌面端就在应用菜单里管更新,看下一节;纯命令行用户执行 npm ls -g @deepseek-ai/dsh,预期:有版本号输出说明是全局安装,按第四节做定时更新;输出 (empty) 而你平时用 npx 启动,按第三节做。
DeepSeek Harness 桌面端自带的更新检查:内置自动检查与「检查更新…」菜单
桌面端是三层里唯一自带更新检查的一层:应用启动后会异步查询固定的更新频道,并以约 10 分钟为基准轮询(带 ±20% 抖动,失败后逐步退避到 1 小时);自动检查只做检查,从不弹窗也不下载安装包,新版本先显示为可更新状态,由你选择后才开始下载;你也可以随时用应用菜单里的「检查更新…」手动触发一次(来源)。 三步确认自己没落后:
- 先看当前版本 — 打开应用菜单第一项「关于 DeepSeek Harness」。预期:面板显示应用图标、产品名称与当前安装的发布版本号。
- 手动触发一次检查 — 点应用菜单里的「检查更新…」。预期:检查中、失败或「已是最新」会给出包含已装版本号的反馈;有新版则进入可下载状态。
- 确认命令行版本跟着走 — 若你装过桌面端提供的 dsh 命令,打开一个新终端执行
dsh --version。预期:版本号与桌面端一致,因为该命令复用 Desktop 已安装的运行时,版本随桌面端一起变化。
为什么桌面端能做到而命令行本体做不到:桌面端的版本与 @deepseek-ai/dsh 始终使用同一个精确版本号,升级 dsh 就必然发布新的桌面端版本;应用自带更新通道,自然可以把自己更新到那一版。命令行本体只是一段 npm 包,没有常驻进程替它做这件事。桌面端怎么更新、怎么配合命令行,另见《DeepSeek Harness 桌面端怎么更新》。
DeepSeek Harness 最省事的做法:用 npx 启动,每次按最新解析
npx 没有常驻安装实体,每次运行都会按 @latest 重新解析包,这等于每次启动都顺手更新一次,不需要额外配置(来源)。 三步落到日常使用:
- 启动命令带上最新标签 — 执行
npx -y @deepseek-ai/dsh@latest web。预期:npx 按 latest 解析并运行,-y跳过安装确认提示。 - 确认拿到的就是最新版 — 另开终端执行
npm view @deepseek-ai/dsh version与dsh --version对比。预期:两者一致,说明这次启动用的就是源站最新稳定版。 - 怀疑拿到旧版时清缓存 — 执行
npm cache clean --force后重跑第 1 步。预期:重新下载;npx 的临时安装内容位于~/.npm/_npx。
代价要说清:这种方式每次启动都可能有一次下载检查,网络不稳时表现为「启动慢」。若你已经用 npm 全局安装并配了开机自启,就别再混用 npx,否则两套版本会各跑各的,排查时极易误判。
全局安装的 DeepSeek Harness 怎么自动更新:用系统计划任务定时执行
全局安装没有「每次启动自然取最新」的机会,正确做法是把更新命令排进系统计划任务,由系统按天执行;更新很快,真正的成本是更新后必须重启常驻服务(来源)。 三平台做法:
- macOS:用 launchd 定时 — 新建
~/Library/LaunchAgents/org.dsh.update.plist,用StartCalendarInterval声明执行时刻,ProgramArguments里写/bin/sh -c "npm install -g @deepseek-ai/dsh@latest",再用launchctl bootstrap gui/$(id -u) <plist>加载。预期:到点自动执行,日志由StandardOutPath落盘。 - Linux:用 systemd timer — 建
~/.config/systemd/user/dsh-update.service(ExecStart=/usr/bin/npm install -g @deepseek-ai/dsh@latest)与dsh-update.timer(OnCalendar=daily、WantedBy=timers.target),执行systemctl --user daemon-reload && systemctl --user enable --now dsh-update.timer。预期:systemctl --user list-timers能看到下次执行时间。 - Windows:用任务计划程序定时 — 创建任务,触发器选「每天」并设定时间,操作填
npm.cmd的完整路径、参数填install -g @deepseek-ai/dsh@latest。预期:到点自动跑,可在「上次运行结果」里核对。 - 定时任务之后重启常驻服务 — 若你按《dsh 怎么开机自启?》把它托管成了后台服务,更新后需要再重启该服务,进程才会用上新版本。预期:
dsh --version显示新版本。
建议先只想清楚一件事:自动更新意味着某天服务会在你不知情时换版本。若你依赖某个版本的行为,就别开定时更新,改成看到版本通知后手动升级。
怎么第一时间知道 DeepSeek Harness 有新版本
不想自动升级、只想被通知的人,用三条查询命令加一个订阅就够了(来源)。 逐个说明:
- 看差距 — 执行
npm outdated -g --depth=0。预期:该包出现在列表里时,Current 与 Latest 两列就是「你现在用的」与「可用的最新」。没有任何输出说明已是最新。 - 查源站最新版 — 执行
npm view @deepseek-ai/dsh version。预期:输出源站上的最新稳定版号;若明显低于官网公告,先查npm config get registry是不是镜像滞后。 - 订阅发版通知 — 打开
deepseek-ai/deepseek-harness仓库页,点 Watch → Custom → 只勾选 Releases。预期:每次发新版本会在 GitHub 通知里收到一条,不刷屏。 - 看更新日志再决定 — 确认新版内容后再升级,避免盲目跟进。查版本与读日志的方法见《DSH 怎么查版本、看更新日志?》。
DSH Plugin Hub 插件侧的自动检查更新:启动时比对与可更新徽标
插件不会静默升级,但会主动提示:DSH Plugin Hub 的设置里有「启动时检查更新」,开启后每次启动比对目录数据与已装版本,有新版的插件在已安装列表行尾出现可更新徽标(来源)。 三步用起来:
- 打开检查开关 — 进入「设置」页,确认「启动时检查更新」处于开启状态。预期:之后每次启动会做一次版本比对。
- 看已安装列表 — 进入「已安装」页,找行尾带「可更新」的条目。预期:这类插件就是有新版本可升的。
- 逐个确认升级 — 点「可更新」并在弹窗里确认。预期:插件原位覆盖升级到最新版;有多个时也可按批处理思路一次性过一遍,见《DSH plugin 怎么批量更新?》。
为什么插件不做成全自动:覆盖升级会替换正在运行的代码,通常需要重启 dsh 才加载生效,静默执行反而容易让人误判「更新了但没变化」。所以市场把最后一步留给你点确认。
五条通用注意事项:
- 桌面端、本体、插件三层的更新互不带动:桌面端由应用自身更新,本体走 npm 与计划任务,插件靠市场徽标,任何一层都不会顺手更新另一层。
- 定时更新要配日志:否则某次失败会悄无声息,下次你只看到「版本还是旧的」却无从查起。
- 别在无人值守的服务上开定时更新后不管:新版本可能改变插件加载行为,更新完至少要有人看一眼能否正常启动。
- 镜像源会影响「有没有新版」的判断:
npm view读到的是源的缓存,判断前先确认npm config get registry。 - 升级前先备份:配置与会话数据的保留范围、备份做法见《DeepSeek Harness 更新会丢配置吗?》。
桌面端在应用菜单里管、本体靠计划任务、插件靠市场提示,三层分开管就不容易乱。 DSH Plugin Hub 是 DeepSeek Harness 内置的官方插件市场,设置页集中管理「启动时检查更新」、NPM 镜像源与代理通道;已安装列表则把有新版本的插件标出来,点确认即原位升级,不需要回到命令行逐个查。

来源:npm Docs - npx、Apple developer documentation(launchd)、systemd 官方文档 - systemd.timer、dshplugin/dsh-plugin-hub GitHub 仓库
常见问题
桌面端有、命令行本体没有。DeepSeek Harness 桌面端内置更新检查,启动后会自行查询更新频道,菜单里另有「检查更新…」可手动触发,下载与安装都要你确认;而 npm 全局安装或 npx 启动的 dsh 本体没有更新开关,不会自己去装新版本。插件侧则由 DSH Plugin Hub 的启动时检查更新与可更新徽标负责提醒。
会自动检查,但不会替你下载安装。DeepSeek Harness 桌面端启动时会异步查询固定的更新频道,并以约 10 分钟为基准轮询(带 ±20% 抖动,失败后逐步退避到 1 小时);自动检查从不弹窗也不下载安装包,新版本先在左下角账户行显示为可更新状态,由你选择后才开始下载。你也可以随时点应用菜单里的「检查更新…」手动触发一次检查。桌面端版本与 @deepseek-ai/dsh 始终保持同一个精确版本号。
两者都能实现,代价不同。改用 npx -y @deepseek-ai/dsh@latest web 启动,每次运行都按 latest 重新解析,等于每次启动都更新一次,代价是可能有一段下载等待;已全局安装则用 launchd、systemd timer 或 Windows 任务计划程序定时执行 npm install -g @deepseek-ai/dsh@latest,代价是更新后要重启常驻服务。
第一时间知道 DeepSeek Harness 出新版本有三种方式:执行 npm outdated -g --depth=0 看 Current 与 Latest 的差距;执行 npm view @deepseek-ai/dsh version 查源站最新稳定版;在 GitHub 仓库页点 Watch → Custom → 勾选 Releases,发新版时会收到通知。
DSH plugin 不会自行静默更新,但会主动提示:DSH Plugin Hub 的设置里有启动时检查更新,开启后启动时比对目录数据与已装版本,有新版就在已安装列表行尾显示可更新徽标;点它确认后才原位覆盖升级。
相关术语
- 自动更新
- 在本项目语境里,自动更新指无需人工干预即可拿到新版本,而非软件内置的更新开关。dsh 本体通过 npx 的 latest 解析或系统计划任务定时执行更新命令来实现,DSH plugin 则通过市场启动时检查更新给出可更新提示。— dshplugin/dsh-plugin-hub GitHub 仓库
- StartCalendarInterval
- StartCalendarInterval 是 macOS launchd plist 中的定时键,用 Hour、Minute 等字段声明在固定时间点执行任务,用于把更新命令排进每日计划。— Apple developer documentation
- systemd timer
- systemd timer 是 systemd 的定时单元,由一个 .timer 文件与配套的 .service 文件组成,用 OnCalendar 声明执行时刻、WantedBy=timers.target 启用,适合定时执行 dsh 更新命令。— systemd 官方文档
- 可更新徽标
- 可更新徽标是 DSH Plugin Hub 已安装列表中的状态标记,当插件有新版本时出现在该行行尾,点击后确认即原位覆盖升级。它是插件侧的更新提醒,与 dsh 本体版本无关。— dshplugin/dsh-plugin-hub GitHub 仓库
来源
- npm Docs - npx· npm
- Apple developer documentation - launchd.plist(StartCalendarInterval)· Apple
- systemd 官方文档 - systemd.timer· freedesktop.org
- dshplugin/dsh-plugin-hub GitHub 仓库· GitHub
- DeepSeek Harness 桌面端 README· deepseek-ai