/install keepalive
OpenClaw Gateway Keepalive
Ensure the OpenClaw gateway process stays running across reboots, crashes, sleep, and network interruptions.
Quick Start (Recommended)
Register as a system service with one command (all platforms):
openclaw gateway install
Effects:
- ✅ Auto-start on boot — no terminal needed
- ✅ Runs in background — survives terminal close
- ✅ Survives screen lock — independent of user session
- ✅ Auto-restart on crash — OS-level process supervision
Verify:
openclaw gateway status
Expected output:
Service: Scheduled Task (registered)✅RPC probe: ok✅Port: [127.0.0.1:18789]✅
Commands
| Command | Description |
|---|---|
openclaw gateway install |
Register as system service (one-time) |
openclaw gateway uninstall |
Remove system service |
openclaw gateway start |
Start gateway manually |
openclaw gateway stop |
Stop gateway |
openclaw gateway restart |
Restart gateway |
openclaw gateway status |
Check gateway status |
openclaw logs --follow |
Tail real-time logs |
Platform Differences
Windows
- Registers via Task Scheduler (schtasks)
- Service name:
OpenClaw Gateway - Survives screen lock and user session disconnect
macOS
- Registers via launchd plist
- Supports
KeepAlive=truefor auto-restart
Linux
- Registers via systemd service
- Supports
Restart=on-failurepolicy
Prevent Sleep (Critical)
The gateway requires the computer to stay awake. Configure power settings:
Windows
# List current power plans
powercfg /list
# Never sleep when plugged in
powercfg /change standby-timeout-ac 0
# Allow display off but keep system awake
powercfg /change monitor-timeout-ac 10
macOS
# Prevent system sleep
sudo pmset -a sleep 0
# Prevent disk sleep
sudo pmset -a disksleep 0
# Allow display off but keep system running
sudo pmset -a displaysleep 10
Linux
# Disable suspend
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
Network Recovery
The gateway's WebSocket connection auto-reconnects after network interruptions using exponential backoff (1s → 2s → 4s → ...).
Manual restart if needed:
openclaw gateway restart
Troubleshooting
Gateway Unresponsive
openclaw gateway status # Check process status
openclaw logs --follow # View real-time logs
openclaw gateway restart # Attempt restart
Service Not Registered
openclaw gateway install # Re-register
openclaw gateway status # Verify
Frequent Crashes
- Check logs with
openclaw logs --followfor crash cause - Ensure sufficient memory (Node.js process needs at least 512MB free)
- Check for port conflicts (default: 18789)
- Update to latest version
Advanced: External Process Supervisors
If gateway install is not stable enough, use external tools:
Option A: pm2 (Recommended, Cross-Platform)
npm install -g pm2
pm2 start openclaw -- gateway start
pm2 save
pm2 startup # Generate startup command
Option B: NSSM (Windows Only)
nssm install OpenClaw "C:\Program Files\
odejs\
ode.exe" "openclaw gateway start"
nssm set OpenClaw AppExit Default Restart
nssm start OpenClaw
Option C: Windows Task Scheduler (Manual)
# Create auto-start task with 1-minute restart on failure
schtasks /create /tn "OpenClaw Gateway" /tr "openclaw gateway start" /sc onstart /rl highest /f
# Or use Task Scheduler GUI for finer restart policies
Healthcheck Scripts
Schedule these with cron or Task Scheduler for periodic health checks with auto-restart.
Windows (healthcheck.cmd)
@echo off
REM OpenClaw Gateway Healthcheck Script (Windows)
REM Run periodically via Task Scheduler or cron
REM Exit code 0 = healthy, 1 = failed to recover
echo [%date% %time%] Checking OpenClaw Gateway status...
openclaw gateway status >nul 2>&1
if %errorlevel% neq 0 (
echo [%date% %time%] Gateway not responding. Attempting restart...
openclaw gateway restart >nul 2>&1
timeout /t 5 >nul
openclaw gateway status >nul 2>&1
if %errorlevel% neq 0 (
echo [%date% %time%] CRITICAL: Gateway failed to restart!
exit /b 1
) else (
echo [%date% %time%] Gateway restarted successfully.
exit /b 0
)
) else (
echo [%date% %time%] Gateway is running normally.
exit /b 0
)
Linux/macOS (healthcheck.sh)
#!/bin/bash
# OpenClaw Gateway Healthcheck Script (Linux/macOS)
# Usage: bash healthcheck.sh - can be scheduled via cron
# Example cron: */5 * * * * /path/to/healthcheck.sh >> /var/log/openclaw-healthcheck.log 2>&1
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
echo "[$TIMESTAMP] Checking OpenClaw Gateway status..."
if openclaw gateway status > /dev/null 2>&1; then
echo "[$TIMESTAMP] Gateway is running normally."
exit 0
else
echo "[$TIMESTAMP] Gateway not responding. Attempting restart..."
openclaw gateway restart > /dev/null 2>&1
sleep 5
if openclaw gateway status > /dev/null 2>&1; then
echo "[$TIMESTAMP] Gateway restarted successfully."
exit 0
else
echo "[$TIMESTAMP] CRITICAL: Gateway failed to restart!"
exit 1
fi
fi
Save to a location of your choice and schedule:
- Windows: Task Scheduler → Run every 5 minutes
- Linux/macOS:
*/5 * * * * /path/to/healthcheck.sh >> /var/log/openclaw-healthcheck.log 2>&1
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install keepalive - After installation, invoke the skill by name or use
/keepalive - Provide required inputs per the skill's parameter spec and get structured output
What is Openclaw Keepalive?
Keep OpenClaw gateway running 24/7 on a laptop or workstation. Use when: (1) user reports gateway disconnects or crashes, (2) user asks how to make OpenClaw... It is an AI Agent Skill for Claude Code / OpenClaw, with 216 downloads so far.
How do I install Openclaw Keepalive?
Run "/install keepalive" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Openclaw Keepalive free?
Yes, Openclaw Keepalive is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Openclaw Keepalive support?
Openclaw Keepalive is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Openclaw Keepalive?
It is built and maintained by lgy2020 (@lgy2020); the current version is v1.0.0.