Homebutler
๐ Manage your homelab from chat. Single binary, zero dependencies.
Install / Use
/learn @Higangssh/HomebutlerQuality Score
Category
Development & EngineeringSupported Platforms
README
HomeButler
Manage your homelab from any AI โ Claude, ChatGPT, Cursor, or terminal. One binary. Zero dependencies.
A single-binary CLI + MCP server that lets you monitor servers, control Docker, wake machines, and scan your network โ from chat, AI tools, or the command line.
<p align="center"> <a href="https://www.youtube.com/watch?v=MFoDiYRH_nE"> <img src="assets/demo-thumbnail.png" alt="homebutler demo" width="800" /> </a> </p> <p align="center"><em>โถ๏ธ Click to watch demo โ Alert โ Diagnose โ Fix, all from chat (34s)</em></p>Why homebutler?
Other tools give you dashboards. homebutler gives you a conversation.
3 AM. Your server disk is 91% full. Here's what happens next:
<p align="center"> <img src="assets/demo-chat.png" alt="HomeButler alert โ diagnose โ fix via Telegram" width="480" /> </p>Alert fires โ you check logs from bed โ AI restarts the problem container โ disk drops to 66%. All from your phone. No SSH, no laptop, no dashboard login.
This is what homebutler + OpenClaw looks like in practice.
<details> <summary>๐ Comparison with alternatives</summary>| | homebutler | Glances/btop | Netdata | CasaOS | |---|---|---|---|---| | TUI dashboard | โ Built-in | โ | โ Web | โ Web | | Web dashboard | โ Embedded | โ | โ | โ | | Single binary | โ | โ | โ | โ | | Optional web server | โ On-demand | Always-on | Always-on | Always-on | | Multi-server SSH | โ Parallel | โ | โ | โ | | MCP support | โ Built-in | โ | โ | โ | | Chat integration | โ Native | โ | โ | โ | | AI-friendly JSON | โ | โ | โ ๏ธ API | โ ๏ธ API | | Docker control | โ | โ ๏ธ Monitor | โ | โ | | Wake-on-LAN | โ | โ | โ | โ | | Network scan | โ | โ | โ | โ | | Remote deploy | โ One command | โ | โ | โ | | Air-gapped install | โ Copy binary | โ ๏ธ apt/brew | โ Docker | โ Docker | | Resource usage | ~10MB, 0% idle | Medium | High | High |
</details>Features
- App Install โ Deploy self-hosted apps with one command (
uptime-kuma,vaultwarden,gitea, and more) - System Status โ CPU, memory, disk, uptime at a glance
- Docker Management โ List, restart, stop, logs for containers
- Multi-server โ Manage remote servers over SSH (key & password auth)
- Alerts โ Get notified when resources exceed thresholds
- Backup & Restore โ One-command Docker volume backup with compose + env files
- MCP Server โ Works with Claude Desktop, ChatGPT, Cursor, and any MCP client
- Web Dashboard โ Beautiful dark-themed web UI with
homebutler serve - TUI Dashboard โ Real-time terminal monitoring with
homebutler watch(btop-style) - Wake-on-LAN โ Power on machines remotely
- Port Scanner โ See what's listening and which process owns it
- Network Scan โ Discover devices on your LAN
- JSON Output โ Pipe-friendly, perfect for AI assistants to parse
๐ฆ One-Command App Install
<p align="center"> <img src="assets/install-demo.gif" alt="homebutler install demo" width="900"> </p>
homebutler install uptime-kumaโ Deploy self-hosted apps in seconds. Pre-checks Docker, ports, and duplicates. Generatesdocker-compose.ymlautomatically. See all available apps โ
Demo
๐ Web Dashboard
<p align="center"> <img src="assets/web-dashboard.png" alt="homebutler web dashboard" width="900"> </p><details> <summary>โจ Web Dashboard Highlights</summary>
homebutler serveโ A real-time web dashboard embedded in the single binary viago:embed. Monitor all your servers, Docker containers, open ports, alerts, and Wake-on-LAN devices from any browser. Dark theme, auto-refresh every 5 seconds, fully responsive.
- Server Overview โ See all servers at a glance with color-coded status (green = online, red = offline)
- System Metrics โ CPU, memory, disk usage with progress bars and color thresholds
- Docker Containers โ Running/stopped status with friendly labels ("Running ยท 4d", "Stopped ยท 6h ago")
- Top Processes โ Top 10 processes sorted by CPU usage
- Resource Alerts โ Threshold-based warnings with visual progress bars (OK / WARNING / CRITICAL)
- Network Ports โ Open ports with process names and bind addresses
- Wake-on-LAN โ One-click wake buttons for configured devices
- Server Switching โ Dropdown to switch between local and remote servers
- Zero dependencies โ No Node.js runtime needed. Frontend is compiled into the Go binary at build time
homebutler serve # Start on port 8080
homebutler serve --port 3000 # Custom port
homebutler serve --demo # Demo mode with realistic sample data
</details>
๐ฅ๏ธ TUI Dashboard
<p align="center"> <img src="demo/demo-tui.gif" alt="homebutler TUI dashboard" width="800"> </p>
homebutler watchโ A terminal-based dashboard powered by Bubble Tea. Monitors all configured servers with real-time updates, color-coded resource bars, and Docker container status. No browser needed.
๐ง AI-Powered Management (MCP)
One natural language prompt manages your entire homelab. Claude Code calls homebutler MCP tools in parallel โ checking server status, listing Docker containers, and alerting on disk usage across multiple servers. See screenshots & setup โ
Quick Start
# One-line install (recommended, auto-detects OS/arch)
curl -fsSL https://raw.githubusercontent.com/Higangssh/homebutler/main/install.sh | sh
# Or via Homebrew
brew install Higangssh/homebutler/homebutler
# Or via npm (MCP server only)
npm install -g homebutler
# Interactive setup โ adds your servers in seconds
homebutler init
# Run
homebutler status
homebutler watch # TUI dashboard (all servers)
homebutler serve # Web dashboard at http://localhost:8080
homebutler docker list
homebutler wake desktop
homebutler ports
homebutler status --all
# Install a self-hosted app (e.g. Uptime Kuma monitoring)
homebutler install uptime-kuma
App Install
Deploy self-hosted apps with a single command. Each app runs via docker compose with automatic pre-checks, health verification, and clean lifecycle management.
# List available apps
homebutler install list
# Install (default port)
homebutler install uptime-kuma
# Install with custom port
homebutler install uptime-kuma --port 8080
# Check status
homebutler install status uptime-kuma
# Stop (data preserved)
homebutler install uninstall uptime-kuma
# Stop + delete everything
homebutler install purge uptime-kuma
How it works
~/.homebutler/apps/
โโโ uptime-kuma/
โโโ docker-compose.yml โ auto-generated, editable
โโโ data/ โ persistent data (bind mount)
- Pre-checks โ Verifies docker is installed/running, port is available, no duplicate containers
- Compose-based โ Each app gets its own
docker-compose.ymlyou can inspect and customize - Data safety โ
uninstallstops containers but keeps your data;purgeremoves everything - Cross-platform โ Auto-detects docker socket (default, colima, podman)
Available apps
| App | Default Port | Description |
|-----|-------------|-------------|
| uptime-kuma | 3001 | Self-hosted monitoring tool |
| vaultwarden | 8080 | Bitwarden-compatible password manager |
| filebrowser | 8081 | Web-based file manager |
| it-tools | 8082 | Developer utilities (JSON, Base64, Hash, etc.) |
| gitea | 3002 | Lightweight self-hosted Git service |
More apps coming soon. Want to add one? See Contributing.
Usage
homebutler <command> [flags]
Commands:
status System status (CPU, memory, disk, uptime)
docker list List running containers
install <app> Install a self-hosted app (docker compose)
alerts Show current alert status
watch TUI dashboard (monitors all configured servers)
serve Web dashboard (browser-based, go:embed)
Flags:
--json JSON output (default: human-readable)
--server <name> Run on a specific remote server
--all Run on all configured servers in parallel
--port <number> Port for serve command (default: 8080)
--config <path> Config file (auto-detected, see Configuration)
Run homebutler --help for all commands.
Commands:
init Interactive setup wizard
status System status (CPU, memory, disk, uptime)
watch TUI dashboard (monitors all configured servers)
serve Web dashboard (browser-based, go:embed)
docker list List running containers
docker restart <n> Restart a container
docker stop <n> Stop a container
docker logs <n> Show container logs
wake <name> Send Wake-on-LAN packet
ports List open ports with process info
network scan Discover devices on LAN
alerts Show current alert status
alerts --watch Continuous monitoring with real-time alerts
trust <server> Register SSH host key (TOFU)
backup Backup Docker volumes, compose files, and env
backup list List existing backups
restore <archive> Restore from a backup archive
upgrade Upgrade local + all remote servers to latest
deploy Install homebutler on remote servers
install <app> Install a self-hosted app (docker compo
