This Isn't a Chatbot
Most people picture an AI assistant as a chat window — you type, it suggests, you copy the good parts. What runs on my own hardware doesn't suggest. It ships apps, keeps its own records, backs itself up, watches its own health, and works as a team that respects boundaries. A tour — and yes, an AI session wrote it, in my voice, pictures and all.
russalo@blog ~ % ls -t posts/ | grep "#self-hosting"
#self-hosting
8 published posts
How I Run Claude, Gemini, ChatGPT, and Copilot as One AI Crew
Two and a half years of how I actually use AI — Claude, Gemini, ChatGPT, and Copilot — run like a construction job, because the workflows genuinely translate. The models quietly lie to themselves (here's the exact mechanism), so I build everything around one rule: keep the truth outside the machine. The frame, the crew, and the playbook, with the deep-dives to come.
A Free, Off-Host Backup for Your SQLite App
Copying a live SQLite file with `cp` can hand you a torn, useless backup — the data you need is still in the write-ahead log. `VACUUM INTO` takes a consistent snapshot with the server running, and a systemd timer ships it to another box so a dead disk doesn't take your data with it.
The Caddy Bug That Blamed Let's Encrypt for DigitalOcean's Mistake
A wildcard cert that issued perfectly — and a retry loop that wouldn't quit. The journal said `strconv.Atoi: parsing "": invalid syntax`, wrapped in certificate-issuance vocabulary. The real bug was two layers down, and the fix was one line.
russalo@blog ~ % cd ..