A browser. A command. A beginning.
The first commit established the original wager: an AI agent should be able to move through the web as naturally as a person. Navigate. Click. Fill. Extract. The browser was an instrument.
ThinkRun began as a way for an agent to use a browser. It became something more important: a way for humans and agents to see the same truth.
First, we taught an agent to click. Then to see. Then to recover. But the real breakthrough was teaching the browser to leave evidence behind.
Because a bug that already happened cannot be “browsed” live. A teammate’s confusion cannot be reconstructed from a screenshot. The past needs a flight recorder.
These are receipts, not launch-copy numerology. Git supplied the counts. The memory wiki supplied the meaning. Provider logs supplied the usage.
The name changed. The architecture changed. The center of gravity moved from automation to recording. One principle survived every rewrite: show the agent what actually happened.
The first commit established the original wager: an AI agent should be able to move through the web as naturally as a person. Navigate. Click. Fill. Extract. The browser was an instrument.
Real browsers fail in real ways: timeouts, authentication, dead sessions, pages that lie about being ready. The engine learned resilience, recovery, and the discipline of showing its work.
A Chrome extension and local bridge let agents work inside the browser people already used—the signed-in, messy, human one. Local control made context immediate. It also made trust, ownership, and recovery non-negotiable.
Links, embeds, MCP, and hybrid uploads changed what a run could be. It no longer disappeared when the browser closed. A session could travel—to a teammate, a pull request, or another agent.
Web recording, uploads, structured analysis, and the Activity Hub made a more human workflow possible: point at the screen, talk normally, and hand the complete evidence to an agent.
ThinkBrowse became ThinkRun. The rebrand crossed packages, runtime paths, environment variables, extension storage, domains, and public language—while deliberately preserving the boundaries that could not safely move at once.
The project did not grow in a straight line. It arrived in waves—engine, extension, sharing, recording, distribution—each one leaving a denser record than the last.
Agents could see live browsers. The harder problem was time. Most bugs had already happened—on somebody else’s machine, in the past. The product’s story pivoted from access to evidence.
Finding preserved in the July 8 development narrativeA product built by agents leaves a different kind of exhaust. Prompts, cached context, review voices, failed approaches, corrections. ThinkRun kept the ledger.
On June 12, a live sanity check caught an invalid Chrome screenshot parameter before an hour-long soak even began. Fifty unit tests had passed. Reality got the last review.
On June 22, production appeared stale. A byte comparison showed production matched origin/main exactly; the agent’s local branch was nineteen commits behind. Memory kept the correction.
ThinkRun repeatedly drove the real product to verify recordings, navigation, Cloudflare rules, and production state. The tool became part of its own development method.
The browser was never the final product. Shared understanding was. ThinkRun gives every bug, walkthrough, and browser session a memory an agent can actually use.
docs/thinkrun-timeline-notes.md and its 2026-07-09 recomputation; memory/dev-usage.md generated 2026-07-10; and dated development narratives for June 12, June 17, June 22, and July 8. Phase descriptions use the verified timeline’s shipped-work summary. No lifetime cost claim is shown because the ledger marks pricing as estimated.