You're Absolutely Right!

You're Absolutely Right!
Photo by Planet Volumes / Unsplash

Earlier in the year, around 6 months ago, my workplace introduce AI tools into each area of the business and said "go crazy with it, see what it can do for you" and straight away I could see how powerful AI can be. The possibillities were endless, limited only by your imagination. Shortly after using GitHub Co-Pilot and Claude Code at work, I decided to take the plunge and see what It could do for me at home and my self-hosted infrastructure.

At the time GitHub Co-Pilot was restructuring its premium subscription plans so I turned to Claude Code and purchased its "Pro" plan.

I set it to work straight away, asking it to review each of my server hosts and tell me what was good, what was bad and what improvements could be made.

It found a significant memory leak issue with Traefik, mounting issues with some drives and a couple of security related issues.

Over the course of the next few months, I understood more about what was wrong exactly and what Claude was suggesting be done to rectify these "problems" As a result of going through this, bash scripts were created which, when ran, detailed the health status of each individual host. This would check and detail back things like CPU, RAM and Load usage, Hard Drive status and space available, container status and GPU usage. This also evolved over the months and Claude created a self hosted artifact as shown below:

Various custom built tools, fixes and improvements to applications and tools already in place were, over a period of weeks and months, deployed.

Below are a fair few of the bits and bobs I have created with the assistance of claude in one form or another.

Infrastructure

  • IPAM tool (ipam.xmsystems.co.uk) — a full custom IP address management system: MySQL backend, Node.js/Express API, single-file HTML frontend, and four Python scrapers (Docker, UniFi, Pi-hole v6, WireGuard/SSH) running on a 6-hour cron cycle, with a visual colour-coded IP grid.
  • Storage page (storage.xmsystems.co.uk) — a frontend backed by a custom Python systemd service (megaraid-api) on Titan, proxied through nginx on Phobos. This has also been extended with a non-RAID "OTHER DRIVES" section covering all SATA/NVMe disks on titan and phobos.
  • Updates page (updates.xmsystems.co.uk) — a new live dashboard showing unattended-upgrades status (last run, packages, reboot state, next run) for all 5 hosts
  • Infrastructure page/diagram (infrastructure.xmsystems.co.uk) — a network topology diagram covering the full path from the ISP through the UniFi gateway, switches, hosts, and VLAN-isolated networks.
    Currently mid-restyle: moving from L-shaped connectors to smooth curves and adding grouped host panels

The Games Hub

games.xmsystems.co.uk hosts a set of self-hosted multiplayer games, each with its own Node.js/WebSocket backend:

  • Boggle — touch-drag letter selection with SVG connector lines, real Boggle dice sets (16-die for 4×4, 25-die for 5×5), word validation against a 172k-word ENABLE1 dictionary and Web Audio sound effects including a custom 16-bar lobby tune in C major.
  • Blockbusters — hex board built in SVG, one-away-from-winning detection, win celebration mode, undo feature, styled in JetBrains Mono and Boggle orange (#FF6B1A) — yes, that's genuinely the colour's name even though it's used on Blockbusters, not Boggle) and a 2,121-question word bank (real pub quiz questions blended with WordNet-generated definitions)
  • Cards Against Humanity — the official CC BY-NC-SA deck, deployed with strict CSP compliance.
  • Poker Clock — a real-time, multi-device poker tournament manager with a WebSocket backend and Basic Auth.

Monitoring & Observability

Prometheus and Grafana run on Tethys, scraping node-exporter and cAdvisor fleet-wide. Built out along the way:

  • A custom Grafana dashboard for WireGuard peer status and traffic
  • A six-section Pi-hole dashboard
  • Migrated Grafana's own database from SQLite to MySQL
  • Traced a Prometheus context deadline exceeded scrape failure to a Traefik routing misconfiguration and fixed it by pointing the exporter at direct IPs
  • Deployed prometheus-wireguard-exporter on the Pi and fixed a PiVPN friendly-name formatting bug

Above is a small section of one of my many grafana dashboards.

AI has completely changed how I approach anything computing and I can see me only using it more and more.