Cloud browsers for AI agents

Open in Claude

Your agent needs a browser. BCTRL gives it one in the cloud - drive it yourself with Playwright, or hand it to a hosted agent, and capture every run as a replayable record. Spaces scope what each agent can touch. Subaccounts bill it back to your customers. You run none of the infrastructure.

How BCTRL works

Four nouns, and one decision: do you drive, or does an agent?

1

Create a space

The boundary. It decides which storage, secrets, and AI credentials the runtimes inside it can reach.

2

Launch a runtime

A cloud browser starts inside the space, with the stealth, proxy, and fingerprint you configure.

3

Drive it - two ways

Connect over CDP and drive it yourself with Playwright or Puppeteer, or hand it to a hosted agent.

4

Inspect the run

Every run is recorded: events, live view, recording, and files. Nothing to wire up.

Two ways to drive

One runtime, two control modes. Hold the controller with a CDP connection from your own process, or let a hosted invocation run. One at a time.

1import { Bctrl } from '@bctrl/sdk';
2import { chromium } from 'playwright';
3
4const bctrl = new Bctrl({ apiKey: process.env.BCTRL_API_KEY! });
5
6const runtime = await bctrl.runtimes.create({ type: 'browser', name: 'first-run' });
7const { connectUrl } = await bctrl.runtimes.start(runtime.id);
8
9const browser = await chromium.connectOverCDP(connectUrl);
10const page = browser.contexts()[0]?.pages()[0] ?? (await browser.newPage());
11await page.goto('https://example.com');
12
13await bctrl.runtimes.stop(runtime.id);

The platform

Start building

Use cases

Browser agents

Give AI agents a real browser, hosted or self-driven.

Web data extraction

Pull structured data from any site, with proxies and CAPTCHA handling.

Automated testing

Run end-to-end flows in isolated cloud browsers, with full recordings.

Form & login automation

Automate logins and multi-step forms with vaulted credentials and TOTP.

Built for platforms

Most cloud browsers stop at the session. BCTRL is built to sit underneath your product: spaces scope each agent’s blast radius, a full tool-calling system lives in the platform, and subaccounts give every customer an isolated, separately-billed environment under one organization.

Keep exploring