the robot holding up a small rocket, a written page on its chest panel joined by a dotted line to a spiral notepad in the boy's hands showing the same rocket sketched on it

I Run GitOps for My Brain

An AI agent on a scheduled idle walk through my notes pointed out that I’d built the same architecture three times — at work, in my homelab, and in my second brain — and that the third copy was missing the part that makes GitOps work. It was right. So we shipped the missing piece the same day.

the boy in the cap holding up a small ordinary key, but the shadow it casts on the wall behind him is a clawed hand gripping a huge jagged sword; the robot beside him looks on

🚩 I Built a Usage Dashboard and Tripped Claude Fable 5's Safety Net

I asked Claude Fable 5 to help me self-host a dashboard for my own Claude usage. Halfway through, its dual-use safety measures flagged the conversation and downshifted me to Opus 4.8. Nothing I did was wrong — the request just had the shape of something that is. That gap, between what a thing looks like and what it’s for, turns out to be the whole story.

Audiobookshelf library: the same tale with stock narrator and the cloned dad voice

🎙️ Cloning My Own Voice for My Kid's Audiobooks

Zero-shot voice cloning with XTTS-v2 on a CPU-only k3s node: 26 seconds of phone audio in, a cloned-voice audiobook out — and an honest verdict from the bedtime jury. Every manual step, including the ones that went wrong.

the boy in the cap with a watering can and the robot with a pair of shears tending a garden bed made of stacked books and rolled scrolls, with vines growing out of them and a pile of cut trimmings on the ground

🌱 My Second Brain Weeds Itself Now

I gave my markdown knowledge base a nightly gardener — an AI that finds orphan notes and missing links and fixes them, every change a reviewable git commit. The fun part was the Kubernetes wall I hit on the way.

The ATS job poller workflow in n8n: schedule and manual triggers feeding config, fetch & normalize, filter, dedup, per-job LLM scoring via NVIDIA, then digest, email, and mark-seen

🎯 Know the Market Without Job-Hunting: An LLM-Scored Job Poller in n8n

You don’t have to be job-hunting to want to know your market — what’s out there, what it pays, where you’d fit. So I built an n8n workflow: it polls the public ATS APIs (Greenhouse/Lever/Ashby) plus a broad remote-jobs feed, filters for remote-EU infra roles, scores each posting against my CV with an LLM, and emails me only the 80%+ matches. No database, no scraping.

The exocortex knowledge base rendered as a 3D force-directed graph — 36 notes, 165 edges

🧠 A Second Brain You Can `git clone`

My first second brain died the way most do — on multi-device sync. The rebuild: plain markdown as the source of truth, every clever layer derived and disposable, and an AI that tends it through reviewable git diffs.

n8n workflow canvas

🍵 I A/B-Tested Cloud vs Local LLMs in One n8n Agent. The Local One Faked It.

I built an AI agent in self-hosted n8n over my kombucha-tracking app, then gave it two brains — NVIDIA’s 70B and a local Phi-3.5 — sharing the same tools. The cloud model called the tools and answered from real data. The local one couldn’t, so it made things up.

the little robot stands guard at a doorway like a friendly bouncer, holding up a hand to check a stack of papers, while the boy in the cap watches; a shield symbol floats above them, protective and watchful

🔒 Building a PII Guardrail Proxy for Cloud LLM Calls

A local model classifies every prompt before it leaves the cluster. If it’s sensitive, it’s blocked. If it’s clean, it goes to NVIDIA NIM. 150 lines of FastAPI, deployed on k3s.

the robot pressing an inking stamp down onto a sheet of text, blacking out several lines into redaction bars, while the boy in the cap holds the page steady and a padlock sits on the table beside them

🕵️ Privacy-Preserving LLM Pipelines: Anonymize Before You Send

Replace PII with semantically realistic fakes before sending to a cloud LLM, then restore the originals from the response. Started with a general model and prompt engineering — then upgraded to a purpose-built 1.7B fine-tune via Ollama.

the boy in the cap holding a tablet showing four small line charts, connected by a single cable plugged into a port on the robot's chest

📈 Observing Local LLM Inference: llama.cpp's Built-in Prometheus Metrics

llama.cpp’s inference server ships a /metrics endpoint. One flag, Prometheus scraping, a Grafana dashboard loaded via ConfigMap sidecar — AI observability without a proxy layer.