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 works overnight, and a large coding model on my own laptop.
I use Claude every day and I think it’s very good, especially at design and review. I still don’t want my work to depend on any one account, plan or vendor. If it does, someone else’s decision becomes my limit.
So I build the parts that matter myself.
- A way to run several Claude Code accounts at once on one setup, so a session isn’t tied to the account it started on.
- A job runner, Mullet, that builds and tests software overnight and lets nothing land without its checks.
- A large coding model on my own laptop’s graphics card, for routine work that doesn’t need to leave the machine.
None of that is new for me. I build the tools I need and publish the ones I can: a Markdown editor that exports PDF, Word and PowerPoint, a library for uploading large files in chunks and a tool for keeping a copy of a website. The AI setup is the latest of them, and the same habit.
Owning the tools has a price. I maintain every one of them, and when something breaks it is mine to fix. For now that’s a trade I’m happy with, because it means I can change my setup the day something around it changes.
More on Mullet
-
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…
-
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…
-
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…