为天喜(Tianxi)PC 客户端确定版本更新策略而做的横向调研:claude-code、antigravity、openclaw(深入)+ opencode(参考)。2026-08-22 完成,结论部分为对天喜的建议初稿。

对比总表

维度Claude CodeAntigravityOpenClawOpenCode(参考)
产品形态终端 CLI(native 二进制)VS Code fork 桌面 IDECLI + Gateway 服务 + macOS 桌面 app终端 CLI
分发形态native 安装脚本(推荐)/ npm / Homebrew / WinGetdmg / exe / tar.gz 安装包npm / git 源码 / install.sh / Docker / Sparkle appcastcurl 脚本 / npm / brew / scoop / choco
更新触发native 装:后台自动更新;claude update 手动;brew/winget 装默认不自动默认自动更新到最新;设置 Update Mode 可改 manual/noneopenclaw update 一站式手动;auto-updater 默认关闭,开启后按时策略执行opencode upgrade [ver] 手动;autoupdate 配置可开/关
更新通道claude install stable|latest|<具体版本>单通道 latest;releases 页提供全部历史版本手动下载stable / beta / dev 三通道(npm dist-tag: latest/beta/dev;git 装=dev),可 --tag 指定指定任意版本号升级
灰度/节奏未公开灰度机制;后台静默应用未公开;随 latest 直推有明确灰度:stable 延迟 6h + 12h 确定性 jitter 分散应用;beta 每小时检查即装无
更新粒度/重启二进制整体替换;下次启动生效整包更新,重启生效包级原子替换;Gateway 服务协调重启(—no-restart 可选)二进制替换
原子性保障多版本目录并存(~/.local/share/claude/versions)—临时 prefix 安装→校验 dist 清单→切换;失败 --omit=optional 重试—
回滚指定版本重装releases 页下载旧版重装npm i -g openclaw@<ver> 钉版本 / git 钉 commit;doctor + restart 收尾指定版本重装
可管控性(企业侧)~/.claude.json autoUpdates:false;DISABLE_AUTOUPDATER 环境变量update.mode=manual/noneOPENCLAW_NO_AUTO_UPDATE=1 环境变量硬禁;update.auto.enabled;checkOnStart 可关autoupdate: false 配置
升级质量保障claude doctor 检查—openclaw doctor(配置迁移+健康检查)+ 完整 e2e 升级测试集(通道切换/迁移/upgrade-survivor/坏插件)—
版本号风格semver 2.1.xsemver 2.x(双产品线:Antigravity 2.0 / Antigravity IDE)CalVer 2026.x.y(+ -beta.n)semver 0.x/1.x

各家要点展开

