auto-updater-pro
v1.1.0Enhanced auto-updater with detailed logging, missed run recovery, and Gateway restart protection.
Installation
Auto-Updater Pro
Enhanced auto-updater with detailed logging, missed run recovery, and Gateway restart protection.
Version: 1.1.0 (Updated 2026-02-22)
What's New: - ✅ Detailed logging at each step (prevents state loss on restart) - ✅ Missed run recovery (auto-runs if Gateway was offline) - ✅ 30-second delay after updates (prevents interruption) - ✅ Email report support (less intrusive than chat messages) - ✅ Better error handling and retry logic
Note: This is an enhanced version of the original auto-updater skill with production-ready features.
What It Does
This skill sets up a daily cron job that:
- Updates Clawdbot itself (via
clawdbot doctoror package manager) - Updates all installed skills (via
clawdhub update --all) - Messages you with a summary of what was updated
- New: Logs every step to prevent state loss on Gateway restart
- New: Auto-recovers if the scheduled time was missed
Setup
Quick Start
Ask Clawdbot to set up the auto-updater:
Set up daily auto-updates for yourself and all your skills.
Or manually add the cron job:
clawdbot cron add
--name "Daily Auto-Update"
--cron "0 4 * * *"
--tz "America/Los_Angeles"
--session isolated
--wake now
--deliver
--message "Run daily auto-updates: check for Clawdbot updates and update all skills. Report what was updated."
Recommended Configuration (v1.1.0+)
For production use, add these settings to your cron job:
{
"schedule": {
"expr": "0 4 * * *",
"kind": "cron",
"tz": "Asia/Shanghai"
},
"missedRunPolicy": "run-immediately",
"payload": {
"kind": "agentTurn",
"message": "...",
"timeoutSeconds": 600
}
}
Key Settings:
- missedRunPolicy: "run-immediately" - Auto-runs if Gateway was offline at scheduled time
- timeoutSeconds: 600 - Allow 10 minutes for updates to complete
- tz: "Asia/Shanghai" - Set to your timezone
Configuration Options
| Option | Default | Description |
|---|---|---|
| Time | 4:00 AM | When to run updates (use --cron to change) |
| Timezone | System default | Set with --tz |
| Delivery | Main session | Where to send the update summary |
| Timeout | 300s | Recommended: 600s for npm updates |
| Missed Run | None | Recommended: run-immediately |
How Updates Work
Clawdbot Updates
For npm/pnpm/bun installs:
npm update -g clawdbot@latest
# or: pnpm update -g clawdbot@latest
# or: bun update -g clawdbot@latest
For source installs (git checkout):
clawdbot update
Always run clawdbot doctor after updating to apply migrations.
Skill Updates
clawdhub update --all
This checks all installed skills against the registry and updates any with new versions available.
Update Summary Format
After updates complete, you'll receive a message like:
🔄 Daily Auto-Update Complete
**Clawdbot**: Updated to v2026.1.10 (was v2026.1.9)
**Skills Updated (3)**:
- prd: 2.0.3 → 2.0.4
- browser: 1.2.0 → 1.2.1
- nano-banana-pro: 3.1.0 → 3.1.2
**Skills Already Current (5)**:
gemini, sag, things-mac, himalaya, peekaboo
No issues encountered.
Detailed Logging (v1.1.0+)
To prevent state loss during Gateway restarts, the update process logs every step:
Log File Location
~/.openclaw/workspace/memory/openclaw-update-YYYY-MM-DD.md
Log Format
# OpenClaw 更新日志 YYYY-MM-DD
## 更新前
- 开始时间:HH:mm:ss
- 当前版本:x.x.x
- 最新版本:x.x.x
## 更新中
- 更新开始:HH:mm:ss
- 更新命令:...
- 更新完成:HH:mm:ss
- 验证版本:x.x.x
## 更新后
- 状态:已是最新 / 已更新 / 更新失败
- 报告发送:成功 / 失败
- 完成时间:HH:mm:ss
## 更新内容
(从 CHANGELOG 或 npm 获取)
Six-Phase Update Process
Phase 1: Preparation - Record start time - Check current version - Write to log file immediately
Phase 2: Check for Updates - Check latest version (npm view) - Append to log file - Compare versions
Phase 3: Execute Update
- Record update start
- Run openclaw update run or npm install -g openclaw@latest
- Immediately log completion
- Verify new version
Phase 4: Persist State - Append full results to log - Wait 3 seconds for disk sync
Phase 5: Send Report - Send email/chat report - Log delivery status
Phase 6: Delay Restart (Critical!) - Wait 30 seconds before any Gateway restart - Ensures npm processes complete - Prevents state loss
Manual Commands
Check for updates without applying:
clawdhub update --all --dry-run
View current skill versions:
clawdhub list
Check Clawdbot version:
clawdbot --version
Troubleshooting
Updates Not Running
- Verify cron is enabled: check
cron.enabledin config - Confirm Gateway is running continuously
- Check cron job exists:
clawdbot cron list - Check if missed run policy is set:
missedRunPolicy: "run-immediately"
Update Failures
If an update fails, the summary will include the error. Common fixes:
- Permission errors: Ensure the Gateway user can write to skill directories
- Network errors: Check internet connectivity
- Package conflicts: Run
clawdbot doctorto diagnose - Gateway restart interruption: Check log file for partial completion
Gateway Restart During Update
If Gateway restarts during update (common with npm installs):
- Check log file:
~/.openclaw/workspace/memory/openclaw-update-*.md - Verify version:
openclaw --version - Manually send report if needed (log file has all info)
Disabling Auto-Updates
Remove the cron job:
clawdbot cron remove "Daily Auto-Update"
Or disable temporarily in config:
{
"cron": {
"enabled": false
}
}
Best Practices
1. Schedule During Low Activity
Choose a time when you're unlikely to be using the system:
"expr": "0 4 * * *" // 4:00 AM
2. Enable Missed Run Recovery
Prevents missing updates if Gateway is offline:
"missedRunPolicy": "run-immediately"
3. Use Email for Reports
Less intrusive than chat messages: - Configure email-163-com or similar skill - Send plain text reports - Include log file path
4. Log Everything
Always write to log file before sending reports: - Prevents state loss - Enables debugging - Provides audit trail
5. Wait After Updates
Add 30-second delay before any Gateway restart:
sleep 30
Resources
- Clawdbot Updating Guide
- ClawdHub CLI
- Cron Jobs
- Change Log
Version History
v1.1.0 (2026-02-22)
Improvements: - ✅ Added detailed logging at each step - ✅ Added missed run recovery policy - ✅ Added 30-second delay after updates - ✅ Added email report support - ✅ Improved error handling
Bug Fixes: - 🐛 Fixed state loss on Gateway restart - 🐛 Fixed missed scheduled runs - 🐛 Fixed report delivery failures
v1.0.0 (2026-01-13)
- ✅ Initial release
- ✅ Basic daily update check
- ✅ Simple report format
Published: 2026-02-22
Maintainer: OpenClaw Team
License: MIT