TJ

Welcome inside

MEET TOSHON

I only build things I use every day

That’s the whole filter. StudioOS has been my desktop for 289 of the 329 days since its first commit, and Lighthouse is how I know what’s listening on this machine right now. Nothing here is a portfolio piece I stood up for a week.

StudioOS is a web desktop: your notes, your code and your AI assistants in one window manager, where a single search reaches across all of it. Perci is an open‑source AI workspace — multi‑provider chat, an autonomous research agent and a code workbench in one desktop app. AnySession is one picker over every resumable session from every coding agent you run, searchable by what was actually said inside them. OpenCode Rig is a fork of opencode that keeps a usage panel pinned to every session, reporting tokens and cost per model, and that drives the Codex and Claude CLIs you’re already signed into, so it runs on those subscriptions instead of an API key.

They don’t share a stack: one’s a Postgres app behind a login, one’s an Electron desktop app, one’s a Python package on PyPI. What they share is that I’m the first person inconvenienced when any of them breaks, and that’s the UX research I trust most. Most of it gets built alongside AI agents, in the open, with the mistakes written down. The interesting question isn’t what these models can write; it’s what a person and a fleet of them can successfully maintain.

May your ports stay unclaimed,

How I work

Three rules that hold no matter what the project is

export Your work comes back out

Plain files where files make sense — Markdown and JSON at paths you can cat and commit. A real export where they don’t. Leaving should cost you an afternoon, not your archive.

.env Your keys, your bill

Where a tool needs a model, you bring your own Gemini, OpenAI or Claude key — the quality and the invoice stay between you and them, with no middleman marking it up. The local tools bind to a registered port and don’t phone home at all.

v0.2.25 Shipped, versioned, installable

Signed builds, a real installer, a changelog, an update channel that works. A repo you have to clone and pray over is not finished work.

Limitations

Real tradeoffs I’d rather you hear from me

arm64 The native tools are macOS first

Anything that installs — the daemons, the desktop builds — targets Apple Silicon and gets tested there. Linux usually follows. Windows usually doesn’t. StudioOS is the exception, because it runs in a browser.

n=1 One person with a fleet

Agents let me hold more projects at once than a solo developer normally can. Review is still mine, and review is the bottleneck — so a new thread gets a real answer, not an instant one.

scope Not a brand studio

UX is the part I care about most — how a thing behaves under a real person, in the wrong order, on the third try. That one I’ll argue about at length.

What I’m not is an identity shop. If you need a logo, a wordmark and a brand system built from nothing, hire someone whose whole job that is, and I’ll build against what they give you.

What you get

What it’s actually like on the other side

ship Working software, not a deck

The first thing I hand over is something you can run. Plans are cheap and I’ve been wrong about enough of mine to stop leading with them.

docs The project explains itself

Every repo carries a handoff file, a source map, and a running log of mistakes with the rule that prevents each one. The next person — or the next agent — picks it up without me in the room.

terms The limitations come first

Every README I write has a “what this isn’t” section sitting above the feature list. You should find out what you’re not getting in the first minute, not after a weekend of setup.

Let’s work together.