Source Code
๐ Update Plus
A comprehensive backup, update, and restore tool for your OpenClaw environment. Protect your config, workspace, and skills with automatic rollback, encrypted backups, and cloud sync.
Quick Start
# Check for available updates
update-plus check
# Create a full backup
update-plus backup
# Update everything (creates backup first)
update-plus update
# Preview changes (no modifications)
update-plus update --dry-run
# Restore from backup
update-plus restore openclaw-backup-2026-01-25-12:00:00.tar.gz
Features
| Feature | Description |
|---|---|
| Full Backup | Backup entire environment (config, workspace, skills) |
| Auto Backup | Creates backup before every update |
| Auto Rollback | Reverts to previous commit if update fails |
| Smart Restore | Restore everything or specific parts (config, workspace) |
| Multi-Directory | Separate prod/dev skills with independent update settings |
| Encrypted Backups | Optional GPG encryption |
| Cloud Sync | Upload backups to Google Drive, S3, Dropbox via rclone |
| Notifications | Get notified via WhatsApp, Telegram, or Discord |
| Connection Retry | Auto-retry on network failure (configurable) |
Installation
git clone https://github.com/hopyky/update-plus.git ~/.openclaw/skills/update-plus
Add to PATH
mkdir -p ~/bin
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
ln -sf ~/.openclaw/skills/update-plus/bin/update-plus ~/bin/update-plus
Configuration
Create ~/.openclaw/update-plus.json:
{
"backup_dir": "~/.openclaw/backups",
"backup_before_update": true,
"backup_count": 5,
"backup_paths": [
{"path": "~/.openclaw", "label": "config", "exclude": ["backups", "logs"]},
{"path": "~/.openclaw/workspace", "label": "workspace", "exclude": ["node_modules"]}
],
"skills_dirs": [
{"path": "~/.openclaw/skills", "label": "prod", "update": true}
],
"notifications": {
"enabled": false,
"target": "+1234567890"
},
"connection_retries": 3,
"connection_retry_delay": 60
}
Commands
| Command | Description |
|---|---|
update-plus check |
Check for available updates |
update-plus backup |
Create a full backup |
update-plus update |
Update OpenClaw and all skills |
update-plus update --dry-run |
Preview changes |
update-plus restore <file> |
Restore from backup |
update-plus install-cron |
Install automatic updates (daily 2 AM) |
update-plus uninstall-cron |
Remove cron job |
Changelog
v4.0.3
- Check for updates BEFORE backup (skip backup if already up to date)
- No more wasted bandwidth/storage when nothing to update
v4.0.2
- Use curl instead of ping for connection check (more reliable)
- Works through firewalls and when Mac wakes from sleep
v4.0.1
- Added Homebrew path detection (
/opt/homebrew/bin) for cron jobs - Added
~/binto cron PATH for local symlinks - Updated example config with clearer workspace structure
v4.0.0
- OpenClaw only (removed moltbot/clawdbot legacy support)
- Simplified configuration and paths
- Config: ~/.openclaw/update-plus.json
v3.x
- Multi-bot support (openclaw, moltbot, clawdbot)
- Connection retry for cron jobs
Author
Created by hopyky
License
MIT