I'm a Technical Support Lead at Vero Networks, a fiber internet provider. At home I run a homelab and build the tools that keep it running, from monitoring agents to Linux desktop apps. I'm looking for systems administration, infrastructure engineering and agentic AI roles.
🌐 hufflabs.dev · 📫 james@hufflabs.dev
A self-hosted environment I designed, secured and run day to day.
| Area | What I run |
|---|---|
| Virtualization | Proxmox VE with LXC containers and VMs, Docker |
| Storage and backups | TrueNAS SCALE with ZFS, scheduled guest backups, encrypted restic backups |
| Networking | Self-hosted DNS with filtering, reverse proxy with TLS, Tailscale, Cloudflare Tunnels |
| Identity and security | Authentik single sign-on, role-based firewall rules, fail2ban, recurring security audits |
| Monitoring | Checkmk, plus a Python watchdog I built that sends alerts and takes commands in Discord |
| AI agents | An on-call agent for critical alerts: known problems get an allowlisted fix, and anything else goes to AI triage, limited by a gatekeeper that logs every command and rate-limits fixes |
| Automation | Python, Bash, Lua, Go, systemd |
| Operations | Runbooks, incident write-ups and disaster recovery documentation |
Almost all of it runs on one GMKtec M6 Ultra mini PC (Ryzen 5 7640HS, 64 GB DDR5) in a 22U rack. Nothing on my home network is open to the internet: public sites come in through Cloudflare Tunnels, and I reach everything else over Tailscale.
What's next: bring the Cisco 2960-X online (its VLANs are already set up, so the work laptop and smart-home devices each get their own network), add a rack UPS, move the M6 to 2.5 GbE, and add a Dell R730 as a second node.
-
Homelab On-Call Agent: self-healing monitoring for Proxmox and Checkmk, with AI triage behind a security gatekeeper
-
Homelab Watchdog: security and availability monitor with change-based Discord alerts and commands, in plain Python
-
HuffLabs RO: a private game server for friends, reachable only over Tailscale, with an invite-only sign-up site, Windows and Linux installers, and a self-updating launcher that verifies signed updates. In Go, tested on Linux and Windows in GitHub Actions, with versioned releases
-
PeripheralHub: GTK4 app for keyboard, mouse, display and battery settings on Linux
-
Snap Layouts for Omarchy: drag a window to the top of the screen to pick a layout
-
Dark Magic: 18 merged pull requests to an open-source Diablo II engine in Go and Lua

















