Hello — this is Loomwork
Why I'm starting a Sunday dispatch about building real things on the side, with a day job. The 40-tool problem that pushed me into Foundry, and what every issue will (and won't) be.
read-thread— threads · loomwork
A weekly thread about building real things on the side, with a day job. Anti-hype. Single idea. 5–10 minutes. 16 threads, all readable here.
Prologue
Why I'm starting a Sunday dispatch about building real things on the side, with a day job. The 40-tool problem that pushed me into Foundry, and what every issue will (and won't) be.
read-threadYou can name a dozen tools off the top of your head. The real number is closer to 40. The problem isn't cost — it's that you can't see your stack. What Foundry is actually solving.
read-threadBefore I landed on a launcher, I considered three other shapes for the same problem. An AI builder kit. An agent platform. A multi-tenant OS for solo founders. Two scoping docs, one near-start. Why the smallest version is the one that shipped.
read-threadFor six weeks I wrote about Foundry without letting anyone touch it. This issue opened the door — the real app, on your phone, rough edges and all. What works, what isn't there yet, and why I shipped it before it felt ready.
read-threadSolo and early, I kept the loop fast and light on purpose — an AI agent implementing, me directing, almost no ceremony. That tradeoff flips the moment a mistake stops costing nothing. So I built the control layer, in four parts, and this is the shape of it and why this shape rather than another.
read-threadBefore writing a line of the agent, I had to decide what it even is — a monolith, a chain, or a set of small specialists reporting to one synthesizer. The design I committed to, the alternatives I rejected, and the bet underneath all of it.
read-threadEvery agent calls a model, and the wrong model on the wrong job quietly burns money. Haiku for the narrow work, Sonnet for synthesis, a hard ceiling enforced in code. The real per-run numbers — and why the whole pipeline runs for about a dollar a month.
read-threadI built a PR classifier for Foundry and watched it score 0%, 29%, 0%, then 65% across four prompt rewrites. The fix wasn't smarter reasoning — the model understood the task the whole time. It was one line forcing a bare, lowercase word instead of a markdown explanation. The real lesson: without an eval set you own, you're not engineering prompts, you're just typing them.
read-threadFoundry's first working agent, described end to end: connect a tool like GitHub or Vercel, each becomes a read-only monitor, and a central chief-of-staff synthesizes one morning briefing from everything they report. It flags what's uncertain instead of pretending to know. A full briefing cycle costs about a penny — roughly 19 cents across a week of real use.
read-threadOne week of running the first agent, and three things it taught me. The plain findings store outperformed its own design — it absorbed use cases I never planned for. The morning-only briefing cadence has to go; the rhythm should follow the user, not the clock. And read-only safety created more friction than I expected — the value shows up when an agent proposes an action for approval, not when it just surfaces information.
read-threadPart two · the build
The Galaxy view renders each agent as a star, and none of it is ornament. Position, brightness, and motion are all functions of real state — the central chief-of-staff node pulls from the specialists arranged around it, so the architecture is legible at a glance. Detail lives in on-demand popovers instead of label clutter. Every pixel earns its place by reporting something true about the system underneath.
read-threadCredential storage built on "assume the breach." Tokens never touch logs or error messages; the database copy stays encrypted with AES-256-GCM, the key held separately in the app environment, and the auth tag rejects any tampering. Plaintext exists only server-side at the moment of use, then it's discarded. The security isn't novel cryptography — it's the separation between where the ciphertext lives and where the key lives, plus read-only defaults and a deliberate opt-in for write access.
read-threadThe moment an agent can write, its own input becomes an attacker. Four independent gates stand between a proposal and a real action: the agent only proposes and never executes, a separate write-scoped key, a server-only kill switch the browser can't see, and every PR and diff it reads wrapped as untrusted input. Plus the approval bug my reviewer caught — two fast taps double-posting a comment — fixed by making the pending→approved flip a single atomic update. Least privilege, human in the loop, defense in depth, staged rollout, pointed at an AI.
read-threadInstrumenting a fleet before it hurts: what to measure, why deriving beats storing, and why a p95 tells you something an average never will — plus the two places the numbers lie, named out loud instead of hidden behind a clean dashboard.
read-threadThe scheduler is the product. How a fleet gets fanned out, what happens the day one of them goes quiet, and why a dormant agent is capability waiting on a credential rather than a gap in the roster.
read-threadAn 11-dimension adversarial audit against my own platform, with every finding forced past an independent skeptic whose only job was to disprove it. 59 raw claims became 19 real ones. Four rules came out of it — including the one that stung: a comment claiming a protection that was never there.
read-thread