更新
OpenClaw 正在快速演进(尚未达到“1.0”版本)。请将更新视为基础设施部署:更新 → 运行检查 → 重启(或使用openclaw update,它会自动重启)→ 验证。
推荐:重新运行网站安装程序(就地升级)
首选的更新路径是从网站重新运行安装程序。它会检测现有安装,进行就地升级,并在必要时运行openclaw doctor。
-
如果您不希望再次运行入门向导,请添加
--no-onboard。 -
对于源码安装,请使用:
git pull --rebase。
- 对于全局安装,脚本在后台使用
npm install -g openclaw@latest。 - 旧版说明:
openclaw仍作为兼容性适配层提供。
在更新之前
- 了解您的安装方式:是全局安装(npm/pnpm)还是源码安装(git clone)。
- 了解您的网关运行方式:是前台终端还是受监督的服务(launchd/systemd)。
- 备份您的自定义配置:
- 配置:
~/.openclaw/openclaw.json - 凭据:
~/.openclaw/credentials/ - 工作区:
~/.openclaw/workspace
- 配置:
更新(全局安装)
全局安装(任选其一):--tag <dist-tag|version> 可以一次性指定安装标签或版本。
有关通道语义和发布说明,请参阅 开发通道。
注意:在 npm 安装中,Gateway 在启动时会记录一条更新提示(检查当前通道标签)。可通过 update.checkOnStart: false 禁用此功能。
然后:
- 如果您的网关以服务形式运行,建议使用
openclaw gateway restart,而不是直接杀死 PID。 - 如果您已锁定到特定版本,请参阅下方的“回滚/固定版本”部分。
更新(openclaw update)
对于源码安装(git checkout),建议使用:
- 要求工作树保持干净。
- 切换到所选通道(标签或分支)。
- 拉取代码,并基于配置的上游(开发通道)进行变基。
- 安装依赖项、构建代码、构建 Control UI,并运行
openclaw doctor。 - 默认情况下会重启 Gateway(使用
--no-restart可跳过重启)。
openclaw update 将尝试通过您的包管理器进行更新。如果无法检测到安装,请改用“更新(全局安装)”。
更新(控制界面 / RPC)
Control UI 提供“更新与重启”功能(RPC:update.run)。它执行以下操作:
- 运行与
openclaw update相同的源码更新流程(仅适用于 git checkout)。 - 写入重启标记,并附带结构化报告(位于 stdout/stderr 尾部)。
- 重启 Gateway,并使用报告向最后一个活动会话发送 ping。
更新(从源码)
从仓库检出开始: 首选:- 当您运行打包的
openclaw二进制文件(openclaw.mjs) 或使用 Node 运行dist/时,pnpm build至关重要。 - 如果您从仓库检出运行且未进行全局安装,可使用
pnpm openclaw ...执行 CLI 命令。 - 如果您直接从 TypeScript 运行(
pnpm openclaw ...),通常无需重新构建,但配置迁移仍然适用 → 请运行 doctor。 - 在全局安装和 git 安装之间切换非常容易:安装另一种形式的版本,然后运行
openclaw doctor,以便 Gateway 服务入口点被重写为当前安装。
始终运行:openclaw doctor
Doctor是一个“安全更新”命令。它的设计极其简单:修复、过渡和警告。
注意:如果您是源码安装(git checkout),openclaw doctor 会先提示您运行 openclaw update。
典型操作包括:
- 迁移已弃用的配置键或旧版配置文件位置。
- 审计 DM 策略,并对存在风险的“开放”设置发出警告。
- 检查 Gateway 的健康状况,并可能建议重启。
- 检测并迁移旧版 Gateway 服务(launchd/systemd;旧版 schtasks)到当前的 OpenClaw 服务。
- 在 Linux 上,确保启用 systemd 用户 linger 功能,以使 Gateway 在用户注销后仍能持续运行。
启动/停止/重启网关
CLI(适用于所有操作系统):- macOS launchd(应用捆绑的 LaunchAgent):
launchctl kickstart -k gui/$UID/bot.molt.gateway(使用bot.molt.<profile>;旧版com.openclaw.*仍可用) - Linux systemd 用户服务:
systemctl --user restart openclaw-gateway[-<profile>].service - Windows(WSL2):
systemctl --user restart openclaw-gateway[-<profile>].servicelaunchctl/systemctl仅在服务已安装时有效;否则请运行openclaw gateway install。
回滚/固定版本(出现问题时)
固定版本(全局安装)
安装一个已知良好的版本(将<version> 替换为上一个正常工作的版本):
npm view openclaw version。
然后重启并再次运行医生:
按日期固定版本(源码)
选择某个日期的提交(例如:“截至2026年1月1日的main分支状态”):如果您遇到困难
- 再次运行
openclaw doctor并仔细阅读输出(它通常会告诉你如何修复)。 - 查看:故障排除
- 在 Discord 中提问:https://channels.discord.gg/clawd