Browserheap

Let your agent open every tab it wants.

A browser for AI agents with no tab management. Hundreds of tabs, hours of work, nothing closed: the tabs your agent isn't using sleep in 3 MB, stay readable, and wake in a third of a second.

about:blank
Browserheap0 MB Plain Chrome0 MB

Measured against the browsers agents use today

Benchmarks

30 tabs in 539 MB. The others need 3.6 to 6.9 GB.

The same real websites, opened as tabs and never closed, in every popular agent browser and two lightweight engines, on an 8 GB E2B sandbox.

Memory and CPU ✓ Measured 15 Oct 2026
  • Browserheap
  • Agent tools
  • Engines

Hover the chart to see every browser at each tab. Lightpanda starts lighter for the first few tabs, then grows by about 1 GB on each heavy news site. Full method and every number →

Up to 100 tabs

Each browser stopped at 6.5 GB of the sandbox's 8 GB. × marks where.

10 agents, one machine

Each agent with its own browser, all opening tabs at once.

Memory at 30 tabs

All 30 tabs open, after a 5 second settle.

Cost of one more tab

The slope of each browser's line.

Idle CPU, 30 tabs

10 minutes with nothing happening. 100% is one core. Live tabs keep running scripts nobody is looking at.

Still a full browser

Light on memory, no corners cut

Lightweight engines save memory by not drawing pages. Browserheap runs the same Chromium every agent tool runs, so it does everything Chrome does.

Read the method →

Agent actions

Iframes, web components, popups, infinite scroll, screenshots, clicking at a position.

Real sites

Pages that show the same content Chrome shows, where Chrome loaded them.

BU Bench tasks

Same pi agent and model, on headless Chrome and on Browserheap.

To wake

From the agent's click on a sleeping tab to the page being ready to use.

What sleeping costs

Refs reset on wake

Snapshot refs like e12 belong to the page as it was. Take a new snapshot after a wake.

Page-only state goes

An open menu or a half-played video. URL, scroll, cookies and logins come back.

Live tabs cost Chrome

A live tab is a real Chromium page. Keep more awake with --live.

MCP is next

Today it's a skill, a CLI and an SDK. An MCP server is on the way.

“The browser instance and all tabs remain open indefinitely after task completion.”
agent-browserIssue #885vercel-labs/agent-browser
Read the issue →
“Each new_tab() call creates a new tab but the agent rarely calls close_tab().”
browser-useIssue #5484browser-use/browser-use
Read the issue →

A browser that lets agents keep every tab

The fixes on offer close tabs or restart Chrome, and both lose the agent's work. Browserheap puts idle tabs to sleep instead.

Sleeping tabs

Two tabs awake, the rest asleep

The two tabs your agent used last are live Chromium pages. Every other tab sleeps: it keeps its URL, scroll, text and cookies, and gives back its memory. Touch it and it wakes where it was, in about a quarter of a second.

How waking works →
tabs✓ Live 2
Open12
Asleep10 × 3 MB
Awake2 × 150 MB
wake274 ms
Same URL and scroll✓
Still signed in✓
Hover a tab to wake it.
agent.ts✓ Still works after sleep
const docs = await openTab("react.dev")
await openTab("news.ycombinator.com")
await openTab("github.com/trending")
// 3 tabs, 2 live: docs is asleep now

docs.isAsleep()            // true
await docs.title()         // "React", without waking it

await docs.getByRole("link", { name: "Learn" }).click()
// docs wakes in ~0.3 s and the click lands

Handles that survive sleep

Your agent's code never notices

Other agent browsers hand out raw pages that go stale when a tab closes. Browserheap's pages and locators belong to the tab, so a page kept in a variable keeps working while its tab sleeps and wakes underneath.

Read the SDK →

Works with your agent

A skill, a CLI, or an SDK

Drop the skill into Claude Code or Codex and your agent learns the loop: open a page, read its snapshot, act with Playwright-style code, check what changed. Or drive it from a shell, or build it into your own agent with startSession().

Read the docs →
$ npx browserheap skill claude
✓ Added the skill: ~/.claude/skills/browserheap
✓ Chromium ready

> Compare the pricing pages of Vercel, Netlify and Render

● browserheap · run
  opened 9 tabs · 2 live · 7 asleep · 546 MB

Let your agent keep every tab

npx browserheap install