Notes on AI agents, DevOps, home automation, and the gap between "works on my machine" and "works at 3 AM on a Sunday."
May 2026 · 10 min read
When your AI agent's brain is running on a machine whose terminals randomly die, you have a problem. A phased migration from ephemeral WSL2 to persistent Docker on Unraid — with hard rollback gates, a 1GB compressed backup, and a 72-hour soak test.
dockerunraiddevopswslhermes
May 2026 · 11 min read
A dashboard that displays your actual body, your actual house, and your actual medications — pulled from real devices through APIs that fight back. Google Health API pagination, EG2 solar quirks, Discord medication logging, and the two-week 500 error.
fastapipythonhealth-apisolarsqlite
May 2026 · 9 min read
My domain started as a joke — literally a Pet Cuddle-O-Tron. From broken DNS and redirect loops to HTTPS via CloudFront + ACM, including the Route53 alias gotcha that cost me an hour.
awscloudfronts3dnsroute53
May 2026 · 8 min read
When 100+ entities hit unavailable and dozens of duplicates pile up, the WebSocket API becomes your scalpel. Bulk removal of 265 obsolete registry entries in one session.
home-assistantwebsocketsmarthomeautomation
May 2026 · 9 min read
Local speech-to-text with faster-whisper on a custom Docker image, running entirely on a home server. No cloud APIs, no data leaving the house, no recurring costs.
voicesttdockerwhisperdiscord
May 2026 · 8 min read
A three-tier memory system that turns an amnesiac agent into one with continuity across Discord, terminal, and cron jobs. Basic memory, fact store, and session search — each solving a different forgetting problem.
ai-agentsmemoryarchitecturehermes
May 2026 · 10 min read
Profile isolation, fallback chain diversity, and when to use delegate_task vs. spawning a full hermes process. How I coordinate multiple AI agents through a shared kanban board.
ai-agentskanbanmulti-agentworkflow
May 2026 · 11 min read
An always-on agent with cron jobs, profiles, skills, and three tiers of memory. DevOps for your AI agent — because "it works when I chat with it" isn't production.
hermesdevopscrondockerautomation