← 返回列表
未验证
DeepSeek Harness DSH 一键更新
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/20 · 已提供中文文档
DeepSeek Harness (DSH) 一键更新。社区插件——增量 npm tarball、备份与回滚。非 DeepSeek 官方软件。
综合分
27.9
GitHub 分
27.9
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Takinggg/dsh-updater该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-updater
DeepSeek Harness (DSH) 一键更新
社区插件 · 增量 npm tarball · 备份与回滚 · 类似 Codex
安装 ·
工作原理 ·
截图 ·
配置 ·
安全 ·
Français
Hero: HARNESS DSH UPDATER — community plugin for DeepSeek Harness
dsh-updater 为 DeepSeek Harness(@deepseek-ai/dsh)添加了一个 设置 → 更新 面板和一个侧边栏按钮。它会检查 npm 的 next / latest,复制你当前的引擎,仅下载发生变化的包,替换正在运行的引擎,然后重启——或者在笔记本上提示你退出 DSH。
它不是 DeepSeek 官方软件。它不会 fork DSH,不会对源码执行 git pull,也从不运行 sudo 或 curl | bash。
为什么会有这个项目
完整的 npm install @deepseek-ai/dsh 会在内存中重建一个包含 200 个包的 monorepo,并且可能内存溢出(OOM)(我们在 Docker 中遇到了 1 GB 堆内存的情况)。Claude Code / Codex 风格的工具不会在每次版本升级时都重新解析整个依赖宇宙。
这个插件:
1. 复用磁盘上已有的引擎(node_modules、原生插件)。
2. 从 npm registry 获取发生变化的 @deepseek-ai/* tarball。
3. 当版本匹配时保留第三方依赖(commander、koffi 等)。
4. 备份到 $DSH_HOME/engine-bak,并在失败时回滚。
5. 在进程可写的任何地方都能工作:Docker 卷、npm -g、nvm、Windows %APPDATA%\npm、pnpm/yarn 全局、本地 node_modules、npx 缓存。
安装
切勿使用 dsh plugin add github:…(未锁定版本)。克隆此仓库,然后添加绝对路径:
git clone https://github.com/Takinggg/dsh-updater.git
dsh plugin --profile web add /absolute/path/to/dsh-updater
Windows:
dsh plugin --profile web add C:\absolute\path\to\dsh-updater
打开 Settings → Updates,或 Settings 旁边的 Updates 控件。
截图
| 确认并获取 | 成功 |
| --- | --- |
| 更新浮层:从 rc.7 到 rc.8 获取变更的软件包 | DeepSeek Harness 更新后的成功弹窗 |
工作原理
1. 从 process.argv[1] 向上查找来解析 @deepseek-ai/dsh(可用 DSH_ENGINE_DIR 覆盖)。
2. 读取 npm dist-tags next 和 latest。仅当目标版本比正在运行的引擎更新时才提供(不会意外降级)。
3. 备份 → $DSH_HOME/engine-bak。
4. 暂存到 $DSH_HOME/update-stage(绝不使用 Docker 的 /tmp tmpfs)。
5. 增量 tarball 存入 $DSH_HOME/update-cache。注册表使用 Accept: application/json(避免 npm 在版本 URL 上返回 406)。针对异常注册表提供 npm view / npm pack 回退方案。
6. 覆盖安装,对确实发生变更的原生插件可选执行 npm rebuild。
7. 当安装是经典 npm 全局前缀时,恢复 dsh 的 PATH shim。
8. Docker / PID 1 / DSH_ENGINE_PERSIST=1: 进程以 0 退出,以便 Compose 重启它。重新加载后显示成功弹窗。
9. 笔记本电脑: 你退出 DSH 并再次启动它。UI 不会终止你的会话。
incremental-tarballs @deepseek-ai/dsh@ --reuse-engine --stage $DSH_HOME/update-stage
配置
| 变量 | 作用 |
|---|---|
| DSH_ENGINE_DIR | 强制指定引擎文件夹。 |
| DSH_HOME | 备份 / 暂存 / 缓存根目录(默认 ~/.dsh)。 |
| DSH_UPDATE=0 | 锁定更新。 |
| DSH_UPDATE_RESTART=1 / 0 | 强制通过进程退出来重启,或从不重启。 |
| DSH_ENGINE_PERSIST=1 | 受监管的容器(退出以重启)。 |
| DSH_UPDATE_STAGE | 暂存目录。 |
| DSH_UPDATE_CACHE | Tarball 缓存。 |
| DSH_UPDATE_TIMEOUT_MS | 整个任务的预算(默认 12 分钟)。 |
| DSH_UPDATE_MODE | 仅用于显示覆盖。 |
遵循 npm_config_registry、作用域 npm_config_@deepseek-ai:registry、NPM_TOKEN / NODE_AUTH_TOKEN 以用于私有注册表。
安全
- 主机 RPC 在安装前要求 { confirm: true }。
- 目标必须是已发布的 next 或 latest dist-tag。
- 不使用 sudo,不将运行中的 npm -g 安装到 Docker 引擎卷(那可能会清空前缀)。
- 会检查 tarball 路径以防止目录遍历。
- 如果验证失败,会从 engine-bak 自动回滚。
开发
npm test
npm run demo
Node 20+。零运行时依赖。
免责声明
社区插件——并非 DeepSeek 官方软件。DeepSeek 和 DeepSeek Harness 是其所有者的商标。本仓库仅安装已在 npm 上以 @deepseek-ai/dsh 发布的版本。
许可证
MIT扫码进群