Raspberry Pi health check and OpenClaw status. One command to see if Pi is alive and what it did overnight.
Check Pi health and OpenClaw state. Best-effort; if Pi unreachable, say so and stop.
ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no [email protected] "
echo '=== UPTIME ==='
uptime
echo '=== DISK ==='
df -h / | tail -1
echo '=== MEMORY ==='
free -h | head -2
echo '=== CPU TEMP ==='
vcgencmd measure_temp 2>/dev/null || echo 'N/A'
echo '=== DOCKER ==='
docker ps --format '{{.Names}} {{.Status}}' 2>/dev/null || echo 'no docker'
" 2>/dev/null || echo "PI UNREACHABLE - not on home network?"
ssh -o ConnectTimeout=5 [email protected] "
echo '=== OPENCLAW SERVICES ==='
systemctl is-active openclaw-dashboard 2>/dev/null || echo 'dashboard: inactive'
systemctl is-active openclaw-scraper 2>/dev/null || echo 'scraper: inactive'
echo '=== RECENT CRON OUTPUT (last 10 lines) ==='
tail -10 /var/log/syslog 2>/dev/null | grep -i 'cron\|openclaw' || echo 'no recent cron activity'
echo '=== PRICES.DB SIZE ==='
ls -lh ~/prices.db 2>/dev/null || echo 'prices.db not found'
" 2>/dev/null
PI STATUS - [date]
CONNECTION: [reachable/unreachable]
UPTIME: [X days]
DISK: [used/total]
MEMORY: [used/total]
CPU TEMP: [temp]
OPENCLAW: dashboard [active/inactive] | scraper [active/inactive]
PRICES.DB: [size]
RECENT: [any cron activity summary]
If unreachable, report that and stop. Don't retry or troubleshoot.