01
2,500 commits of mess.
The first iteration of Sparky grew to about 80,000 lines and 31 tools across roughly 2,500 commits. It worked, in the way a pile of cardboard works as furniture — until you sit on it. Every feature had added a mode, a setting, or a list to maintain.
I retired it. The rebuild — the Sparky you're reading about — is about 5,000 lines and works better than the mess ever did. The rule now for every feature: does it remove a layer from my life? If it adds one, it doesn't ship.
02
One agent doing everything.
Early on, I had a single agent do all the work — design, scope, build, review. It was fast, and it was building me a cathedral I'd never use.
The fix was an AI team, and it's the biggest lesson in this whole project:
- An architect — a dedicated agent on the strongest frontier model available — scopes the backend and holds the shape of the system.
- Independent builders get fired off, one per slice of work, each with its own brief.
- The architect reviews what the builders produce.
- Every few slices, a second, separate frontier model audits the accumulated work — a reviewer with no stake in any of it.
One human decides what gets built. The agents write, test, and check each other's work. Building an AI team to build for me — instead of asking one AI to build with me — has been the big win.
03
Fifty features I never used.
The first version had about 50 features, because I was excited and every idea sounded essential. I really only ended up needing about 10.
Now features only get built after daily use hits a real wall. One change at a time, then live with it for a while. The 10 features I actually needed are better than the 50 I imagined needing — and they're the only ones I have to maintain.