Token导航 LogoToken导航

Agent Skill · 运维

openclaw-emergency-rollback(OpenClaw emergency rollback 安全)

openclaw-emergency-rollback 用于补充运维相关能力,适合在 OpenClaw 中需要让 Agent 承接运维相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

openclaw-emergency-rollback 是运维类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为调用外部服务;许可证为 MIT-0,第三方扫描有提醒项,按安装量在运维类的 954 个 Skill 里排第 621。

总安装 4,315周安装 178GitHub Stars 公开资料未说明下载 1,410核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.3

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:openclaw-emergency-rollback(OpenClaw emergency rollback 安全)
来源仓库:https://github.com/encryptshawn/openclaw-emergency-rollback
安装命令:
openclaw skills install openclaw-emergency-rollback
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install openclaw-emergency-rollback

这个 Skill 是做什么的

运维类 Skill 处理部署、监控、日志和云资源,多数需要较高的执行权限。

OpenClaw 配置变更的死人开关系统,保障高危操作的安全性。自动回滚错误配置至上一稳定版本,防止系统进入不可用状态。适用于误修改 openclaw.json 或核心组件后的紧急恢复场景。需提前定义回滚触发条件与备份策略,否则可能丢失近期变更。强烈建议在变更前手动备份当前配置,作为最后一道防线。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install openclaw-emergency-rollback;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要调用外部服务,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

openclaw-emergency-rollback 怎么安装?

在终端执行 openclaw skills install openclaw-emergency-rollback。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

openclaw-emergency-rollback 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

openclaw-emergency-rollback 需要什么权限?

权限级别是调用外部服务。该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

openclaw-emergency-rollback 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

openclaw-emergency-rollback 用的人多吗?

公开数据是累计安装 4,315 次,近一周安装 178 次,下载 1,410 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

openclaw-emergency-rollback 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理运维类任务、又不想每次都手写提示词的人。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

运维类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
docker-essentials

Docker 基础 · OpenClaw

1,005,15130接触敏感数据MIT-0通过
playwright-scraper-skill

Playwright scraper 技能 · OpenClaw

923,55754接触敏感数据MIT-0有提醒
moltguard

moltguard 搜索 · OpenClaw

825,096110接触敏感数据MIT-0通过
finance-news

财经新闻 · OpenClaw

275,51210需要联网MIT-0有提醒
security-monitor

安全监视器 · OpenClaw

224,1695需要联网MIT-0有提醒
openclaw-emergency-rollback

OpenClaw emergency rollback 安全 · 本页

4,315—调用外部服务MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
openclaw-emergency-rollback
description
>

OpenClaw Emergency Config Rollback

A dead man's switch system for OpenClaw configuration changes. The user takes a snapshot of known-good config, sets a recovery timer, makes changes, and if they don't accept the changes before the timer expires the system automatically restores the last snapshot — with zero AI, zero network, zero user intervention required.

All scripts are Node.js (.mjs), which is already installed as an OpenClaw dependency. No additional packages needed. The system uses detached Node.js timers plus a native OpenClaw gateway:startup hook that re-checks persistent watchdog state on every gateway restart rather than relying on external schedulers that often fail in containerized environments.


First-Time Setup

If ~/.openclaw/rollback/ does not exist, run setup before anything else. Read references/SETUP.md now and follow it completely before proceeding.


Important Note on pkill and Docker/K8s

If you are running OpenClaw as the primary process in a container (PID 1), do not use pkill -f openclaw to restart the gateway. If you use a background Dead Man's Switch, pkill will match the path name of the background script and kill your rescue job instantly.

Instead, use kill -USR1 1 to surgically send the reload signal directly to the root OpenClaw process.

Logical Sabotage vs Invalid JSON

OpenClaw protects itself from invalid JSON by instantly hot-reloading its last known good config before the gateway even restarts. To test destructive recovery properly, you must use Logical Sabotage: feeding OpenClaw perfectly valid JSON that logically breaks routing (e.g., a dummy token like 64 fs and poisoned workspace paths). This proves the rollback recovers from logical failure states.


Restart recovery via native OpenClaw hook

When the config gets sabotaged and OpenClaw restarts, the detached watchdog-timer may die with the old process tree. That is expected.

To make recovery survive pod/container/local restarts, this skill installs a native OpenClaw managed hook at ~/.openclaw/hooks/watchdog-recovery/ listening to gateway:startup.

On every gateway startup, the hook reads persistent ~/.openclaw/rollback/watchdog.json:

  1. If rollback is not armed, it exits immediately.
  2. If rollback is armed and the hard expiry epoch has already passed, it runs

restore-if-armed.mjs immediately.

  1. If rollback is armed and the hard expiry epoch has not passed yet, it respawns

