OpenClaw Session Cleanup
Use this skill when the runtime becomes unstable after long uptime, especially on small hosts such as 1 vCPU / 2 GB RAM.
Trigger Pattern
Treat these as the main signals:
Sessions: 10+ activeAgents: 5+browser control service timeoutgateway 1006 abnormal closure- repeated gateway disconnects or slow recovery after idle periods
What To Do
- Inspect the current runtime state.
- Prune stale sessions first.
- If the runtime stays unhealthy, clear sessions.
- Reduce runtime ceilings for sessions, agents, and browsers.
- Add recurring cleanup and a watchdog when the host is expected to run for days.
Immediate Commands
Run:
openclaw sessions
openclaw sessions prune
openclaw status
If the runtime is still unhealthy, escalate to:
openclaw sessions clear
openclaw status
Healthy target after cleanup:
Sessions: 1-3Agents: 3Gateway reachablebrowser running
Safe Runtime Defaults
For 1 vCPU / 2 GB RAM, prefer:
maxSessions = 5sessionTTL = 30mmaxAgents = 3maxBrowsers = 1swap = 2G
Use the starter config at {baseDir}/templates/openclaw.json.
Automation
Install periodic pruning:
bash "{baseDir}/scripts/install-cron-prune.sh"
Install watchdog unit files:
bash "{baseDir}/scripts/install-watchdog.sh"
Render a tuned runtime config:
bash "{baseDir}/scripts/render-openclaw-config.sh"
Browser Constraint
Treat browser control as the heaviest resource consumer on a small VPS.
Recommended mode:
openclaw browser start --single
Swap
If the host has no swap, add 2G:
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
free -h
References
- Detailed runbook:
{baseDir}/docs/openclaw.session_cleanup_v1.md - Runtime template:
{baseDir}/templates/openclaw.json - Watchdog service:
{baseDir}/templates/openclaw-watchdog.service - Watchdog timer:
{baseDir}/templates/openclaw-watchdog.timer