Understudy

An agent that runs errands in your own browser and hands back the keyboard when it shouldn't decide.

Understudy is a local, prompt-driven agent for Windows that drives your own signed-in Chrome. You type a task, it opens a tab and works through it one small step at a time, writing every step to a trace. When it reaches a sign-in, an MFA code, or a site outside the list you allowed, it stops, tells you exactly what is on screen, and waits for you. A ChatGPT-shaped studio sits on top and a local HTTP API underneath, all in Python.

The idea

Most browser agents live in someone else's cloud browser on a fresh profile, so they either can't get past a login or try to sneak around it. Understudy runs on your machine, in the Chrome you already use, so it arrives already signed in. The rule is simple. Anything it must not do itself, it hands back to you.

The list of sites

Everything the agent can see is written by the page it's looking at, so nothing on a page can be trusted to say what the page is. The one input a page can't write is the list of sites you chose, so every run is scoped to that list. A new site gets researched first, its age, its name, whether it's a lookalike, and anything that can't be cleared becomes a question for you, never a silent yes.

Handing back

It stops for sign-ins, MFA codes, and anything shaped like a prove-you're-human challenge. It rings a bell, prints what's on screen and what to do, and waits. Passwords it can type but never read. They live in Windows Credential Manager and get filled inside the browser layer, so the model never sees them.

The studio

A local chat UI over the same API. Pick a model, pick a skill, type the task, and watch the browser work on stage. Every finished run can be replayed from its trace.

Stack

Python, with the OpenAI and Anthropic SDKs as the brain and agent-browser from npm as the hands. The API server is standard library only. Every step of every run is written to a JSONL trace, so there's always a record of what it did and why.