Site Health Monitor
/install site-health-monitor
Site Health Monitor
Monitor one or more websites for health issues. Detect downtime, expiring SSL certs, slow responses, and content changes — then report or alert.
Quick Check (Single URL)
When user asks to check a single URL right now:
- Run
scripts/check_site.sh \x3Curl> - Parse the JSON output
- Present a formatted health report
Monitored Sites Config
For ongoing monitoring, maintain a config at user's chosen location (default: ~/.openclaw/workspace/site-monitor.json):
{
"sites": [
{
"url": "https://example.com",
"name": "Main Site",
"checks": ["uptime", "ssl", "response_time", "content"],
"alert_threshold_ms": 3000,
"ssl_warn_days": 14,
"content_selector": "title"
}
],
"defaults": {
"checks": ["uptime", "ssl", "response_time"],
"alert_threshold_ms": 5000,
"ssl_warn_days": 30
}
}
Health Checks
1. Uptime
- HTTP GET to URL
- Pass: 2xx/3xx status
- Warning: 4xx status
- Fail: 5xx, connection refused, timeout (>10s)
2. SSL Certificate
- Run
scripts/check_ssl.sh \x3Cdomain> - Pass: Valid, >30 days to expiry
- Warning: \x3C30 days to expiry (configurable)
- Fail: Expired, self-signed, or missing
3. Response Time
- Measure TTFB + transfer via
scripts/check_site.sh - Pass: Under threshold (default 5000ms)
- Warning: 1-2x threshold
- Fail: >2x threshold or timeout
4. Content Changes (Planned)
- Fetch page, extract text, hash it
- Compare against stored hash
- Report if content changed since last check
- Note: This feature is planned for v1.1
Reports
Single Site
## 🟢 example.com — Healthy
| Check | Status | Detail |
|---------------|--------|---------------------------|
| Uptime | ✅ UP | 200 OK (143ms) |
| SSL | ✅ OK | Expires in 87 days |
| Response Time | ✅ OK | 342ms (threshold: 5000ms) |
| Content | — Same | No changes detected |
Multi-Site Summary
## Site Health — 2026-03-26
| Site | Status | Issues |
|------------|--------|----------------|
| example.com| 🟢 OK | — |
| api.foo.io | 🟡 WARN| SSL: 12 days |
| shop.bar | 🔴 DOWN| 503 error |
Alerts
Alert when: site DOWN, SSL within warning window, response >2x threshold, 2+ consecutive failures.
Format: ⚠️ [site] — [issue]. [detail]. Checked at [time].
Scheduled Monitoring
Suggest cron job for recurring checks (30-60 min interval for production). Store last 100 results per site in ~/.openclaw/workspace/.site-monitor-history.json.
Scripts
scripts/check_site.sh \x3Curl>— HTTP health check, outputs JSON (status, timing, headers)scripts/check_ssl.sh \x3Cdomain>— SSL cert check, outputs JSON (issuer, expiry, days remaining)
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install site-health-monitor - After installation, invoke the skill by name or use
/site-health-monitor - Provide required inputs per the skill's parameter spec and get structured output
What is Site Health Monitor?
Monitor websites for uptime, SSL certificate expiry, response time, HTTP errors, and content changes. Generate health reports and send alerts when issues are... It is an AI Agent Skill for Claude Code / OpenClaw, with 122 downloads so far.
How do I install Site Health Monitor?
Run "/install site-health-monitor" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Site Health Monitor free?
Yes, Site Health Monitor is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Site Health Monitor support?
Site Health Monitor is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Site Health Monitor?
It is built and maintained by charlie-morrison (@charlie-morrison); the current version is v1.0.0.