watchdog-timer.mjs for the remaining seconds.

Because the system stores a hard absolute epoch (expiryEpoch) on persistent disk, it doesn't matter how long the restart took: if OpenClaw restarts after expiry, the hook restores immediately; if it restarts before expiry, the hook recreates the timer.

This is the native cross-environment trigger for pod, Docker, and local machine restarts. No AI, internet, cron, or external supervisor is required.


Session Start — Uptime Check (Run Every Session)

At the start of every session, run:

UPTIME=$(systemctl --user show openclaw-gateway \
  --property=ActiveEnterTimestampMonotonic 2>/dev/null \
  | awk -F= '{if($2>0) print int((systime()*1000000-$2)/1000000); else print 999}')

if [ "$UPTIME" = "999" ]; then
  UPTIME=$(ps -o etimes= -p $(pgrep -f "openclaw" 2>/dev/null) 2>/dev/null | tr -d ' ')
fi

If uptime is under 90 seconds AND ~/.openclaw/rollback/watchdog.json exists and shows "armed": true, the gateway just bounced. Open the session with the Watchdog Reminder (see below).

If armed but uptime is over 90 seconds, still check and remind — the user may have connected to a running session mid-timer.

If armed: false or watchdog file doesn't exist, start the session normally.


Watchdog Reminder (show when watchdog is armed)

Run ~/.openclaw/rollback/scripts/watchdog-status.mjs and display:

⚠️  Emergency recovery is armed.

Snapshot [1] "<label>" will auto-restore in ~XX minutes
unless you accept or extend.

Commands:
  • "accept changes"            — disarm watchdog, lock in current config
  • "extend recovery XX minutes" — add more time to the timer
  • "list snapshots"            — show all saved snapshots
  • "restore snapshot 2"        — manually restore snapshot 2 or 3
  • "create snapshot"           — save current state as new snapshot [1]

User Commands Reference

"create snapshot [description]"

Save current OpenClaw config as the new known-good restore point.

  1. Run: ~/.openclaw/rollback/scripts/snapshot.mjs "<description>" "<ai_summary>"
  2. Write an AI summary (1–2 sentences) of the current config state by reading

~/.openclaw/openclaw.json — note the default model, number of agents, any notable tools or channels — and pass it as the second argument

  1. Reply with snapshot confirmation showing all current snapshots (max 3):
✅ Snapshot saved.
[1] Apr 20 2:30 PM — <description>  ← restore target
[2] Apr 19 9:00 AM — <previous label>
[3] Apr 18 4:00 PM — <oldest label>

Slot [1] is always the most recent. Slot [3] is always the oldest. When a 4th snapshot would be created, slot [3] is overwritten as the others shift. Snapshots are never deleted without the user explicitly creating a new one that pushes the oldest out. If the user wants to preserve all three, they can copy slot [3] before creating a new snapshot.


"set emergency recovery XX minutes" / "start emergency recovery XX minutes"

Arm the watchdog dead man's switch.

  1. Run: ~/.openclaw/rollback/scripts/watchdog-set.mjs <minutes>
  2. Reply:
⏱️ Watchdog armed — XX minutes.
Snapshot [1] "<label>" auto-restores at <HH:MM> if not accepted.
Make your changes whenever you're ready.

If no snapshot exists yet, tell the user to create one first before arming.


"extend recovery XX minutes"

Add time to the active watchdog timer.

  1. Run: ~/.openclaw/rollback/scripts/watchdog-extend.mjs <minutes>
  2. Reply with new expiry time and minutes remaining.

"accept changes"

Disarm the watchdog — user is happy with the current config.

  1. Run: ~/.openclaw/rollback/scripts/watchdog-clear.mjs
  2. Reply:
✅ Watchdog disarmed. Your changes are locked in.
Say "create snapshot" to save this config as your new restore point [1].

"list snapshots"

Show all saved snapshots.

Read ~/.openclaw/rollback/manifest.json and display:

Saved snapshots (most recent first):
[1] Apr 20 2:30 PM — "opus model working, github tool added"
    Config: claude-opus-4 default, 2 agents (main, coding), github MCP active
[2] Apr 19 9:00 AM — "initial clean setup"
    Config: claude-sonnet-4 default, 1 agent (main), no extra tools
[3] Apr 18 4:00 PM — "baseline before any changes"
    Config: claude-haiku-4 default, 1 agent (main)

Restore target: [1] (auto-restored if watchdog fires)
Watchdog: ARMED — 14m 32s remaining  [or: NOT ARMED]

"restore snapshot [1|2|3]"

Manually restore a specific snapshot immediately.

  1. Confirm with user: "This will overwrite your current OpenClaw config with

