Amplifier · browser bundle
Giving AI agents a real browser
An agent's only tool is a fetch. web_fetch gives you HTML source — not a browser that renders, runs JavaScript, and sees.
So what happens when the page has no source worth reading?
JavaScript-only SPAs, React apps, and auth walls hand a fetch empty or meaningless HTML. The real software lives exactly where fetch-and-parse breaks.
The agent needs to render the page, not just download it.
The Amplifier browser bundle (v0.3.0) wraps Vercel Labs' agent-browser — real Chrome/Chromium with rendering, JavaScript, screenshots, and user-like actions.
Reading becomes using. But a real DOM is expensive — how does it stay affordable?
Instead of a full DOM tree, agent-browser emits a compact, deterministic element list. The agent acts on refs like @e1, @e2 — a 93% token cut versus Playwright MCP.
Cheap references make being-a-user affordable. Next: getting past the login.
By default browser state is ephemeral. Persistent profiles keep cookies, localStorage, and logins across sessions; session isolation runs multiple independent browser states.
The agent gets in where a raw fetch is stopped cold. Now: what does it see?
--profile
persists cookies / localStorage / logins across sessions--session
multiple isolated browser statesA companion computer-vision tool, amplifier-ux-analyzer (ramparte/amplifier-ux-analyzer), reads those screenshots: color palettes, layout regions, UI elements, and text via OCR.
The agent's eyes now yield validation. Which brings us to the point.
The agent stops parsing raw source and starts clicking, typing, and seeing rendered pages — for ~700 tokens a page instead of ~10,000, a 93% cut versus Playwright MCP.
Validation by being a user, at a fraction of the cost.
Eyes and hands, plus token discipline, beats fetch-and-parse. The browser bundle is v0.3.0 at HEAD, documented across 8 markdown files totaling 2,724 lines, over 12 commits.
Feature status: Active — v0.3.0 at HEAD
Repository: ramparte/amplifier-bundle-browser (default branch main) — wraps Vercel Labs agent-browser (Apache-2.0).
Data as of: HEAD commit 6b3abb9 (2026-02-02).
Research performed:
git rev-list --count HEAD → 12 commitsgit log --date=short --pretty=%ad | sort | uniq -c → 10 on 2026-01-30, 2 on 2026-02-02git log --pretty=format:'%an <%ae>' | sort | uniq -cfind . -name '*.md' -not -path './.git/*' -exec wc -l {} + → 2,724 lines / 8 filessed -n '76p' context/agent-browser-awareness.mdgrep -n 'SPA' context/agent-browser-awareness.mdgrep -n '93%' bundle.md README.mdsed -n '96,103p' bundle.md ; sed -n '238,246p' README.mdsed -n '34,49p' bundle.mdsed -n '130,165p' context/browser-automation-guide.mdsed -n '105,128p' bundle.mdcat context/ux-analyzer-integration.mdPrimary contributor: Sam Schillace — author of all 11 substantive feat/fix/docs commits; the PR #1 merge commit (6b3abb9) is authored by ramparte, committed by GitHub. Initial commit co-authored by Amplifier.
Gaps: Token figures (~10,000 / ~700 / 93%) are the repo's own documented values, not independently benchmarked runs. The amplifier-ux-analyzer local checkout has a valid remote but an unpopulated HEAD, so its claims come from the browser bundle's own ux-analyzer-integration.md, not the external repo's source. Line-number citations are accurate to within ~2 lines.