Install
openclaw skills install status-monitorManages OpenClaw Agent status upload scripts, periodically syncing agent online status to the cloud monitoring platform
openclaw skills install status-monitor~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py
OpenClaw's built-in cron executes the script periodically:
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py
Trigger phrases: say "sync status", "restart sync" or "同步状态", "重启同步状态" — OpenClaw will trigger execution on schedule.
Use --fork to start a real background daemon:
| Command | Description |
|---|---|
python3 scripts/status_uploader.py start --fork | Start daemon |
python3 scripts/status_uploader.py start --fork --interval 10 | Start with custom interval (minutes) |
python3 scripts/status_uploader.py stop | Stop service |
python3 scripts/status_uploader.py status | Check service status |
python3 scripts/status_uploader.py set-interval <minutes> | Set sync interval |
python3 scripts/status_uploader.py test | Single test upload |
Examples:
# Start daemon
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py start --fork
# Start with 10-minute interval
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py start --fork --interval 10
Triggers when any of the following conditions are met:
start --forkAdditional triggers: say "start status-monitor service", "restart status-monitor service" or "启动status-monitor服务", "重启status-monitor服务".
When the skill runs, first check for the token in these locations:
MONITOR_PLATFORM_TOKEN~/.openclaw/credentials/openclaw-status-monitor.jsonIf no token is found, guide the user to register/login:
Prompt the user:
No monitoring token found. Let me help you set up...
Please choose a sign-in method:
1. Existing user: visit https://openclaw-agent-monitor.vercel.app and click Sign In
2. New user: visit https://openclaw-agent-monitor.vercel.app and click Sign Up
After signing in:
- Go to the Settings page
- Generate and copy your Agent Token
- Send me the generated token
Wait for user to reply with token
Save the token:
~/.openclaw/credentials/~/.openclaw/credentials/openclaw-status-monitor.json:
{
"agentToken": "user-provided-token",
"createdAt": "2026-03-29T10:00:00.000Z",
"monitorUrl": "https://openclaw-agent-monitor.vercel.app"
}
Validate the token
✅ Token configured successfully!
Starting upload service...
- Running initial sync test...
- ✅ Service started successfully!
Monitor platform: https://openclaw-agent-monitor.vercel.app
Upload interval: 5 minutes
Start command:
python3 scripts/status_uploader.py start --fork
Management commands:
- Say "sync status" to manually trigger an upload
- Say "check status monitor" to check service status
- Say "stop status monitor" to stop the service
- Say "restart status monitor" to restart the service
if [ -f ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py ]; then
echo "Script exists"
else
echo "Script not found"
fi
# Start daemon with --fork (recommended)
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py start --fork --interval 10
# Method 1: specify at startup
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py start --fork --interval 15
# Method 2: use set-interval command
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py set-interval 15
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py stop
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py status
~/.openclaw/logs/status_uploader_error.log
~/.openclaw/logs/status_uploader.log
# View recent errors
tail -50 ~/.openclaw/logs/status_uploader_error.log
# View service logs
tail -50 ~/.openclaw/logs/status_uploader.log
Log rotation: log files auto-rotate when exceeding 10MB, format: status_uploader.20260329_183500.log
python3 ~/.openclaw/skills/openclaw-status-monitor/scripts/status_uploader.py test
The script only reads all agent IDs from openclaw.json and uploads them — it does not perform any offline detection.
Offline detection is handled by the monitoring platform (openclaw-agent-monitor):
lastActiveTimestamp based on upload time~/.openclaw/credentials/openclaw-status-monitor.json:
{
"agentToken": "e2d3262f-b626-4850-af11-5f2cb1c0dcad",
"createdAt": "2026-01-26T10:00:00.000Z",
"monitorUrl": "https://openclaw-agent-monitor.vercel.app",
"syncIntervalMinutes": 5
}
~/.openclaw/logs/status_uploader.log~/.openclaw/logs/status_uploader_error.log~/.openclaw/logs/status_uploader.pid~/.openclaw/credentials/openclaw-status-monitor.jsonDuring initialization:
❌ No monitoring token detected
Please complete these steps first:
1. Visit https://openclaw-agent-monitor.vercel.app
2. Click Sign In / Sign Up to log in or register
3. After logging in, generate an Agent Token on the Settings page
4. Send me the token
Example: My token is abc123-def456...
❌ Upload script not found
Please reinstall the skill or contact the developer.
Check the error log:
cat ~/.openclaw/logs/status_uploader_error.log
Common errors:
❌ Token validation failed
Your token may have expired or is invalid.
Please obtain a new token:
1. Log in to https://openclaw-agent-monitor.vercel.app
2. Go to the Settings page
3. Click Generate to create a new Token
4. Send me the new token
User: 启用状态监控 / enable status monitor Agent: Checking monitoring configuration...
❌ No Agent Token detected
Please complete these steps first:
User: 我的 Token 是 e2d3262f-b626-4850-af11-5f2cb1c0dcad / My token is e2d3262f-b626-4850-af11-5f2cb1c0dcad Agent: Validating token...
✅ Token validated successfully!
Starting upload service...
✅ Status monitor enabled!
Management commands:
User: 查看状态监控 / check status monitor Agent: Checking upload service status...
✅ Service is running PID: 12345 Sync interval: 5 minutes Log file: ~/.openclaw/logs/status_uploader.log
Recent logs:
2026-03-29 10:30:01 - INFO - Upload success: ['main', 'coding']
2026-03-29 10:35:02 - INFO - Upload success: ['main', 'coding']
Error log: none
User: 停止状态监控 / stop status monitor Agent: Stopping upload service...
✅ Service stopped
To restart, say "start status monitor" / "启动状态监控".
User: 同步状态 / sync status Agent: Executing manual upload...
Online agents: ['main', 'coding'] Upload result: ✅ Success
User: 重启状态监控 / restart status monitor Agent: Restarting upload service...
✅ Service restarted, PID: 67890
User: 查看状态监控错误日志 / check status monitor error log Agent: Checking error logs...
Recent errors:
2026-03-29 09:15:03 - HTTP 401: Unauthorized
2026-03-29 09:20:01 - Network: [Errno 8] nodename nor servname provided
Suggestion: Check if the token is correct, or check your network connection.