Dotfiles for my AI agents
Three coding agents, one private config repo, and a cleanup that broke normal startup. The useful work was deciding which files I own and which files the tools still need to write.
Three coding agents, one private config repo, and a cleanup that broke normal startup. The useful work was deciding which files I own and which files the tools still need to write.
I said the brief was the artifact and the agents were fungible. So I packaged the brief as a repo, handed it to a teammate, and found out what breaks when someone else runs your workflow.
How a tiny ffmpeg service behind an edge worker turned 'a thumbnail at any timestamp of any video' from a years-old wish into a two-second URL, and what a suddenly-free capability does to a product conversation.
A pool-light collar, a rod-holder gift, a tri-color pun sign, nine sizes of hole plug, and a drawer of custom Gridfinity bins -- a month of household parts that came out of conversations with Claude writing OpenSCAD, with the failure that taught each one written down.
Forty Python scripts on seven schedules run my mornings -- email triage, inventory, a private daily podcast, an end-of-day commit -- all of them reading and writing the same Obsidian vault I edit by hand. Keeping that honest took production discipline: an event-log spine, hash-fenced write contracts, budget caps with hard stops, and an alerting rule I learned the embarrassing way.
Earlier this year I ran a sixty-hour diagnostic of an engineering org I'd never met: three thousand repositories, a hundred-plus Jira projects, five survey instruments, twenty-two interviews, and an AI layer in every phase, because the engagement doubled as an experiment in how much of this work the machines can absorb. The frameworks are public. The useful part was writing nine falsifiable guesses before arriving, and spending the onsite trying to break them.
Keep an EDM festival anthem exactly as it is and change one word, the name shouted over the drop, to a friend's. Pure AI, no recording. In June 2026, with models that write whole songs and clone voices on demand, this should be a one-evening job. It was not.
The research told me who to interview and ranked them. Then I had to actually run the calls. A 30-minute screen usually wastes both people's time, so I built the same thing one stage later: a per-candidate interview page my agents fill from the research, with every question pre-tagged to the score it feeds.
I swapped the username scanner in my candidate-research workflow for one that searches seven times as many sites. The reach wasn't the upgrade. The upgrade was that finding an account was never the bottleneck. Telling whose account it is, was.
I built a parallel-agent workflow to make candidate background research faster. Sixty-four candidates later, the speedup is the least of it: running the investigations side by side turned a noisy classifier into a confident one, and then into a way to rank the candidates who are real.
For fifteen years I've built a custom Chrome theme at every company I've worked at, and always built it badly, because it was never worth doing well. This time AI made it the best version I've shipped, for the same one evening of work. The theme is trivial. The category of task it unlocks isn't.
I stopped giving my AI assistants rules and started giving them reading material. The shift is from instruction to artifact. The em-dash regex is the catchy part. Loading files as books-the-system-reads is the durable one.
The muscle that ships a company from zero is not the muscle that keeps a company aimed. I have shifted between modes more than once. Each time, the habits that worked before were the habits I had to break first.