AgentSkillsCN

uptime-kuma

与Uptime Kuma监控服务器交互。用于检查监控器状态、添加/移除监控器、暂停/恢复检查、查看心跳历史。触发词包括Uptime Kuma、服务器监控、运行时检查或服务健康监控。

SKILL.md
--- frontmatter
name: uptime-kuma
description: Interact with Uptime Kuma monitoring server. Use for checking monitor status, adding/removing monitors, pausing/resuming checks, viewing heartbeat history. Triggers on mentions of Uptime Kuma, server monitoring, uptime checks, or service health monitoring.

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