2026

September

Flagging ad and tracker domains with an LLM before they hit my blocklist

A dry-run daily job that asks an LLM whether a domain seen by AdGuard Home or privoxy looks like an ad or tracker, before any blocklist ever gets touched.

↗

Auditing my own homelab backup script

A homelab backup strategy audit: what a self-hosted backup script actually protects, what it leaves in plaintext, and why a second LAN box is not offsite.

↗

Building a Claude Code agent for a self-hosted network controller

How I wrapped a self-hosted Omada network controller's undocumented REST API in a shell script and turned it into a Claude Code agent for daily network checks.

↗

Self-hosting a password manager with Vaultwarden and a Cloudflare Tunnel

How I run Vaultwarden, a self-hosted password manager compatible with Bitwarden clients, on my home server behind a Cloudflare Tunnel with no open ports.

↗

Switching this blog's automation from Managed Agents to scheduled routines

Why I dropped Anthropic's Managed Agents product for this blog's post pipeline and moved to a Claude Code scheduled cloud routine on my existing Team plan.

↗

Ideal state artifacts: tests for your AI agent config

AI coding agent setups drift like code but have no test suite. Ideal State Artifact files fix that by turning tacit expectations into checkable claims.

↗