OpenClaw 配置回滚管理技能,提供配置修改前的自动备份、超时保护和自动回滚功能。
~/.openclaw/backups/bash
~/.openclaw/scripts/prepare-config-change.sh "修改描述" "验证事项 1,验证事项 2"
参数:
修改描述 - 简要描述修改内容(必需)验证事项 - 逗号分隔的验证事项列表(可选)示例:
bash
~/.openclaw/scripts/prepare-config-change.sh "启用 obsidian 技能" "验证技能状态,验证 Gateway 启动"
输出:
编辑 ~/.openclaw/openclaw.json
必须在 5 分钟内完成:
bash
openclaw gateway restart
脚本: ~/.openclaw/scripts/rollback-guardian.sh
Cron 任务: 每分钟执行一次
bash
*/1 * * * * ~/.openclaw/scripts/rollback-guardian.sh
状态行为无配置修改直接退出(安静模式)Gateway 正常运行清除状态文件(任务完成)Gateway 未运行 + 未超时继续等待Gateway 未运行 + 超时执行回滚
文件作用scripts/prepare-config-change.sh修改准备脚本scripts/rollback-guardian.sh超时回滚守护scripts/config-alias.sh交互式助手backups/配置备份目录docs/PENDING_VERIFICATION.md待验证事项记录
bash
cp $(ls -t ~/.openclaw/backups/*.json | head -1) ~/.openclaw/openclaw.json
openclaw gateway restart
bash
openclaw skills enable openclaw-config-rollback
复制脚本 bash
# 脚本已在工作区
ls ~/.openclaw/workspace/skills/config-rollback/scripts/
设置权限 bash
chmod +x ~/.openclaw/workspace/skills/config-rollback/scripts/*.sh
设置 Cron bash
(crontab -l 2>/dev/null | grep -v "rollback-guardian"; echo "*/1 * * * * ~/.openclaw/workspace/skills/config-rollback/scripts/rollback-guardian.sh") | crontab -
验证 bash
crontab -l | grep rollback
text
修改配置
↓
执行 prepare-config-change.sh
├─ 自动备份到 backups/
├─ 创建状态文件 .config-modified-state
└─ 记录到 PENDING_VERIFICATION.md
↓
5 分钟倒计时开始
↓
守护进程每分钟检查
├─ 无状态文件 → 直接退出(安静模式)
├─ Gateway 正常运行 → 清除状态文件 ✅
├─ Gateway 未运行 + 未超时 → 继续等待
└─ Gateway 未运行 + 超时 → 自动回滚 ⚠️
prepare-config-change.shdocs/CONFIG_CHANGELOG.mdPENDING_VERIFICATION.md 中的验证状态docs/CONFIG_QUICKREF.md - 快速参考CONFIG_CHANGE_RULES.md - 详细规则docs/CONFIG_MEMORY_SYSTEM.md - 记忆系统设计skills/brain2claw-content-manager/work/cases/001-config-management-flow.md - 设计案例版本: 1.0.2
作者: 小麦 🌲
日期: 2026-03-16