Software that gets built and tested while I sleep
I leave software to build and test overnight, and nothing lands unless the tests and a review agree. Routine steps go to cheap and free models, including a large one on my own laptop, and Claude does the design and the review. Measured figures from 24 October and 3 to 4 November 2026.
In the evening I plan a piece of work, approve the plan and leave it running. In the morning I read what came back. Nothing has been merged without me.
The job runner is my own. It’s called Mullet, and I’m not going to describe how it works. Here is what it does.
On the night of Saturday 24 October 2026, during a weekend of focused work on my personal projects, it built three of its own features. Each was a plan of five to seven steps, and I merged each one only after reading the diff.
Who does what
Claude does the design and the review. The routine steps go to cheap and free models, and one of those is a large coding model that runs on my own laptop’s graphics card.
On 3 and 4 November 2026 that local model did its first real job for me: two small fixes across three files. It passed every check on the first attempt in about three and a half minutes, and it cost nothing. That is one job, a sample of one.
In the same long session, the outside models I used for delegated work cost about $0.34 in total. That figure is from Mullet’s own record, and I haven’t checked it against the providers’ bills.
Why it’s safe to use cheap models
The saving isn’t the point by itself. A cheaper model is only worth using if something independent checks what it did, and every change here faces the same checks whoever wrote it. A wrong attempt costs time and tokens, and it doesn’t reach my code.
That is the rule I hold the whole setup to, and it has its own post: the rule that lets me trust work I’m not watching.
More on Mullet
-
Why I build my own tools
I don’t want my work capped by any one account, plan or vendor. So I build the parts that matter: several accounts on one setup, a job runner that…
-
The rule that lets me trust work I’m not watching
Unattended AI work is fine when nothing reaches a main branch without passing tests, passing checks and a reviewed diff. Why I hold to that rule…
-
Mullet’s code is private now
I’ve made Mullet’s code private while I work on a new idea. If you’d like to know more or ask about it, get in touch.
-
Checking third-party repos for prompt injection before an AI reads them
Before 18 public repos went into a search pool my sessions read, I scanned and read them for hidden instructions. Nothing malicious turned up, and…
-
Tuning a search pool: content beat weights
Every search-time setting I tried on a Trawl pool scored exactly the same. Fixing what was in the index moved MRR from 0.489 to 0.542, measured on…
-
Why a forked worker can wait for ever
A Trawl reindex started through Mullet’s MCP server hung at 0% CPU, because its forked workers inherited a lock another thread was holding. Pools…
-
Four rules from a game framework’s agent prompts, for web and print design
On 1 November I read the agent prompts of VibeGame, a framework that builds 2D web games, and kept four rules about judgement that carry over to web…
-
Cheap models only for the work that is safe to be wrong about
Trying the cheapest model first is only safe when a wrong answer costs an attempt and nothing more. What the checks can’t judge goes to the best…
Featured projects
-
PrintMD
A Markdown editor that exports print-quality PDF, Word and PowerPoint files, with a small PDF service that runs on your own computer.
-
Solar Calendar
A calendar of 13 identical 28-day months, with each year starting on the first Monday on or after the spring equinox.
-
Where Should I Live
Rank cities around the world by what you’d keep after tax, what a month costs, which visas you can get and how each place fits the way you live.
-
Apple News API
A PHP client for publishing articles to Apple News, with a document builder for the whole Apple News Format.
More writing
-
Several Claude Code accounts, one setup, nothing lost when I switch
I run several Claude Code accounts at once on one machine, all signed in and sharing the same plugins, skills, memory and history. On 3 and 4…
-
One session, about seven hours, 26 subagent runs: what I measured
I measured a long working session from its own record: about seven hours on 3 and 4 November 2026, 26 subagent runs, 142 messages from me…
-
A PDF service that only runs on your machine
PrintMD’s PDF service turns Markdown into a PDF with one request, and it refuses to be hosted. Why that’s on purpose, and how it stays locked down…
-
Custom sizes, one long page and fit to width
Not every PDF is an A4 page. PrintMD’s page options cover a custom size, one continuous page, scaling wide tables to fit and your own margin, and…