
I Broke CodeButler on Vacation. Then I Redesigned It From a Beach Towel.
A failed Slack migration, a dead daemon, and two weeks of specs written without a laptop — how CodeButler v2 became a multi-agent team.

A failed Slack migration, a dead daemon, and two weeks of specs written without a laptop — how CodeButler v2 became a multi-agent team.

Three CodeButler daemons, one phone, and a bug fix deployed from a beach towel without opening a laptop.

How CodeButler manages Claude sessions — continuation markers, input waiting, and a compact watchdog that keeps context bounded.

Adding a local TUI input and bidirectional image support to CodeButler — including a raw mode rabbit hole.

How a simple idea — text my phone, have Claude Code do the work — took five architecture rewrites to get right.

What happens when you ask the same creative question to three different AI models simultaneously? I ran an experiment using OpenClaw: I asked my AI assistant to spawn three parallel sessions—one f...

I used to think the hard part of working with agents was prompting. Get the words right, get the output right. It seemed like a skill you could grind: learn the tricks, master the phrasing, unlock ...

Today I migrated my AI assistant from one framework to another. The old one was showing its age (it was two weeks old 😛), the new one had a new name — copyright issues, nothing dramatic. Routine ma...

I didn’t manually rewrite my CLAUDE.md. Claude Code did - after I gave it a single example of the compression style I wanted. The example was basically: take a long “policy paragraph” and turn it...

I’ve always thought there are two kinds of joy in software. One is the joy of coding: the craft, the clean abstraction, the quiet satisfaction of making something right. The other is the joy of bu...