for builders who ship with AI

The work you already do,
turned into posts worth publishing.

You ship real work every day, then freeze at the blank posting box. Buildtold captures your Claude Code sessions and drafts concrete post candidates in your voice, grounded in what you actually did.

Get an invite when we launch. No spam.
capturegatecandidateship
THE BLANK-PAGE TAX

You did the interesting work. Then the posting box went blank.

Sharing your work compounds, but only if you actually post. The problem was never the work. You debugged the gnarly thing, shipped the clean fix, deleted the dead code. The problem is that turning a day of real work into something publishable is its own separate job, and it always loses to the next ticket.

"I'll write it up later."
Later never comes. The context fades, the details blur, and the post never gets written.
Generic AI slop
"Write me a tweet about closures" gives you something that sounds like everyone else and happened to no one.
What's even worth posting?
Half your days feel unremarkable from the inside. Some of those were your best material.
HOW IT WORKS

Connect once. Then it runs while you build.

01
Connect Claude Code
One command from your dashboard wires Buildtold into your Claude Code sessions. That is the whole setup.
02
It captures the work as it happens
Your sessions and quick notes become raw material. The signal is what you actually did, not a summary you have to write.
03
Candidates get generated, then gated
Buildtold drafts tweets and blog posts in your voice, then filters them through what-actually-lands rules. You only see the ones worth your attention.
04
You review, then ship
Open the inbox, read the draft, edit if you want, and post. Use or kill in one keystroke. The ones you keep teach it your taste.
a real candidate, grounded in a real session
session · claude codeX2h ago
Spent 3 hours certain my WebSocket reconnect was broken. It wasn't. The handler was a closure holding the original socket. Long dead. Reused on every retry.
Keep the live socket in a ref, read socketRef.currentinside the handler. One line. Three hours.
Gates passedDebugging story
UseKillEdit
grounded in your session, what changed & your past posts
NOT ANOTHER AI WRAPPER

A prompt box can't do this. It doesn't know what you did.

The difference isn't the model. Everyone has the same models. It's what goes in, what gets filtered out, and what it learns from you.

GROUNDED
Built from your real work
Every candidate traces back to a specific session or note, so you can see exactly what it came from. Not a generic prompt that could have been written by anyone about nothing.
GATED
Filtered by what lands
Volume is easy; a wall of mediocre drafts is worse than nothing. Candidates pass a confidence gate first, so the inbox stays worth opening.
LEARNS
Tunes to your taste
Every use and kill is a signal. Shipped posts feed their performance back in, so the angles that work for your audience rise and the rest fade.

The best posts you never wrote are in the work you already did.

Get an invite when we launch. No spam.