DeepSeek Harness 怎么更新?dsh 更新完整指南:更新本体(npx、npm、源码)与更新插件两种方式
DeepSeek Harness 的更新分两层:本体更新(npx 自动最新、npm update -g、源码 git pull)与插件更新(插件中心点更新、命令行覆盖安装)。本文按「准备 → 更新本体 → 更新插件 → 更新后检查」四步走,每步给出可操作命令,并附常见问题排查表。
概览:更新分「本体」和「插件」两层
本体是程序、插件是扩展,两者独立更新,别混为一谈。 理解分层才不会混淆(来源):
- 本体更新:换
@deepseek-ai/dsh包的新版本; - 插件更新:把已装插件升级到新版本;
- 两层独立:更新本体不会自动更新插件,反之亦然。
两层各自的方式一览:
| 更新对象 | 方式一 | 方式二 | 方式三 |
|---|---|---|---|
| dsh 本体 | npx(自动最新) | npm update -g | git pull + 构建 |
| DSH 插件 | 插件中心点「更新」 | 命令行覆盖安装 | 批量更新 |
第一步:更新前准备
先记录版本、备份会话,再动手,更新出问题也有退路。 操作步骤:
- 记录当前版本号,方便更新后对比、回退:
dsh --version
# 或 npx 方式
npx @deepseek-ai/dsh --version
- 备份关键会话数据:
cp -r ~/.dsh/sessions ~/.dsh-sessions-backup
- 确认磁盘空间充足、网络稳定;更新过程中保持终端窗口运行、不要中断。
第二步:更新本体
本体的更新方式取决于当初怎么装的,选对应命令执行。
方式一:npx 方式(自动更新)
npx 每次运行都拉最新版,无需手动更新。 直接启动:
npx @deepseek-ai/dsh web
兜底:版本没变时清缓存重跑:
npm cache clean --force && rm -rf ~/.npm/_npx
npx @deepseek-ai/dsh web
方式二:npm 全局安装更新
当初全局安装的,一条命令升级到最新版。
npm update -g @deepseek-ai/dsh
执行后核对版本号(dsh --version);报 EACCES 权限错误时加 sudo,或改用 npx 方式。
方式三:源码构建更新
当初 git clone 源码构建的,拉取最新代码后重新构建。
# 进入源码仓库目录
cd ~/dev/deepseek-harness
# 拉取最新代码(本地有改动先 git stash)
git pull
# 重新安装依赖并构建(与当初安装一致)
npm install
# 按仓库文档执行构建命令,例如 npm run build(以实际为准)
构建完成后重启 dsh web 即用上新版本。
第三步:更新插件
插件更新推荐用插件中心可视化操作,一条条点或批量更新都行。
方式一:插件中心图形化更新(推荐)
- 打开设置 → 插件中心 → 已安装(需先装 DSH Plugin Hub);
- 行尾出现「更新」按钮的插件说明有新版本,点更新并在确认弹窗里核对插件与来源;
- 等待覆盖安装完成,进度结束后刷新页面生效;
- 多个插件要更新时逐个点,或在列表里按需批量处理。
方式二:命令行覆盖安装
不想开界面就用命令行,直接覆盖安装到最新版:
# 覆盖安装:已装过会重新拉取最新版
dsh plugin --profile web add <包名>
插件更新失败时(如 git 源缺构建产物),可在 DSH Plugin Hub 改装 npm 版,来源更稳。

第四步:更新后检查
更新完做一轮验证,确认「真更新」而不是「假更新」。 操作步骤:
- 核对版本号已更新(
dsh --version); - 打开
http://127.0.0.1:3080确认界面正常; - 打开插件中心已安装列表,确认插件状态正常、版本已刷新;
- 到系统日志确认无 update 类报错,通知中心也会记录成功与失败。
更新失败?常见问题与解决
更新失败先看报错类型,再对症处理。 常见问题清单:
| 问题 | 可能原因 | 解决办法 |
|---|---|---|
| 本体版本没变 | npx 缓存残留 | npm cache clean --force 后重跑,或删 ~/.npm/_npx |
npm update -g 报 EACCES | 全局目录无写权限 | sudo npm update -g @deepseek-ai/dsh,或改用 npx |
| 下载超时 | 默认 npm 源慢 | npm config set registry 换镜像后重试 |
git pull 报冲突 | 本地改过源码 | git stash → git pull → git stash pop |
| 插件更新按钮不亮 | 插件已是最新版 | 无需更新;或清缓存后重进插件中心 |
| 插件更新后不工作 | 插件与本版 dsh 不兼容 | 重启 dsh → 插件中心重新安装,或改装 npm 版 |
| 更新过程中断 | 网络断开 / 终端被关 | 重跑更新命令;本体/插件分开逐步重试 |
| 不确定是否更新成功 | 没核对版本 | dsh --version 对比 npm view @deepseek-ai/dsh version |
总结速查
一句话:本体插件分层更新——本体按安装方式(npx / npm update -g / git pull + 构建),插件在插件中心点「更新」或命令行覆盖安装,更新前备份、更新后验证。 四个提醒:
- 更新前记版本、备份会话,出问题有退路;
- 本体和插件是两回事,别指望一个命令全搞定;
- 插件优先用插件中心,可视化、有进度、有记录;
- 更新后四连查:版本号、网页、插件列表、系统日志。
来源:dsh CLI README、dshplugin/dsh-plugin-hub、DeepSeek Harness 官方文档 - Quickstart
常见问题
两层:一是本体更新,换 @deepseek-ai/dsh 包的新版本;二是插件更新,把已装插件升级到新版本。两者独立,更新本体不会自动更新插件,插件更新也不动本体。
npx 方式每次运行自动拉最新;npm 全局安装执行 npm update -g @deepseek-ai/dsh;源码构建在仓库目录 git pull 后重新构建。更新后重启 dsh web 并核对版本号。
装好 DSH Plugin Hub 后,打开设置 → 插件中心 → 已安装,行尾出现「更新」按钮的插件点一下并确认即可;命令行可用 dsh plugin --profile web add <包名> 覆盖安装到最新版。
记下当前版本号(dsh --version)便于回退;确认磁盘空间充足、网络稳定;关键会话数据可备份 ~/.dsh/sessions;更新过程中保持终端窗口运行、不要中断。
先重启 dsh web 并刷新页面;仍异常就在插件中心重新安装对应插件,或用命令行覆盖安装;再查看系统日志定位具体报错,按对应排查文章处理。
来源
- dsh CLI README· deepseek-ai
- dshplugin/dsh-plugin-hub GitHub 仓库· GitHub
- DeepSeek Harness 官方文档 - Quickstart· deepseek-harness