Introduction
# Uptime Kuma Skill
Manage Uptime Kuma monitors via CLI wrapper around the Socket.IO API.
## Setup
Requires `uptime-kuma-api` Python package: ```bash pip install uptime-kuma-api ```
Environment variables (set in shell or Clawdbot config): - `UPTIME_KUMA_URL` - Server URL (e.g., `http://localhost:3001`) - `UPTIME_KUMA_USERNAME` - Login username - `UPTIME_KUMA_PASSWORD` - Login password
## Usage
Script location: `scripts/kuma.py`
### Commands
```bash # Overall status summary python scripts/kuma.py status
# List all monitors python scripts/kuma.py list python scripts/kuma.py list --json
# Get monitor details python scripts/kuma.py get <id>
# Add monitors python scripts/kuma.py add --name "My Site" --type http --url https://example.com python scripts/kuma.py add --name "Server Ping" --type ping --hostname 192.168.1.1 python scripts/kuma.py add --name "SSH Port" --type port --hostname server.local --port 22
# Pause/resume monitors python scripts/kuma.py pause <id> python scripts/kuma.py resume <id>
# Delete monitor python scripts/kuma.py delete <id>
# View heartbeat history python scripts/kuma.py heartbeats <id> --hours 24
# List notification channels python scripts/kuma.py notifications ```
### Monitor Types
- `http` - HTTP/HTTPS endpoint - `ping` - ICMP ping - `port` - TCP port check - `keyword` - HTTP + keyword search - `dns` - DNS resolution - `docker` - Docker container - `push` - Push-based (passive) - `mysql`, `postgres`, `mongodb`, `redis` - Database checks - `mqtt` - MQTT broker - `group` - Monitor group
### Common Workflows
**Check what's down:** ```bash python scripts/kuma.py status python scripts/kuma.py list # Look for 🔴 ```
**Add HTTP monitor with 30s interval:** ```bash python scripts/kuma.py add --name "API Health" --type http --url https://api.example.com/health --interval 30 ```
**Maintenance mode (pause all):** ```bash for id in $(python scripts/kuma.py list --json | jq -r '.[].id'); do python scripts/kuma.py pause $id done ```