Your agent
needs hands.

Where agent runs actually break.Three problems end most projects.

01

The page never rendered

Modern sites are JavaScript first. A raw HTTP client sees an empty shell where the agent expected content. BrowserGen sessions are full Chromium: what renders for a person renders for the model.

02

Nobody saw it fail

Headless failures produce logs, not understanding. Every BrowserGen session has a live view your team can open mid-run, so a stuck agent is something you watch, diagnose, and unstick.

03

The loop ran away

Agents retry. Hard per-session timeouts, plan-level concurrency, and instant stop calls mean a runaway loop costs you a denied create, never a surprise bill.

One session per task.

Fresh browser in, clean slot out

The pattern that survives production is process-like: the agent starts a fresh browser for each task, does its work, and throws the browser away. Isolation by default, deterministic cost, and a live-view URL in every trace so any browser step is something a person can open and watch.

Ten lines, end to end.Create, drive, destroy.

  1. Isolation by default. No shared cookies, no leaked login state between tasks or tenants.
  2. Deterministic cost. A task holds exactly one concurrency slot for exactly as long as it runs.
  3. Traceability. Log the session id and live-view URL with the task; every browser step becomes reviewable.
task-runner.ts
const session = await browsergen.sessions.create({ timeout: 600 });
const browser = await chromium.connectOverCDP(session.connectUrl);

// The agent drives; humans can watch at session.liveViewUrl.
const page = browser.contexts()[0].pages()[0];
await page.goto(task.url);
const text = await page.innerText("body");

await browser.close();
await browsergen.sessions.stop(session.id);

Human in the loop, literally.

Same session, same state

When the agent meets a captcha, a two-factor prompt, or a page it cannot parse, it pauses and posts the live-view link. A person opens it, handles the step in the real browser, and the agent resumes in the same session with the same state. No restart, no lost progress.

live view · control enabled

Ship the agent, not the browser farm.

The integration guide takes about ten minutes, and the first seven days cost nothing.

Start free7-day free trial. Cancel anytime.