Tern did my agents’ research in about a quarter of the time Chrome needed. 96 seconds vs 361 for the same five tasks with the same model.
Most of my research goes through Claude Code or Codex now. What changed on YouTube this week, what Twitch recommends for 1080p, what people on Hacker News ask about hosting. The agent opens a browser, reads, answers. The browser was always the slow bit. Claude in Chrome takes 2 to 3 seconds just to open a page before it reads anything.
So I built Tern. It’s a Mac browser the agent drives through MCP. The agent gets the page as clean text instead of the whole page structure, it uses the logins I have in Tern, and when a site loads its data from an API, Tern remembers that request. Next time it calls the API directly and doesn’t load the page at all. 100 Hacker News search results come back in about a second that way, and a repeat is basically instant.
I wanted to know if it’s actually faster or if I just like it because I built it. So I gave Claude (Sonnet) five research tasks, twice each, with one browser available per run: Claude in Chrome on my own logged in Chrome, Playwright, and Tern. Then I checked every answer against the real pages.
| Tern | Chrome | Playwright | |
|---|---|---|---|
| Total time | 96 s | 361 s | 170 s |
| Agent turns | 16 | 58 | 44 |
| Tokens processed | 443k | 1.98M | 1.35M |
| Model cost | $0.43 | $0.83 | $0.89 |
| Wrong or failed runs | 0 | 2 | 0 |
The biggest gap was the Hacker News search. Chrome took about 4.5 minutes and 30 turns to list 50 posts and one of its two runs listed the wrong 50. Tern did it in under a minute. Chrome’s other miss was the extension losing its connection, so I wouldn’t blame the browser for that one.
My first version of this test was bad. I left Chrome out and counted one of the other tools twice. When I redid it properly Tern had its own problems first. On GitHub it only got to 13% of the page text because the menus used up the space. Pages that need JavaScript came back empty. EU cookie walls blocked it. And background tabs didn’t render at all, so the YouTube task took over 3 minutes before I fixed that and 19 seconds after.
It’s 5 tasks I picked and 2 runs each, all public pages, so I’m not calling it science. Chrome also still wins on anything behind a login I haven’t done in Tern yet.
Most of the gap is tokens. Every page the agent reads stays in the conversation and gets reread on every turn after it. Tern hands back about 4k characters for the Hacker News front page, Playwright about 50k. Over 20 turns that adds up.
Tern is free for Apple Silicon Macs: mariojankovic.com/tern