We shipped a Chrome extension. It does two things, and both exist because of moments where Header was one tab too far away.

Add a source from where you already are

You're reading a good blog post. The feed you want to follow is right there on the page, declared in a <link rel="alternate"> tag nobody has looked at since 2009. Click the Header icon and the extension reads it from the live DOM, verifies it server-side, and files the source into one of your groups. One click, no copy-pasting feed URLs.

It knows the shapes of the platforms too: click it on a YouTube video and it resolves the channel. On a Reddit thread, the subreddit.

Declare tab bankruptcy

The other moment is twenty open tabs that have been rotting for weeks. Videos, papers, 3-hour podcasts. You don't have time to get through them, and somehow you can't close them either.

The extension's Clear Tabs view selects your open tabs, you pick a topic, and Header reads all of it, then closes the tabs for you, if you let it. A few minutes later you get one briefing instead of twenty obligations. The first time I ran it I felt physical relief.

Tab bankruptcy is free for every Header user, up to a daily limit.

The boring parts

This was also our first feature planned and implemented end-to-end with Claude Fable 5. Fable did the recon (our API surface, the auth options, the design system), wrote the extension, and verified its own work: it provisioned a throwaway account against our beta API to prove every endpoint contract, and loaded the built extension into a headless Chromium to test the connect flow before any human clicked it. Its first version was insanely close: not quite a one-shot, but close enough that we spent the rest of the week on taste instead of rework.

Two parts were genuinely hard.

Auth. Extensions can't hold a web session; our auth provider rotates session tokens every 60 seconds. So "Connect with Header" opens the app, the signed-in page mints an API key, and hands it to the extension's service worker over Chrome's externally_connectable channel. You click one button; the key never touches your clipboard. If you're signed out, the sign-in redirect used to swallow that handshake, so the page now remembers why you came and finishes the connect after you sign in.

The film is code. The teaser below was the first demo we've made with a frontier model behind the camera. A scripted HTML page drives the extension's mock harness, a headless browser films it, and a numpy script synthesizes the soundtrack. Chrome fought us here too: CSS zoom doesn't reach into iframes, and device-pixel emulation doesn't reach the video recorder, so Full HD meant rendering the whole composition at 2560×1600 and downscaling.

Three lessons from the week: make the model prove its work against real systems, because a throwaway account beats a confident summary. Make every asset regenerable from code, because taste takes eleven rounds of notes. And the taste itself stayed human: every caption, chord, and cut in that film was a founder call; Fable made each round cost minutes instead of days.

Install the companion, or watch the 60-second film first: