核心用法
restart-safe-workflow 是一套面向 OpenClaw 网关的可恢复重启流程,通过 checkpoint 持久化 + 健康验证 + 自动 resume 三重机制,确保重启过程不会导致任务中断或用户无感知。
执行模式
- 标准安全重启 (
restart-safe.sh run):自动执行 doctor 预检 → 状态落盘 → 网关重启 → 健康验活 → 触发 resume - 用户可见回执(可选
--notify-channel):向飞书等渠道发送重启前后通知,满足运维 SLA 可见性要求 - 一键验收 (
restart-acceptance.sh):默认模拟流程不真重启,支持--with-restart进行真实链路压测
关键产物
- 状态文件
state/restart/<task-id>.json:记录before-restart/resume-triggered/restart-failed等关键节点 - 验收报告
acceptance-<task-prefix>.log:用于团队审计与故障回溯
显著优点
1. 零任务丢失设计:checkpoint 持久化保证重启后可精准 resume 到原任务
2. 可观测性强:内置 --notify-channel 支持飞书等企业 IM,用户可感知重启进度
3. 生产级验收:acceptance 脚本支持干跑/湿跑双模式,低风险验证流程可靠性
4. 标准 SOP 内嵌:核心规范已融合进 skill,降低团队执行成本
潜在缺点/局限性
--with-restart真实验收会实际中断网关,需避开业务高峰- 用户可见通知需显式配置
--notify-channel/--notify-target,默认静默 system event为系统级恢复信号,非聊天窗口消息,用户感知需依赖额外通知层- 当前仅支持 bash + python3 环境,Windows 原生支持未提及
适合人群
- SRE/运维工程师:负责 OpenClaw 网关变更与重启
- 平台开发者:需要集成"安全重启"能力到 CI/CD 或运维平台
- 值班 on-call:需快速执行带验收的重启,确保 SLA 不违约
常规风险
| 风险项 | 等级 | 说明 |
|--------|------|------|
| 真实重启中断业务 | 中 | 仅限 `--with-restart`,需审批窗口 |
| 通知配置遗漏 | 低 | 未配 `--notify-target` 时用户无感知 |
| resume 事件丢失 | 低 | 依赖 openclaw CLI,需确保 CLI 版本兼容 |
| 状态文件污染 | 低 | 多并发 task-id 冲突可能导致状态覆盖 |