Claude Code(Anthropic)

  • 安装方式决定更新行为:官方推荐 native 安装(curl -fsSL https://claude.ai/install.sh | bash),后台自动更新;npm/WinGet/Homebrew 装的默认不自动更新(交给各自包管理器)
  • 手动:claude update|upgrade(检查并安装);claude install [stable|latest|<ver>] 装 native 指定通道/版本
  • 多版本保留:~/.local/share/claude/versions/ 下并存多个版本(本机实测 2.1.173、2.1.81 与在用的 2.1.239 并存)——更新失败可退
  • 管控:~/.claude.json 的 autoUpdates: false(本机即关闭)、autoUpdatesProtectedForNative、DISABLE_AUTOUPDATER 环境变量
  • 启发:安装方式即更新策略,同一产品按分发渠道区分更新行为;版本保留目录是廉价回滚方案

Antigravity(Google)

  • VS Code fork,继承 VS Code 更新机制:设置里 Update: Mode = default(启动时检查自动更)/ manual(手动检查)/ none(永不检查)——默认自动,但一键可关
  • 官网 releases 页公开全部历史版本下载,官方明示「想留在旧版,把 Update Mode 设为 manual 或 none」——回滚 = 手动下载旧版重装
  • 多平台多架构包齐全(dmg 双架构 / exe 双架构 / tar.gz 双架构);两条产品线并行(Antigravity 2.0 与 Antigravity IDE 各自版本序列)
  • 启发:IDE 类桌面应用的更新预期就是「默认自动 + 设置可关 + 旧版可下载」,简单直接

OpenClaw(最成熟,重点参考)

  • 一站式更新命令:openclaw update 自动识别安装类型(npm/git)→ 拉最新 → 跑 openclaw doctor(配置迁移+体检)→ 重启 Gateway;支持 --channel beta/dev、--tag、--dry-run 预览、--json、openclaw update status --json 查状态
  • 三通道:stable(npm latest)/ beta / dev(git main);beta 通道缺失或落后于 stable 时自动回退;当前版本是 beta 时自动留在 beta 通道(通道粘性)
  • 安装形态可切换且保留状态:--channel dev = npm 装切到 git 源码装;--channel stable 切回;~/.openclaw 的配置/凭据/工作区不受影响
  • 自动更新默认关闭,开启后分通道策略:
    • stable:延迟 6h + 12h 确定性 jitter → 错峰灰度,避免全网同时踩新版问题
    • beta:每小时检查、立即应用
    • dev:不自动更,手动
  • 原子替换:全局 npm 更新先装到临时 prefix → 校验打包产物清单 → 整体切换,避免新旧文件叠加;失败以 --omit=optional 重试一次
  • 硬开关:OPENCLAW_NO_AUTO_UPDATE=1 环境变量可无视配置强禁自动更新(事故止血用)
  • 回滚:npm i -g openclaw@<版本> 钉版本或 git 钉 commit,然后 doctor + gateway restart
  • macOS 桌面端走 Sparkle appcast.xml(app 内更新 + 发布说明)
  • 版本号 CalVer(2026.5.12-beta.1),升级有完整 e2e 测试(通道切换/配置迁移/upgrade-survivor/坏插件恢复/重启鉴权)

OpenCode(参考)

  • opencode upgrade [version] 手动升级,--method 自动/指定安装方式(curl/npm/pnpm/bun/brew/choco/scoop)——升级路径感知安装方式
  • 配置 "autoupdate": false 可关闭自动更新(本机即关闭)
  • 形态最简:单二进制 + 手动升级 + 一个配置开关

对天喜的建议(初稿)

天喜语境:联想 PC 预装生态的 AI 助手客户端(PC Settings App 升级而来),Windows 为主、装机量大、AI 产品迭代快。

  1. 双通道起步:stable + beta(内部 dogfood/灰度用户),版本号建议 CalVer(2026.x.y)便于对齐发布节奏;通道选择进设置页
  2. 默认自动更新 + 错峰灰度:学 OpenClaw——stable 更新延迟 N 小时 + 随机/确定性 jitter 分散安装,避免全量同时踩雷;首版可简化为「按用户 ID 分桶分批放量」
  3. 可管控是硬需求(PC 厂商预装 + 企业客户):
    • 设置内一键关闭自动更新(学 Antigravity 的 update.mode)
    • 环境变量/策略文件级硬禁用(学 OPENCLAW_NO_AUTO_UPDATE),支持企业 IT 锁定版本
  4. 原子更新 + 版本保留:临时目录安装→校验→切换(学 OpenClaw);保留上一版本目录(学 Claude Code),更新失败/用户反馈差时可回滚或自动回退
  5. 更新后体检:客户端内置 doctor——启动时校验关键组件、自动修复/上报(学 openclaw doctor);AI 助手依赖的模型网关凭据、插件状态都要查
  6. 客户端版本与能力版本解耦:AI 产品迭代快主要体现在模型/提示词/技能(云端),客户端 shell 更新频率应显著低于能力迭代——把「能力热更」与「客户端更新」分开设计,减少用户感知的更新次数
  7. Windows 侧工程:静默后台下载 + 下次启动应用(不打断使用);差分包(delta)控制带宽;更新弹窗带 changelog(学 Sparkle appcast 的发布说明)
  8. 升级测试集:参考 OpenClaw 的 e2e(通道切换/迁移/升级存活/坏包恢复),天喜至少覆盖:升级中断恢复、配置迁移、回滚路径

关系