dsgnr.workKarthik S.UX + AI
← think/
product story · Sep 20, 2026 · 6 min read

530 tabs and I still hadn't picked an animation style

The tabs weren't the problem. The problem was I couldn't close the browser without losing my place.

I've had a browser window open for going on three weeks now. Not one window, several. Twenty-one of them, last I counted, spread across roughly ten different things I'm supposed to be doing. Somewhere in there was a decision about an animation style for a project I'm working on. I went looking for it on a Tuesday.

Thirty tabs in, most of it was stuff I'd already seen. References I'd bookmarked in spirit but never in practice, sites left open with the vague plan of "implement when I get to it." I closed a few, kept most, and by the end of the day I hadn't picked anything. I'd just relocated the question to a new window.

It kept happening. I'd open a window to sort out the pre-step for the pre-step, get pulled into some other rabbit hole in the middle of it, and come back to the same animation style decision I'd started with, except now there were fifty new links attached to it. Some duplicates. Some new. All of it scattered across windows I'd stopped being able to name.

At 530 tabs I did the math on organizing them properly. Two days, easily. Sorting, labeling, closing what didn't matter. And at the end of it I'd have a tidy list of tabs I still probably wouldn't open.

So I didn't do that.

what I actually needed/

Sorting the tabs was never going to fix anything, because sorting wasn't the thing that broke. What broke was that I couldn't shut the browser off. Twenty-one windows stayed open because closing any one of them felt like losing whatever thread I'd been pulling on, and I didn't trust myself to remember which tab belonged to which decision three days later. The tabs were a symptom. The actual failure was that I had no way to put a window down and pick it back up in a shape I could use.

I already had a tool for the first half of that. Session Run, the first version I'd built months earlier and kept using. Save worked. I'd dump everything into a named session when the browser got heavy, the way you throw things in a box when company is coming. The box stayed full. I almost never opened what I'd saved, because a restore still handed me the same unsorted pile: clusters of tabs, no way through them, pieces of the same quest stacked on top of each other. Capture without a way to clean or open only what you need is just storage. Storage doesn't get you a fresh window.

This time the pile was big enough that the box stopped being enough.

I opened the project and looked at what I had been living with. It saved a snapshot and let you reopen it. Fine for panic. Useless for twenty-one windows of repeated rabbit holes when what I needed later was one domain, one window, or a handful of tabs out of five hundred. I had a list, by then, of things it could also grow into. Tag sessions. Sync somewhere. Auto-name based on content. Every one of those felt like a reasonable feature and every one of them was a different project wearing this one's clothes. I wasn't trying to build a tab manager that did everything. I was trying to stop losing my place, and to actually use the saves I was already making. So I held the list back, wrote it down somewhere I wouldn't look at it for a while, and built only the part that solved the actual Tuesday: save what's open, clean and open it later by window or domain or selection, gone from memory until I need it back.

what I built instead/

The update groups and filters what you've saved so a session isn't just a dump of five hundred links. It's rooms you can enter again: by window, by domain, by the tabs you actually want. I can look at a saved session and pull the animation style research without reopening the accidental detours first. That's the whole feature. It sounds small written down. It wasn't small at two in the morning trying to figure out which of six open windows had the file format decision in it.

It still doesn't talk to a server. No accounts, no sync, nothing leaves the browser. That wasn't a stance I set out to make, it just followed from what the tool needed to do: hold my tabs, locally, until I asked for them again. A network call wasn't going to make that faster.

I built it the way I build most things now: talking through the product with kAI on Hermes, and sending the actual slices to dev on Claude Code, tryable one pass at a time. The part that was mine was everything upstream of the code: which feature was the real one and which nine were noise, what "usable later" meant for a session I'd open in three weeks with no memory of today, and the decision, made twice, to not spend two days on a tidy list I'd never open. Models write fast. They don't know which problem is actually yours.

Saving the live mess took maybe ten seconds. Twenty-one windows collapsed into a session I could actually work with later. I closed everything, all of it, and opened a fresh window with nothing in it.

The animation style question is still unanswered. It's just not open on my screen anymore. When I want it back, I know which room it's in, and I don't have to take the whole house with me.

I've been calling the wider project Session Farm, mostly because I needed to call it something before I needed to call it something in public. The thing in the browser is still Session Run, the same product I was already saving into, only now I open it.