uptime-kuma
Uptime Kuma Skill
Manage Uptime Kuma monitors via CLI wrapper around the Socket.IO API.
Setup
Requires uptime-kuma-api Python package:
pip install uptime-kuma-api
Environment variables (set in shell or ThinkFleetBot config):
UPTIME_KUMA_URL- Server URL (e.g.,http://localhost:3001)UPTIME_KUMA_USERNAME- Login usernameUPTIME_KUMA_PASSWORD- Login password
Usage
Script location: scripts/kuma.py
Commands
# 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 endpointping- ICMP pingport- TCP port checkkeyword- HTTP + keyword searchdns- DNS resolutiondocker- Docker containerpush- Push-based (passive)mysql,postgres,mongodb,redis- Database checksmqtt- MQTT brokergroup- Monitor group
Common Workflows
Check what's down:
python scripts/kuma.py status
python scripts/kuma.py list # Look for 🔴
Add HTTP monitor with 30s interval:
python scripts/kuma.py add --name "API Health" --type http --url https://api.example.com/health --interval 30
Maintenance mode (pause all):
for id in $(python scripts/kuma.py list --json | jq -r '.[].id'); do
python scripts/kuma.py pause $id
done
More from thinkfleetai/thinkfleet-engine
local-whisper
Local speech-to-text using OpenAI Whisper. Runs fully offline after model download. High quality transcription with multiple model sizes.
148flyio-cli-public
Use the Fly.io flyctl CLI for deploying and operating apps on Fly.io: deploys (local or remote builder), viewing status/logs, SSH/console, secrets/config, scaling, machines, volumes, and Fly Postgres (create/attach/manage databases). Use when asked to deploy to Fly.io, debug fly deploy/build/runtime failures, set up GitHub Actions deploys/previews, or safely manage Fly apps and Postgres.
24kagi-search
Web search using Kagi Search API. Use when you need to search the web for current information, facts, or references. Requires KAGI_API_KEY in the environment.
22feishu-bridge
Connect a Feishu (Lark) bot to ThinkFleet via WebSocket long-connection. No public server, domain, or ngrok required. Use when setting up Feishu/Lark as a messaging channel, troubleshooting the Feishu bridge, or managing the bridge service (start/stop/logs). Covers bot creation on Feishu Open Platform, credential setup, bridge startup, macOS launchd auto-restart, and group chat behavior tuning.
13bambu-local
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
10voice-transcribe
Transcribe audio files using OpenAI's gpt-4o-mini-transcribe model with vocabulary hints and text replacements. Requires uv (https://docs.astral.sh/uv/).
10