OpenClaw 提供三个更新渠道:stable、beta、dev。默认安装走的是 stable,但你可以按需切换。这篇文章基于 官方文档 说清楚三者的区别和怎么用。
三个渠道是什么
| 渠道 | npm dist-tag | 来源 | 稳定性 |
|---|---|---|---|
| stable | latest |
经过测试的正式发布版 | 最高 |
| beta | beta |
正在测试的候选版本 | 中等 |
| dev | dev |
main 分支的最新快照 |
最低 |
官方的发布流程是:先把构建推到 beta 进行测试,测试通过后把同一个构建提升到 stable(latest),版本号不变,只改 dist-tag。所以 dist-tag 是 npm 安装时的实际来源,不是版本号。
stable:绝大多数人应该用这个
stable 是默认渠道,对应 npm 的 latest dist-tag。每次发布之前都经过 beta 阶段测试,是三个渠道里最稳定的。
适合:日常使用、生产环境、对稳定性有要求的场景。
确认当前是否在 stable 渠道:
openclaw update status
beta:想提前体验新功能
beta 是进入正式发布前的测试版,通常比 stable 早几天到一周。功能是完整的,但可能带有还没被发现的 bug。
适合:想早点用到新功能、愿意接受偶尔出问题、能自己排查问题的用户。
需要注意:beta 版本不一定有 macOS App 发布,如果你依赖菜单栏 App,升到 beta 之前先确认这一点。
dev:main 分支的实时快照
dev 跟着 GitHub 的 main 分支走,是三个渠道里最新也最不稳定的。官方做了一个保护机制:切换到 dev 时会在临时工作目录里跑 lint + TypeScript 编译检查,如果最新的 commit 有问题,会自动往前回溯最多 10 个 commit 找到最近一个能编译通过的版本。
适合:插件开发者、想跟进最新改动的贡献者、不怕折腾的技术用户。
dev 渠道有一个重要的行为差异:插件来源不同。切换到 dev 后,OpenClaw 优先使用 git checkout 里捆绑的插件,而不是 npm 安装的插件版本。切换回 stable 或 beta 之后会自动恢复 npm 插件。
怎么切换渠道
切换渠道并立刻更新到对应版本:
# 切换到 stable
openclaw update --channel stable
# 切换到 beta
openclaw update --channel beta
# 切换到 dev(会自动做 git checkout)
openclaw update --channel dev
切换渠道是持久化的,会写入配置文件,下次运行 openclaw update 时会继续用这个渠道。
如果想同时运行 stable 和 dev 两套环境,官方建议保持两个独立的 git clone,用 OPENCLAW_GIT_DIR 环境变量指定 dev 渠道的目录,让 Gateway 指向 stable 那一套。
一次性指定版本或渠道(不改持久设置)
用 --tag 参数可以临时覆盖一次,不影响已保存的渠道配置:
# 安装指定版本
openclaw update --tag 2026.3.22
# 临时从 beta dist-tag 安装(不持久化)
openclaw update --tag beta
# 从 GitHub main 分支安装(npm tarball 方式)
openclaw update --tag main
# 安装指定的 npm 包规格
openclaw update --tag openclaw@2026.3.22
升级前先预览会做什么
--dry-run 参数可以在不实际安装的情况下看清楚升级计划:
openclaw update --dry-run
openclaw update --channel beta --dry-run
openclaw update --tag 2026.3.22 --dry-run
输出会包括:当前渠道、目标版本、计划操作、是否需要降版本确认。升级大版本前跑一遍是个好习惯。
配置自动更新
自动更新默认是关闭的,需要手动在 ~/.openclaw/openclaw.json 里开启:
{
update: {
channel: "stable",
auto: {
enabled: true,
stableDelayHours: 6,
stableJitterHours: 12,
betaCheckIntervalHours: 1,
},
},
}
几个字段的含义:
| 字段 | 说明 |
|---|---|
stableDelayHours |
stable 版本发布后延迟多少小时再自动安装(默认 6) |
stableJitterHours |
在延迟基础上额外随机抖动的最大时间(默认 12),避免大量实例同时升级 |
betaCheckIntervalHours |
beta 渠道多少小时检查一次更新(默认 1) |
如果不想在 Gateway 启动时看到更新提示,加上:
{
update: {
checkOnStart: false,
},
}
怎么回滚到旧版本
用 --tag 指定旧版本号直接回滚:
openclaw update --tag 2026.3.13
如果是 git checkout 方式安装的,也可以手动切到旧 commit:
git fetch origin
git checkout "$(git rev-list -n 1 --before="2026-01-01" origin/main)"
pnpm install && pnpm build
openclaw gateway restart
一张表总结
| 场景 | 推荐渠道 | 命令 |
|---|---|---|
| 日常使用 / 生产环境 | stable | openclaw update --channel stable |
| 提前体验新功能 | beta | openclaw update --channel beta |
| 插件开发 / 跟进最新改动 | dev | openclaw update --channel dev |
| 一次性安装指定版本 | — | openclaw update --tag 2026.3.22 |
| 预览升级计划 | — | openclaw update --dry-run |
| 回滚到旧版本 | — | openclaw update --tag <旧版本号> |