Clawdbot Update Skill
Comprehensive backup, update, and restore workflow for Clawdbot installations.
Repository
Upstream:
origin/mainLocal Clone:
~/code/clawdbot(default)
Description
This skill provides a complete, modular update workflow for Clawdbot with dynamic workspace detection:
Configuration files
Agent states and sessions
Credentials and auth tokens
All agent workspaces (auto-detected from config)
Cron jobs and sandboxes
Git repository state
Key Features
✅ Dynamic Workspace Detection - Reads workspace paths from config
✅ Multi-Agent Support - Handles multiple agents automatically
✅ Safe Rollback - Full restore capability
✅ Git Integration - Tracks versions and remotes
✅ Validation - Pre/post checks included
✅ Dry Run - Preview before backup
Files
config.json- Skill configuration (repo URLs, paths)backup-clawdbot-dryrun.sh- Dry run preview (no changes)backup-clawdbot-full.sh- Dynamic full backup scriptrestore-clawdbot.sh- Dynamic restore scriptvalidate-setup.sh- Pre/post update validationcheck-upstream.sh- Check for available updatesUPDATE_CHECKLIST.md- Step-by-step update checklistQUICK_REFERENCE.md- Quick command referenceSKILL.md- This fileREADME.md- Quick start guide
Dynamic Features
Both backup and restore scripts now:
Read workspace paths from
~/.clawdbot/clawdbot.jsonSupport any number of agents
Handle missing workspaces gracefully
Generate safe filenames from agent IDs
When to Use
Trigger this skill when asked to:
"update clawdbot"
"upgrade to latest version"
"backup clawdbot before update"
"restore clawdbot from backup"
"rollback clawdbot update"
Usage
1. Preview Backup (Dry Run)
~/.skills/clawdbot-update/backup-clawdbot-dryrun.sh
Shows:
What files would be backed up
Estimated backup size
Workspace detection results
Disk space availability
Files that would be skipped
No files are created or modified!
2. Create Full Backup
~/.skills/clawdbot-update/backup-clawdbot-full.sh
Backs up:
~/.clawdbot/clawdbot.json(config)~/.clawdbot/sessions/(session state)~/.clawdbot/agents/(multi-agent state)~/.clawdbot/credentials/(auth tokens)~/.clawdbot/cron/(scheduled jobs)~/.clawdbot/sandboxes/(sandbox state)All agent workspaces (dynamically detected!)
Git commit and status
Output: ~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS/
3. Update Clawdbot
Follow the checklist:
cat ~/.skills/clawdbot-update/UPDATE_CHECKLIST.md
Key steps:
Create backup
Stop gateway
Pull latest code
Adjust config for breaking changes
Run doctor
Test functionality
Start gateway as daemon
4. Restore from Backup
~/.skills/clawdbot-update/restore-clawdbot.sh ~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS
Restores:
All configuration
All state files
All workspaces
Optionally: git version
Important Notes
Multi-Agent Setup
This skill is designed for multi-agent setups with:
Multiple agents with separate workspaces
Sandbox configurations
Provider routing (WhatsApp/Telegram/Discord/Slack/etc.)
Breaking Changes in v2026.1.8
CRITICAL:
DM Lockdown: DMs now default to
pairingpolicy instead of openGroups:
telegram.groupsandwhatsapp.groupsare now allowlistsSandbox: Default scope changed to
"agent"from implicitTimestamps: Now UTC format in agent envelopes
Backup Validation
After backup, always verify:
BACKUP_DIR=~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS
cat "$BACKUP_DIR/BACKUP_INFO.txt"
ls -lh "$BACKUP_DIR"
Should contain:
✅
clawdbot.json✅
credentials.tar.gz✅
workspace-*.tar.gz(one per agent)
Config Changes Required
Example: Switch WhatsApp to pairing:
jq '.whatsapp.dmPolicy = "pairing"' ~/.clawdbot/clawdbot.json | sponge ~/.clawdbot/clawdbot.json
Example: Set explicit sandbox scope:
jq '.agent.sandbox.scope = "agent"' ~/.clawdbot/clawdbot.json | sponge ~/.clawdbot/clawdbot.json
Workflow
Standard Update Flow
# 1. Check for updates
~/.skills/clawdbot-update/check-upstream.sh
# 2. Validate current setup
~/.skills/clawdbot-update/validate-setup.sh
# 3. Dry run
~/.skills/clawdbot-update/backup-clawdbot-dryrun.sh
# 4. Backup
~/.skills/clawdbot-update/backup-clawdbot-full.sh
# 5. Stop gateway
cd ~/code/clawdbot
pnpm clawdbot gateway stop
# 6. Update code
git checkout main
git pull --rebase origin main
pnpm install
pnpm build
# 7. Run doctor
pnpm clawdbot doctor --yes
# 8. Test
pnpm clawdbot gateway start # foreground for testing
# 9. Deploy
pnpm clawdbot gateway stop
pnpm clawdbot gateway start --daemon
Rollback Flow
# Quick rollback
~/.skills/clawdbot-update/restore-clawdbot.sh <backup-dir>
# Manual rollback
cd ~/code/clawdbot
git checkout <old-commit>
pnpm install && pnpm build
cp <backup-dir>/clawdbot.json ~/.clawdbot/
pnpm clawdbot gateway restart
Testing After Update
Functionality Tests
[ ] Provider DMs work (check pairing policy)
[ ] Group mentions respond
[ ] Typing indicators work
[ ] Agent routing works
[ ] Sandbox isolation works
[ ] Tool restrictions enforced
New Features
pnpm clawdbot agents list
pnpm clawdbot logs --tail 50
pnpm clawdbot providers list --usage
pnpm clawdbot skills list
Monitoring
# Live logs
pnpm clawdbot logs --follow
# Or Web UI
open http://localhost:3001/logs
# Check status
pnpm clawdbot status
pnpm clawdbot gateway status
Troubleshooting
Common Issues
Gateway won't start:
pnpm clawdbot logs --grep error
pnpm clawdbot doctor
Auth errors:
# OAuth profiles might need re-login
pnpm clawdbot providers login <provider>
Sandbox issues:
# Check sandbox config
jq '.agent.sandbox' ~/.clawdbot/clawdbot.json
# Check per-agent sandbox
jq '.routing.agents[] | {name, sandbox}' ~/.clawdbot/clawdbot.json
Emergency Restore
If something goes wrong:
# 1. Stop gateway
pnpm clawdbot gateway stop
# 2. Full restore
LATEST_BACKUP=$(ls -t ~/.clawdbot-backups/ | head -1)
~/.skills/clawdbot-update/restore-clawdbot.sh ~/.clawdbot-backups/$LATEST_BACKUP
# 3. Restart
pnpm clawdbot gateway start
Installation
Via ClawdHub
clawdbot skills install clawdbot-update
Manual
git clone <repo-url> ~/.skills/clawdbot-update
chmod +x ~/.skills/clawdbot-update/*.sh
License
MIT - see LICENSE
Author
Pascal Schott (@pasogott)
Contribution for Clawdbot
https://github.com/clawdbot/clawdbot