Device Heartbeat Monitor
by @houziershi
Monitor remote device online status via heartbeat pings to healthchecks.io. Use when user asks to check if a device is online or offline, user reports device...
clawhub install device-heartbeatπ About This Skill
name: device-heartbeat description: "Monitor remote device online status via heartbeat pings to healthchecks.io. Use when user asks to check if a device is online or offline, user reports device unreachable or no response from remote OpenClaw, user wants to set up device monitoring or heartbeat, user asks about network connectivity of their devices, or user says ping my device or is my Mac online."
Device Heartbeat Monitor
Monitor device online status using heartbeat pings to healthchecks.io (free tier).
Architecture
Device β every N min β curl GET β healthchecks.io β missed? β alert user
User asks "device online?" β agent reads state file or queries API β answer
Security Warning
Never share the full ping URL (https://hc-ping.com/UUID) in any chat message. Messaging platforms (Feishu, Slack, etc.) auto-fetch URLs for link previews, which creates false heartbeat pings. Only pass the UUID portion separately.
Quick Commands
Check local status (no API key needed):
bash scripts/status.sh
View recent logs:
tail -20 ~/.openclaw/logs/heartbeat.log
Read state file directly:
cat ~/.openclaw/logs/heartbeat-state.json
Setup
1. Create a Check on healthchecks.io
Register at https://healthchecks.io, create a Check. Set Period = 3 min, Grace = 5 min. See references/healthchecks-setup.md for details.
2. Install heartbeat service
bash scripts/setup.sh "https://hc-ping.com/UUID" 180
3. Verify
bash scripts/status.sh
Remote Status Check (from another device)
bash scripts/check.sh "READONLY_API_KEY" "CHECK_UUID"
Response fields: status (up/down/grace), last_ping (timestamp).
Multi-Device Setup
Create a separate Check per device on healthchecks.io. Each device gets its own UUID. Run setup.sh on each device with its unique URL.
Uninstall
bash scripts/uninstall.sh
Features
~/.openclaw/logs/heartbeat-state.json for quick local queriesTroubleshooting
bash scripts/setup.sh "URL" 180 to reinstallcurl -v "URL"~/.openclaw/logs/heartbeat.log and heartbeat-error.logβοΈ Configuration
1. Create a Check on healthchecks.io
Register at https://healthchecks.io, create a Check. Set Period = 3 min, Grace = 5 min. See references/healthchecks-setup.md for details.
2. Install heartbeat service
bash scripts/setup.sh "https://hc-ping.com/UUID" 180
3. Verify
bash scripts/status.sh
π Tips & Best Practices
bash scripts/setup.sh "URL" 180 to reinstallcurl -v "URL"~/.openclaw/logs/heartbeat.log and heartbeat-error.log