Skills openclaw-updater

Safely update OpenClaw with pre-flight checks and rollback support. Use when updating OpenClaw, checking for updates, or recovering from a failed update. Handles workspace git commits, config backups, version rollback, and post-update verification.

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/bigsan/openclaw-updater" ~/.claude/skills/clawdbot-skills-openclaw-updater && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/bigsan/openclaw-updater" ~/.openclaw/skills/clawdbot-skills-openclaw-updater && rm -rf "$T"
manifest: skills/bigsan/openclaw-updater/SKILL.md
source content

OpenClaw Updater

Safely update OpenClaw with automatic pre-flight safety checks and rollback capability.

Pre-Update Checklist

Before running

openclaw update
, always run the pre-update script:

bash scripts/pre-update.sh

Optional: specify a backup script to run during pre-flight:

BACKUP_SCRIPT=~/repo/scripts/backup-openclaw.sh bash scripts/pre-update.sh

The script will:

  1. Find all
    workspace*
    directories under
    ~/.openclaw/
  2. Git commit any uncommitted changes (init git if missing)
  3. Back up
    openclaw.json
    to
    /tmp/openclaw.json.bak
  4. Run the backup script if provided
  5. Save the current version to
    /tmp/openclaw-prev-version.txt

Telegram Notification Setup

The update script sends success/failure notifications via Telegram Bot API (bypasses OpenClaw gateway, so it works even if the update breaks the gateway).

Create

~/.openclaw/.telegram-notify.env
:

TELEGRAM_BOT_TOKEN=<your-bot-token>
TELEGRAM_CHAT_ID=<your-chat-id>
chmod 600 ~/.openclaw/.telegram-notify.env

The bot token is the same one used by your OpenClaw Telegram channel. Chat ID can be found via

openclaw directory
.

Update (with notification)

Run the full update with automatic pre-flight + notification:

bash scripts/update.sh

This will: pre-flight → update → wait for gateway → notify via Telegram.

Update (manual)

After pre-flight passes:

openclaw update

Post-Update Verification

After updating, verify:

openclaw status
openclaw gateway status

Check that:

  • Version shows the new release
  • Gateway is running
  • All agents are responsive

Rollback

If the update breaks something:

bash scripts/rollback.sh

The script will:

  1. Read the saved previous version from
    /tmp/openclaw-prev-version.txt
  2. Install that version via
    npm install -g openclaw@<version>
  3. Optionally restore
    openclaw.json
    from backup
  4. Restart the gateway

Manual Rollback

If the rollback script isn't available:

# Install specific version
npm install -g openclaw@<version>

# Restore config
cp /tmp/openclaw.json.bak ~/.openclaw/openclaw.json

# Restart
openclaw gateway restart

Restore from Full Backup

If config and workspaces are both corrupted:

# Find latest backup
ls -t ~/repo/backups/openclaw-*.tar.gz | head -1

# Restore (overwrites ~/.openclaw/)
tar xzf ~/repo/backups/openclaw-<timestamp>.tar.gz -C ~/