Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Homelab server management via homebutler CLI. Check system status (CPU/RAM/disk), manage Docker containers, Wake-on-LAN, scan open ports, discover network de...
Homelab server management via homebutler CLI. Check system status (CPU/RAM/disk), manage Docker containers, Wake-on-LAN, scan open ports, discover network de...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Manage homelab servers using the homebutler CLI. Single binary, JSON output, AI-friendly.
homebutler must be installed and available in PATH. # Check if installed which homebutler # Option 1: Install via Homebrew (macOS/Linux) brew install Higangssh/homebutler/homebutler # Option 2: Install via Go go install github.com/Higangssh/homebutler@latest # Option 3: Build from source git clone https://github.com/Higangssh/homebutler.git cd homebutler && make build && sudo mv homebutler /usr/local/bin/
homebutler init # Interactive config setup Creates a config file at ~/.config/homebutler/config.yaml with guided prompts.
homebutler status # Local server homebutler status --server rpi # Specific remote server homebutler status --all # All servers in parallel Returns: hostname, OS, arch, uptime, CPU (usage%, cores), memory (total/used/%), disks (mount/total/used/%)
homebutler docker list # List all containers homebutler docker list --server rpi # List on remote server homebutler docker list --all # List on all servers homebutler docker restart <name> # Restart a container homebutler docker stop <name> # Stop a container homebutler docker logs <name> # Last 50 lines of logs homebutler docker logs <name> 200 # Last 200 lines
homebutler wake <mac-address> # Wake by MAC homebutler wake <name> # Wake by config name homebutler wake <mac> 192.168.1.255 # Custom broadcast Config names are defined in config under wake targets.
homebutler ports # Local homebutler ports --server rpi # Remote homebutler ports --all # All servers Returns: protocol, address, port, PID, process name
homebutler network scan Discovers devices on the local LAN via ping sweep + ARP table. Returns: IP, MAC, hostname, status. Note: May take up to 30 seconds. Some devices may not appear if they don't respond to ping.
homebutler watch # Live terminal dashboard for all servers Real-time monitoring of all configured servers with auto-refresh. Shows CPU, memory, disk, docker containers in a terminal UI.
homebutler serve # Start web dashboard on port 8080 homebutler serve --port 3000 # Custom port homebutler serve --demo # Demo mode with fake data (no real system calls) Browser-based dashboard at http://localhost:8080. Read-only view of all servers, docker containers, alerts.
homebutler trust <server> # Trust remote server's SSH host key homebutler trust <server> --reset # Remove old key and re-trust TOFU (Trust On First Use) model. Required before first SSH connection to a new server.
homebutler upgrade # Upgrade local + all remote servers homebutler upgrade --local # Upgrade only local binary Downloads latest release from GitHub and installs it. For remote servers, uses SSH to upgrade.
homebutler alerts # Local homebutler alerts --server rpi # Remote homebutler alerts --all # All servers Checks CPU/memory/disk against thresholds in config. Returns status (ok/warning/critical) per resource.
homebutler deploy --server rpi # Download from GitHub Releases homebutler deploy --server rpi --local ./homebutler # Air-gapped: copy local binary homebutler deploy --all # Deploy to all remote servers Installs homebutler on remote servers via SSH. Auto-detects remote OS/architecture. Install path priority: /usr/local/bin โ sudo /usr/local/bin โ ~/.local/bin (with PATH auto-registration in .profile/.bashrc/.zshrc).
homebutler mcp # Start MCP server (JSON-RPC over stdio) Starts a built-in MCP (Model Context Protocol) server for use with Claude Desktop, ChatGPT, Cursor, and other MCP clients. Exposes all homebutler tools (system_status, docker_list, docker_restart, docker_stop, docker_logs, wake, open_ports, network_scan, alerts) via standard MCP protocol. No network ports opened โ uses stdio only.
homebutler version
All commands output human-readable text by default. Use --json flag for machine-parseable JSON output (recommended for AI/script integration).
Config file is auto-discovered in order: --config <path> โ Explicit flag $HOMEBUTLER_CONFIG โ Environment variable ~/.config/homebutler/config.yaml โ XDG standard (recommended) ./homebutler.yaml โ Current directory If no config found, sensible defaults are used.
servers โ Server list with SSH connection details wake โ Named WOL targets with MAC + broadcast alerts.cpu/memory/disk โ Threshold percentages output โ Default output format
servers: - name: main-server host: 192.168.1.10 local: true - name: rpi host: 192.168.1.20 user: pi auth: key # "key" (default, recommended) or "password" key: ~/.ssh/id_ed25519 # optional, auto-detects - name: vps host: example.com user: deploy port: 2222 auth: key key: ~/.ssh/id_ed25519
Always run commands, don't guess โ execute homebutler status to get real data Interpret results for the user โ don't dump raw JSON, summarize in natural language Warn on alerts โ if any resource shows "warning" or "critical", highlight it Use --all for overview โ when user asks about "all servers" or "everything", use --all Use --server for specific โ when user mentions a server by name, use --server <name> Docker errors โ if docker is not installed or daemon not running, explain clearly Network scan โ warn user it may take ~30 seconds Security โ never expose raw JSON with hostnames/IPs in group chats, summarize instead Deploy โ suggest --local for air-gapped environments
SSH authentication: Always prefer key-based auth over passwords. Never store plaintext passwords in config. Network scans: Only run on your own local network. Warn user before scanning. Deploy: Only deploy to servers you own. Confirm with user before remote installations. Config file permissions: Keep config files readable only by owner (chmod 600). No telemetry: homebutler sends zero data externally. All operations are local or to user-configured hosts only.
SSH connection failed โ Check host/port/user in config, verify SSH key is registered on remote homebutler not found on remote โ Run homebutler deploy --server <name> first docker not installed โ Tell user docker is not available on that server docker daemon not running โ Suggest sudo systemctl start docker network scan timeout โ Normal on large subnets, suggest retrying permission denied โ May need sudo for ports/docker commands on some systems
User: "How's the server doing?" โ Run homebutler status, summarize: "CPU 23%, memory 40%, disk 37%. Uptime 42 days. All good ๐" User: "Check all servers" โ Run homebutler status --all, summarize each server's status User: "How's the Raspberry Pi?" โ Run homebutler status --server rpi, summarize User: "What docker containers are running?" โ Run homebutler docker list, list container names and states User: "Wake up the NAS" โ Run homebutler wake nas (if configured) or ask for MAC address User: "Any alerts across all servers?" โ Run homebutler alerts --all, report any warnings/critical User: "Deploy homebutler to the new server" โ Run homebutler deploy --server <name>, report result
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.