核心用法
self-updater 是 OpenClaw 生态的自动化维护技能,通过 PowerShell 脚本实现核心与技能的双通道智能更新。执行基础检查无需参数;添加 -AutoUpdate 自动应用更新;-SmartTiming 启用空闲检测与 cron 避让机制,确保不打断用户任务。
显著优点
- 智能调度:读取 ~/.openclaw/cron/jobs.json 解析用户定时任务,结合 Windows API 检测系统空闲,避免高峰期更新
- 双轨更新:同时处理 OpenClaw 核心(npm)与已安装技能(clawhub),保持生态同步
- 自愈能力:更新后自动重启网关并通过 HTTP 健康检查验证恢复,降低人工介入
- 灵活模式:支持仅更新技能、仅检查(dry-run)、静默运行等场景
潜在局限
- 平台绑定:依赖 Windows API 进行空闲检测,跨平台迁移需重写检测逻辑
- 外部依赖:需要 npm、clawhub CLI 及网络连接,离线环境无法使用
- 权限要求:PowerShell 需 Bypass 执行策略,企业环境可能受限
- 配置耦合:依赖特定路径的 JSON 配置文件,目录结构变更会导致失效
适合人群
- 运维人员需定期维护多节点 OpenClaw 部署
- 追求自动化、减少人工值守的技术用户
- 有明确低峰维护窗口的生产环境
常规风险
- 自动更新可能引入版本兼容性问题,建议先 dry-run
- 网关重启期间服务中断,需评估业务容忍度
- npm 全局更新可能影响系统其他 Node 项目