lazykuma watch
lazykuma watch
Runs until stopped and reports every outage: one line per outage, and per connection change, on
standard output, and a desktop notification — D-Bus on Linux, Notification Center on macOS,
toasts on Windows. Recoveries are reported too only with on = "changes" (see below).
2026-09-28 14:02:11 watching home, vps; notifying on outages
2026-09-28 14:02:12 home: ok
2026-09-28 14:02:12 vps: ok
2026-09-28 14:31:40 down home / nas.home.lan connect: connection refused
- No alert storm on start. The state each monitor has when watch starts is its starting point, so a fresh start never raises an alert per monitor that is already down.
- Restarts are not outages. An instance that drops is reported only after 30 seconds unreachable, so a Kuma restart or a container update does not raise an alert.
- It says when it goes blind. Every connection change is printed too, including a refused login token, so a watch that can no longer see an instance says so.
- It follows the config. An instance added, removed or logged in to from the terminal UI is picked up within ten seconds, without a restart.
- One at a time. Only one watch runs at a time; a second one says which is running (its process id) and exits.
Where to run it
In a tmux pane, or let lazykuma start it at login: see Background alerts.
What it notifies about
By default a watch reports outages only. The [notify] section of the config changes that:
on = "changes" adds recoveries (back lines, and a notification each), and watch = false
keeps the lines but drops the desktop notifications.
[notify]
watch = true # lazykuma watch notifies (it always prints)
on = "down" # "down", or "changes" to hear about recoveries too
See config.toml.
The terminal UI and watch
The terminal UI can raise the same notifications while it is open (desktop = true), but that
is off by default so that it does not repeat what watch already says.