snapshot [N] '<label>' from <timestamp> and restart the gateway. Are you sure?"

  1. On confirmation: run ~/.openclaw/rollback/scripts/restore.mjs <slot>
  2. Gateway restarts. Next session will detect uptime < 90 seconds.
  3. If watchdog was armed, it is disarmed as part of restore.

"test emergency recovery" / "run recovery test"

Run a destructive test of the full recovery pipeline.

Read references/TESTING.md for the complete procedure. This test:

  • Creates a dedicated test snapshot of the current config
  • Arms a 2-minute watchdog
  • Saves a manual recovery copy at ~/.openclaw/rollback/openclaw.recovery
  • Deliberately breaks openclaw.json to simulate a bad config change
  • Restarts the gateway (which will fail to work properly)
  • Waits for either the detached watchdog timer or the native gateway:startup hook to restore automatically

This is destructive. The user will lose access to their AI session for up to 2 minutes while the test runs. Before running, confirm the user understands the risks and has terminal/SSH access to manually recover if something goes wrong.


"how does the rollback work" / "what commands can I use" / "explain emergency rollback"

Respond with this explanation:

OpenClaw Emergency Rollback — How It Works

This skill gives you a safety net for risky config changes. Here's the flow:

1. SNAPSHOT — Before making changes, say:
   "create snapshot — [describe what's working]"
   This saves your current openclaw.json and all agent workspace config files
   (SOUL.md, AGENTS.md, IDENTITY.md, etc.) as a restore point. You can have
   up to 3 snapshots. Snapshot [1] is always your most recent.

2. ARM THE TIMER — When ready to make changes, say:
   "set emergency recovery 30 minutes"
   This starts a countdown. If you don't accept the changes in time, the
   system automatically restores snapshot [1] and restarts OpenClaw — even
   if AI is offline, the server rebooted, or nothing is working.

3. MAKE CHANGES — Edit config, restart the gateway, whatever you need to do.

4. ACCEPT OR RECOVER —
   • If everything works: say "accept changes" to disarm the timer.
   • If something broke and you can't get back in: do nothing. The timer
     fires automatically and restores your last known-good config.
   • If you need more time: say "extend recovery 20 minutes".

Commands:
  "create snapshot [description]"       — save current config as restore point
  "set emergency recovery XX minutes"   — arm the auto-restore timer
  "extend recovery XX minutes"          — add time to active timer
  "accept changes"                      — disarm timer, keep current config
  "list snapshots"                      — show all 3 saved snapshots
  "restore snapshot [1|2|3]"            — manually restore a specific snapshot
  "test emergency recovery"             — destructive test of the full pipeline

The watchdog uses two native local paths:
- a detached background Node timer for the live happy path
- a native OpenClaw `gateway:startup` hook for restart recovery

No external scheduler, no AI, no internet, no anything else required.
On every gateway restart, the startup hook verifies whether the hard epoch timer
expired while OpenClaw was down and restores if so. If it hasn't expired yet,
it respawns a fresh timer to finish the countdown.

Dependencies: Node.js (already installed with OpenClaw), zip, unzip.

What Gets Backed Up

Every snapshot captures exactly these files — no more, no less:

FilePath
Master config~/.openclaw/openclaw.json
Agent workspace files (per agent)<workspace>/SOUL.md
<workspace>/AGENTS.md
<workspace>/USER.md
<workspace>/IDENTITY.md
<workspace>/TOOLS.md
<workspace>/HEARTBEAT.md
<workspace>/BOOT.md (if present)

Workspace paths and agentIds are read dynamically from openclaw.json at snapshot time — covers all configured agents automatically.

Never captured: credentials/, auth-profiles.json, session history, memory logs, workspace content files, .env, Docker/K8s environment config.


Change Log

Append to ~/.openclaw/rollback/logs/change.log when:

  • A snapshot is taken
  • The watchdog is armed, extended, or cleared
  • The user requests a gateway restart (note what changed and watchdog status)
  • The gateway restart is confirmed complete
  • A recovery test is started or completed

Format:

[YYYY-MM-DD HH:MM:SS] <EVENT TYPE>
  <key: value details>
---

Reference Files

  • references/SETUP.md — Read this first if ~/.openclaw/rollback/ does not exist
  • references/TESTING.md — Destructive recovery test procedure and manual fallback
  • references/RESTORE.md — Manual recovery instructions requiring no AI or scripts
  • scripts/ — Node.js scripts (.mjs) — no shell wrappers needed
  • hooks/watchdog-recovery/ — Native OpenClaw startup hook for restart recovery

平台分布

OpenClaw

96.73%
按下载量换算1,364

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

可疑

权限和风险

调用外部服务

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills