selfie

Storybook testing your coding agent can afford.

Putting renders inside the coding loop can multiply render counts by 100x to 1000x, which centralized services like Chromatic make wildly unaffordable. Selfie runs on your machine beside your agent, in CI, and on GitHub.

124 stories
about 25 s
541 stories
about 70 s
Bill per image
$0

Local renders on an M4 MacBook Air.

A review gate for the agent's loop

# JSON naming the diff images
selfie review

# after looking at them
selfie approve <batch> --all
git commit

# nothing left to ask
selfie review
  • Fits an agent's loop. selfie review prints one JSON document, and its exit code says whether anything blocks.
  • Says what kind of change it is. It separates what moved or gained spacing from what really changed, so you can approve the harmless ones together.
  • Lets you point at the problem. Write a note on an image, and your agent gets your words, the exact box, and a picture of what you saw.
  • Follows Git. An approval counts wherever history reaches it, so it isn't repeated after a commit, a rebase, or a merge.

Early days. Follow along.

Selfie is piloting with StorybookJS. The local loop, CI, and commit statuses are built and in use on its own repository. It isn't on npm yet, so setup starts from a checkout, and you'll need Node 26 or later, pnpm, and Docker. GitHub sign-in and private repositories aren't built yet.

See Selfie reviewing itself, no sign-in needed.