Skip to content
BOOK A CALL

How a change ships

THE CLAIM UNDER TESTAgents carry the middle. A person starts it and a person closes it.

This note comes from self-directed R&D, the fourth of six on how I build with AI. Every change takes the same path, and the numbers at the end set the next goal.

A person sets the goal and the number in Linear. Claude Code opens the PR in GitHub, where the checks run. Vercel previews it, then releases it.

HOW A CHANGE SHIPS · CLICK TO ENLARGE
How a change shipsDOWNLOAD ↓
How a change ships: a goal in Linear, a PR in GitHub, a release on Vercel, records and events into MotherDuck, and dashboards that set the next goal.

Once it's live, the app's billing, product and CRM records load into MotherDuck daily, and PostHog exports its events there too. Metric views sit on top, with one ID and one definition per metric, and the dashboards show their SQL.

Then a person reads the numbers and sets the next goal. Granola calls explain why the numbers moved.

Agents carry the middle. A person starts it and a person closes it. Every key lives in Infisical, and scripts fetch them when they run, so no key sits in a repo.

TAKE IT WITH YOU
Every tool and how it connectsWeb page · every tool in one table · OPEN ↗
EARLIER NOTEHow I build, context first →Book a call →