← 返回列表
未验证
检测 Claude Code 与 Codex CLI 版本并一键升级
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/26 · 已提供中文文档
Claude Code / Codex CLI 更新检测、提示,以及针对 DeepSeek Harness 的一键渠道更新
综合分
28.5
GitHub 分
28.5
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add leonardoxr/dsh-harness-updater该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-settings-plugins@deepseek-ai/dsh-client-ui-sidebar@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings@deepseek-ai/schemastery用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-harness-updater
DeepSeek Harness 的代理工具更新器。 检测本地安装的
Claude Code 和
Codex CLI,将其与最新发布的版本进行比较,
在 DSH Web UI 中提示,并且仅在你明确点击后运行适用于对应渠道的正确升级命令。
灵感来自 T3 Code 的提供商维护模型。
功能
1. 检测每个位于 PATH 中的代理工具(支持 Windows .cmd/.ps1 shim),并在
有限超时时间内探测 --version。
2. 根据解析出的二进制文件路径判断安装渠道:
原生安装程序、npm / pnpm / bun 全局安装、Homebrew 或仅支持手动更新。
3. 检查 npm(registry.npmjs.org//latest)中的最新版本,超时时间为
4 s,缓存时间为 1 h。离线时可通过设置完全禁用。
4. 提示:DSH 设置的「插件」分区中会有一张常驻 Updates 卡片,列出
每个代理工具及其 current → latest 与内联的 Update 按钮。在 DSH Native
下运行时还会显示原生应用自身的自更新状态。
5. 仅在点击时更新——绝不会静默更新。运行器按渠道锁串行执行,
强制执行硬超时并终止进程树,限制捕获的输出量,然后
重新探测以验证,并报告 succeeded、unchanged 或 failed。
| 检测到的渠道 | 更新命令 |
| --- | --- |
| Claude 原生 (~/.local/bin/claude*) | claude update |
| npm 全局安装 | npm install -g @latest |
| pnpm 全局安装 | pnpm add -g @latest |
| bun 全局安装 | bun install -g @latest |
| Homebrew | brew upgrade claude-code / brew upgrade --cask codex |
| 其他任何渠道(WinGet、独立安装程序) | 手动更新:提供可复制的提示,不支持一键更新 |
更新器使用显式参数调用 npm,并允许安装 CLI 所需的 npm 生命周期脚本。
安全模型
- 每个路由都受仅限回环地址 + 同源限制;更新是仅限 POST 的变更操作。
- 每个代理工具一次只能进行一项更新;共享同一包管理器的更新会在
共享锁后排队,而不是相互竞争。
- Harness 环境中的 DISABLE_UPDATES=1 会阻止所有自动更新路径。
- 子进程超时时会以进程树为单位终止(Unix signals / taskkill /t /f)。
- 如果没有用户点击,绝不会启动更新;任何更新都不会由定时器触发。
安装(本地开发)
在你的 DSH profile 中引用此插件:
// ~/.dsh/profiles/web/package.json
"dependencies": { "dsh-harness-updater": "link:C:/path/to/dsh-harness-updater" }
添加打包的 patch 条目(仓库中的 cordis.patch.yml 会插入该条目),在 profile 中运行
pnpm install,然后重启 DSH Web(host 部分)。
开发
pnpm install
pnpm check # typecheck + build + test
配置
所有字段都可以在 DSH Settings → Plugins → Harness updater 中编辑(重启后生效):
| 字段 | 默认值 | 含义 |
| --- | --- | --- |
| enableUpdateChecks | true | 查询 npm 中的最新版本 |
| statusRefreshIntervalMs | 900000 | 后台状态轮询间隔(最小值 60000) |
| hoverRefreshMinAgeMs | 30000 | 允许强制刷新前的最小时间间隔(最小值 5000) |
| probeTimeoutMs | 5000 | 每次 --version 探测的超时时间(最小值 1000) |
| latestTimeoutMs | 4000 | 每次 registry 查询的超时时间(最小值 1000) |
| latestVersionTtlMs | 3600000 | registry 结果缓存生命周期(最小值 30000) |
| updateTimeoutMs | 300000 | 更新命令的硬超时时间(最小值 30000) |
| claudeCommand / codexCommand / npmCommand | claude/codex/npm | 要使用的可执行文件 |
许可证
MIT同作者(leonardoxr)的其他插件
扫码进群