#### [](HEADER)
<div align="center" width="100%">
<p>
<a href="https://github.com/BigBoot/AutoKuma/actions"><img alt="GitHub Actions Workflow Status" src="https://img.shields.io/github/actions/workflow/status/BigBoot/AutoKuma/docker-build-push.yml?style=flat&logo=rust&link=https%3A%2F%2Fgithub.com%2FBigBoot%2FAutoKuma%2Factions"></a>
<a href="https://github.com/BigBoot/AutoKuma/releases/latest"><img alt="GitHub Tag" src="https://img.shields.io/github/v/tag/BigBoot/AutoKuma?logo=github&label=latest"></a>
<a href="https://ghcr.io/bigboot/autokuma"><img alt="GHCR Tag" src="https://img.shields.io/github/v/tag/BigBoot/AutoKuma?logo=docker&logoColor=white&label=GHCR"></a>
</p>
<p>
<b>
<a href="https://crates.io/crates/autokuma">AutoKuma</a>
  
<a href="https://crates.io/crates/kuma-cli">Kuma CLI</a>
  
<a href="https://crates.io/crates/kuma-client">Kuma Client</a>
</b>
</p>
</div>
# Kuma CLI 🤖 <a href="https://crates.io/crates/kuma-cli"><img alt="Crates.io Version" src="https://img.shields.io/crates/v/kuma-cli?logo=rust&color=blue"></a> [](https://snapcraft.io/kuma)
Kuma CLI is a Command Line Interface (CLI) tool for managing and interacting with [Uptime Kuma](https://uptime.kuma.pet/). With Kuma CLI you can easily configure, monitor and manage your applications from the command line.
## Features 🎯
- [x] Commands: `kuma monitor`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `list`
- [x] `get`
- [x] `pause`
- [x] `resume`
- [x] Commands : `kuma tag`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `ls`
- [x] `get`
- [x] Commands : `kuma notification`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `ls`
- [x] `get`
- [x] Commands : `kuma maintenance`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `ls`
- [x] `get`
- [x] `pause`
- [x] `resume`
- [x] Commands : `kuma status-page`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `ls`
- [x] `get`
- [x] Commands : `kuma docker-host`
- [x] `add`
- [x] `delete`
- [x] `edit`
- [x] `ls`
- [x] `get`
- [x] `test`
## How to Install 📦
Binaries for Windows, Linux and Mac OS are provided for [GitHub Releases](https://github.com/BigBoot/AutoKuma/releases/latest) and additionally Kuma CLI can be installed using `cargo`:
```bash
cargo install --git https://github.com/BigBoot/AutoKuma.git kuma-cli
```
## Usage 💡
```bash
Usage: kuma [OPTIONS] [COMMAND]
Commands:
monitor Manage Monitors
notification Manage Notifications
tag Manage Tags
maintenanc Manage Maintenances
help Print this message or the help of the given subcommand(s)
Options:
--url <URL>
The URL AutoKuma should use to connect to Uptime Kuma
--username <USERNAME>
The username for logging into Uptime Kuma (required unless auth is disabled)
--password <PASSWORD>
The password for logging into Uptime Kuma (required unless auth is disabled)
--mfa-token <MFA_TOKEN>
The MFA token for logging into Uptime Kuma (required if MFA is enabled)
--header <KEY=VALUE>
Add a HTTP header when connecting to Uptime Kuma
--connect-timeout <CONNECT_TIMEOUT>
The timeout for the initial connection to Uptime Kuma [default: 30.0]
--call-timeout <CALL_TIMEOUT>
The timeout for executing calls to the Uptime Kuma server [default: 30.0]
--format <OUTPUT_FORMAT>
The output format [default: json] [possible values: json, toml, yaml]
--pretty
Whether the output should be pretty printed or condensed
-h, --help
Print help
-V, --version
Print version
```
## Configuration 🔧
All configuration options can also be specified as environment variables:
```
KUMA__URL="http://localhost:3001/"
KUMA__USERNAME="<username>"
KUMA__PASSWORD="<password>"
...
```
Additionally Kuma CLI will read configuration from a file named `kuma.{toml,yaml,json}` in the current directory and in the following locations:
| Linux | `$XDG_CONFIG_HOME`/kuma/config.{toml,yaml,json} | /home/alice/.config/kuma/config.toml |
| macOS | `$HOME`/Library/Application Support/kuma/config.{toml,yaml,json} | /Users/Alice/Library/Application Support/kuma/config.toml |
| Windows | `%LocalAppData%`\\\kuma\\\config.{toml,yaml,json} | C:\\\Users\\\Alice\\\AppData\\\Local\\\kuma\\\config.toml |
An example `.toml` config could look like the following:
```toml
url = "http://localhost:3001/"
username = "<username>"
password = "<password>"
```