跳转到主要内容
OpenClaw 提供四个更新频道:
  • stable:npm dist-tag latest。推荐大多数用户使用。
  • extended-stable:npm dist-tag extended-stable。一个全新的、滞后的 受支持月份包频道。本版本中它仅适用于包安装,且仅支持前台运行。
  • beta:npm dist-tag beta。当 beta 缺失或早于当前稳定版本时, 回退到 latest
  • devmain 的移动头(git)。发布时使用 npm dist-tag devmain 用于实验和活跃开发;它可能包含未完成的功能或破坏性变更。不要将它用于生产 Gateway 网关。
稳定构建通常会先发布到 beta,经过验证后再提升到 latest,且不递增版本号。维护者也可以直接发布到 latest。dist-tag 是 npm 安装的事实来源。

切换频道

openclaw update --channel stable
openclaw update --channel extended-stable
openclaw update --channel beta
openclaw update --channel dev
--channel 会把选择持久化到配置中的 update.channel,并驱动两种 安装路径:
频道npm/包安装git 安装
stabledist-tag latest最新稳定 git 标签(排除 -alpha.N-beta.N-rc.N-dev.N-next.N-preview.N-canary.N-nightly.N 以及其他命名预发布后缀)
extended-stable解析公开 npm extended-stable 选择器,验证精确选中的包,并安装该精确版本。失败时关闭,不回退到 latestbetadev不支持:OpenClaw 保持检出不变,并要求你使用包安装
betadist-tag beta,当 beta 缺失或更旧时回退到 latest最新 beta git 标签;当 beta 缺失或更旧时回退到最新稳定 git 标签
devdist-tag dev(少见;大多数 dev 用户使用 git 安装)拉取、将检出变基到上游 main 分支、构建,并重新安装全局 CLI
对于 dev git 安装,默认检出位置是 ~/openclaw(或在设置 OPENCLAW_HOME 时为 $OPENCLAW_HOME/openclaw);可用 OPENCLAW_GIT_DIR 覆盖。
要并行保留 stable 和 dev,请使用两个独立检出,并让每个 Gateway 网关指向自己的检出。

一次性指定版本或标签

使用 --tag 为单次更新指定特定 dist-tag、版本或包规范,不会更改持久化频道:
# Install a specific version
openclaw update --tag 2026.4.1-beta.1

# Install from the beta dist-tag (one-off, does not persist)
openclaw update --tag beta

# Switch to the moving GitHub main checkout (persistent)
openclaw update --channel dev

# Install a specific npm package spec
openclaw update --tag openclaw@2026.4.1-beta.1

# Install from GitHub main once without persisting the channel
openclaw update --tag main
说明:
  • --tag 仅适用于包(npm)安装;git 安装会忽略它。
  • 该标签不会持久化;下一次 openclaw update 会使用配置的频道。
  • --tag main 会在那一次运行中映射到 npm 兼容规范 github:openclaw/openclaw#main。对于持久化的移动 main 安装,请使用 openclaw update --channel dev(包安装会切换到 git 检出) 或使用安装器的 git 方法重新安装: curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method git --version main。 npm 安装路径会直接拒绝 GitHub/git 源目标,并改为提示你使用 git 方法。
  • 降级保护:如果目标版本早于当前版本,OpenClaw 会提示确认(可用 --yes 跳过)。
  • Extended-stable 始终使用其已验证的精确包目标。它不是 --tag extended-stable 的一次性别名,且 --tag 不能与有效的 extended-stable 频道组合使用。
  • --channel beta 不同于 --tag beta:频道流程可以在 beta 缺失或更旧时回退到 stable/latest,而 --tag beta 始终只在那一次运行中指向原始 beta dist-tag。

Dry run

预览 openclaw update 会执行什么操作,而不实际更改:
openclaw update --dry-run
openclaw update --channel beta --dry-run
openclaw update --tag 2026.4.1-beta.1 --dry-run
openclaw update --dry-run --json
dry run 会报告有效频道、目标版本、计划操作,以及是否需要降级确认。

插件和频道

使用 openclaw update 切换频道也会同步插件来源:
  • dev 会将已安装且存在内置对应项的插件切回其内置(git 检出)来源。
  • stablebeta 会恢复 npm 安装或 ClawHub 安装的插件包。
  • extended-stable 会将符合条件、意图为裸/default 或 latest 的官方 npm 插件解析到精确的已安装核心版本。它不会在运行时查询插件 @extended-stable 标签。
  • npm 安装的插件会在核心更新完成后更新。

检查当前状态

openclaw update status
显示活动频道(以及决定它的来源:配置、git 标签、git 分支、已安装版本或默认值)、安装类型(git 或包)、当前版本和更新可用性。

打标签最佳实践

  • 为你希望 git 检出落到的版本打标签:稳定版使用 vYYYY.M.PATCH, beta 使用 vYYYY.M.PATCH-beta.N。诸如 -alpha.N-rc.N-next.N 这样的命名预发布后缀不是稳定或 beta 目标。
  • 旧版数字稳定标签(如 vYYYY.M.PATCH-1v1.0.1-1)仍会被识别为稳定 git 标签,以保持兼容。
  • vYYYY.M.PATCH.beta.N(点分隔)也会被识别以保持兼容;优先使用 -beta.N
  • 保持标签不可变:绝不要移动或复用标签。
  • npm dist-tag 仍是 npm 安装的事实来源:
    • latest -> stable
    • extended-stable -> 滞后的受支持月份包版本
    • beta -> 候选构建或 beta 优先的稳定构建
    • dev -> main 快照(可选)

macOS 应用可用性

Beta 和 dev 构建可能包含 macOS 应用发布。这没问题:
  • git 标签和 npm dist-tag 仍可独立发布。
  • 在发布说明或更新日志中注明“此 beta 没有 macOS 构建”。

相关