Files
kumacli/README.md
Pim van Pelt 7eafb1e68e Release v1.3.0
2025-08-03 11:51:55 +02:00

94 lines
2.1 KiB
Markdown

# KumaCLI
A command-line interface for Uptime Kuma, allowing you to manage monitors and maintenance windows from the terminal.
## Installation
```bash
pip install kumacli
```
## Configuration
Set environment variables for authentication:
```bash
export KUMA_URL="http://your-uptime-kuma-instance:3001"
export KUMA_USERNAME="your-username"
export KUMA_PASSWORD="your-password"
```
Or pass them as command-line arguments:
```bash
kumacli --url http://localhost:3001 --username admin --password password monitor list
```
## Usage
### Monitor Commands
```bash
# Show available subcommands
kumacli monitor
# List all monitors
kumacli monitor list
# List monitors matching patterns
kumacli monitor list --monitor "*web*"
# List monitors in specific groups
kumacli monitor list --group "production*"
# Combine filters
kumacli monitor list --monitor "*api*" --group "web*"
# Pause monitors
kumacli monitor pause --monitor "*api*"
kumacli monitor pause --group "production*"
# Resume monitors
kumacli monitor resume --monitor "*api*"
kumacli monitor resume --group "production*"
kumacli monitor resume --all
```
### Maintenance Commands
```bash
# Show available subcommands
kumacli maintenance
# Create maintenance for specific monitors (90 minutes, starting now)
kumacli maintenance add --monitor "*nextcloud*"
# Create maintenance for groups
kumacli maintenance add --group "web*"
# Custom timing and description
kumacli maintenance add --monitor "*db*" --duration "2h" --start "2025-08-01 22:00:00" --title "Database Update"
# List all maintenances
kumacli maintenance list
# Delete specific maintenance
kumacli maintenance delete --id 5
# Delete all maintenances
kumacli maintenance delete --all
```
## Features
- **Wildcard Pattern Matching**: Use `*` wildcards for monitor and group names
- **Time Scheduling**: Flexible time parsing and duration formats (90m, 2h, 3600s)
- **Group Support**: Target entire groups of monitors
- **Environment Variables**: Store credentials securely
- **Auto-generated Descriptions**: Default descriptions list affected monitors
## Requirements
- Python 3.8+
- Access to an Uptime Kuma instance
- uptime-kuma-api library