peek is a small, CLI (technically TUI) utility to monitor local and remote hosts.
Why
Yesterday (2026-03-26) we experienced a power outage, and I realized that I'm a dumbass and that all of my monitoring abilities are inaccessible. The reason being is that Prom-Grafana is located on our NAS while Uptime Kuma is on the RPi together with HomeAssistant, and until everything is loaded I can't access either.
I was hoping to find a tool similar to Uptime Kuma that works in CLI, but I couldn't find anything that will do what I needed it to do.
In true ADHD fashion, I decided to fuck around a little bit and get something quick running locally, but unfortunately, due to the same fucking ADHD and the multitude of other things I want to do and being a dad – I decided to offload the brunt of the work to Mr. Opencode.
Thus, peek was born.
peek was coded largely with the assistance of LLM, but validated by me.
What
The focus of peek was, and is to offer the functionality that I personally
needed from it, hence it most definitely is NOT feature complete, but will
probably help in a pinch.
peek uses YAML syntax for the configuration, which it will try to load from
~/.config/peek/config.yaml. If the path does not exist, peek will try to
initialize it.
Monitor Types
ping– Regular, run of the mill pingtcp- TCP ping using a specificportdns- DNS resolutionhttp– HTTP response code
Other Features
- Grouping: To make the list easier to filter, you can define
groupsand assigntargetto them - Monitor heartbeat frequency configurable via
interval, andtimeout
Example Config
peek: interval: 30 timeout: 5 groups: - id: servers name: Servers icon: 💻 - id: network name: Network icon: 📡 - id: external name: External icon: 🌐 targets: - name: Router host: 192.168.1.1 type: ping icon: 📡 group: network - name: Home Assistant host: 192.168.1.100 type: tcp port: 8123 icon: 🏠 group: servers - name: Pi-hole host: 192.168.1.50 type: http url: http://192.168.1.50/admin/ method: GET icon: 🛡️ group: servers - name: Cloudflare DNS host: 1.1.1.1 type: dns resolve: google.com icon: 🔍 - name: GitHub host: github.com type: http url: https://github.com method: GET icon: 🐙 group: external
Installation
The recommended way to install peek is using uv:
uv tool install git+https://github.com/hxii/peek.git
Usage
After installation, you can run the dashboard with:

