← Blog

BLOG

Cloud Based Browsercore: The Hosted Chromium Runtime for AI Agents

Cloud based browsercore: run hosted Chromium for AI agents, Playwright, and Selenium. Connect via CDP, keep sessions alive, and scale browser automation.

August 28, 20269 min readRemote Browser

# Cloud Based Browsercore: The Hosted Chromium Runtime for AI Agents

A cloud based browsercore is the missing runtime layer between your AI agent's code and the live web. Instead of launching a local Chrome instance that dies with your process, you connect to a hosted Chromium session that persists, scales, and exposes the same debugging protocols you already use. This post explains what a browsercore actually is, how to connect to one with Playwright or raw CDP, and why production AI agents need more than a local browser.

What Is a Cloud Based Browsercore?

A browsercore is the underlying browser engine—typically Chromium—that executes web pages, runs JavaScript, and renders DOM. When you move that core to the cloud, you get a browser that lives on remote infrastructure rather than on your laptop or a single worker.

Remote Browser provides exactly this: hosted Chromium sessions accessible via a simple API. You get a real browser process, not a simulation or a headless wrapper. The browser runs in a data center, and your code connects to it over the network.

This matters for AI agents because the browser is the agent's eyes and hands on the web. If the browser crashes, the agent fails. If the browser is blocked by anti-bot measures, the agent returns garbage. If the browser session resets between steps, the agent loses context.

A cloud based browsercore solves these problems by decoupling the browser lifecycle from your application lifecycle.

Why Local Browsers Fail in Production

Local browser automation works fine for a demo. You install Playwright, launch Chromium, navigate to a page, and extract data. But production AI agents run into three hard walls.

1. Session Death

When your Python script or Node.js process exits, the browser dies with it. If your agent runs on a serverless function or a short-lived container, the browser session is gone. Any cookies, localStorage, or logged-in state vanish.

2. Resource Contention

A full Chromium instance consumes a significant amount of RAM—often several hundred megabytes. Running multiple concurrent agents on one machine means either over-provisioning or crashing. You end up managing process pools, memory limits, and zombie browsers instead of writing agent logic.

3. Blocking and Fingerprinting

Data centers and cloud IPs are heavily flagged. Sites like Google, LinkedIn, and Amazon apply stricter checks to traffic from cloud providers. A local browser on a residential IP might pass, but a cloud-hosted browser on a datacenter IP often gets challenged or blocked.

How Remote Browser Solves the Browsercore Problem

Remote Browser's cloud based browsercore addresses all three issues directly.

Persistent sessions: The browser lives in the cloud, not in your process. Your agent connects, does work, disconnects, and reconnects later. The session state—cookies, profiles, local storage—persists between connections.

Isolation: Each session runs in its own container. One agent's crash doesn't take down another's browser. You can run many concurrent sessions without managing a single Chromium process locally.

Configurable browser settings: Remote Browser supports proxy configuration and other browser settings that help with site compatibility. You can route traffic through different IPs or configure the browser to match your use case.

Connecting to a Cloud Browsercore with Playwright

The most common way to connect to Remote Browser is through Playwright's connect_over_cdp method. CDP (Chrome DevTools Protocol) is the standard protocol for controlling Chromium, and Playwright speaks it natively.

Here's a minimal TypeScript example:

import { chromium } from 'playwright';

async function main() {
  // Connect to a Remote Browser session via CDP
  const browser = await chromium.connectOverCDP(
    'wss://remote-browser.dev/cdp/session-id-here'
  );

  // Get the default context and page
  const context = browser.contexts()[0];
  const page = context.pages()[0];

  // Navigate and interact
  await page.goto('https://example.com');
  const title = await page.title();
  console.log(`Page title: ${title}`);

  // Do agent work...
  await page.click('button.submit');
  await page.waitForSelector('.result');

  // Don't close the browser — it stays alive in the cloud
  // await browser.close();
}

main().catch(console.error);

Notice what's missing: no chromium.launch(), no executable path, no --headless flag. The browser is already running in the cloud. You're attaching to it.

This is the core difference between local automation and a cloud based browsercore. You don't manage the browser process; you connect to it.

Playwright Remote vs. Raw CDP

Playwright's connect_over_cdp is the easiest entry point, but it's not the only option. You can also use raw CDP directly, or use Puppeteer's connect method.

FeaturePlaywright connectOverCDPRaw CDP (WebSocket)Puppeteer connect
ProtocolCDP over WebSocketCDP over WebSocketCDP over WebSocket
API abstractionHigh-level (selectors, auto-wait)Low-level (DOM, Runtime, Network)Medium-level
Session managementAutomatic contexts/pagesManual targetsManual targets
Best forAI agents, E2E testsCustom tooling, debuggingPuppeteer codebases
Learning curveLowHighMedium
Browser supportChromium (Firefox via CDP is limited)ChromiumChromium

For most AI agent workloads, Playwright's connectOverCDP is the right choice. It gives you high-level APIs for clicking, typing, and extracting data without managing raw protocol messages.

Raw CDP makes sense when you need fine-grained control—for example, intercepting network requests, modifying responses, or implementing custom automation logic that Playwright doesn't expose.

Keeping Sessions Alive Across Cloud Workers

One of the most common questions from AI agent developers is: "How do I keep a browser session alive across multiple workers?"

The answer is simple: don't put the browser in the worker. Put it in the cloud.

With Remote Browser, each session has a stable ID. Any worker—whether it's a serverless function, a container, or a long-running process—can connect to that session ID at any time.

Here's the pattern:

  1. Create a session when the agent starts a task.
  2. Store the session ID in your database or state store.
  3. Connect from any worker using that session ID.
  4. Disconnect when the worker finishes its chunk of work.
  5. Reconnect from the next worker to continue where the last one left off.

This works because the browser process runs independently of your application code. It doesn't matter which worker connects, as long as it has the session ID and valid authentication.

Browser Automation for AI Agents: Selenium and Beyond

Playwright isn't the only option. Remote Browser also supports Selenium, which is useful if you're migrating an existing Selenium suite or working in a language where Selenium has better bindings.

The connection pattern is similar: you point your Selenium WebDriver at the remote browser's WebDriver endpoint instead of launching a local driver.

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("--remote-debugging-port=9222")
# Connect to Remote Browser's WebDriver endpoint
driver = webdriver.Remote(
    command_executor="https://remote-browser.dev/wd/hub",
    options=options
)

driver.get("https://example.com")
print(driver.title)
driver.quit()

The key insight is that the browser core is the same—Chromium—regardless of which automation library you use. The cloud based browsercore abstracts away the infrastructure, and your existing code works with minimal changes.

What About Firefox and WebKit?

Playwright supports three browser engines: Chromium, Firefox, and WebKit. Remote Browser currently focuses on Chromium, which is the right choice for most AI agent workloads.

Chromium has the best CDP support, the largest ecosystem of automation tools, and the most consistent rendering behavior. Firefox's CDP implementation is incomplete, and WebKit doesn't support CDP at all (it uses a different protocol).

If you need Firefox or WebKit, you're better off running those browsers locally or on your own infrastructure. For production AI agents, Chromium is the pragmatic default.

Production Criteria for a Cloud Browsercore

Not all cloud browser services are equal. Here's what to evaluate when choosing a cloud based browsercore for production:

Session Persistence

Can you disconnect and reconnect to the same session? Does the browser state (cookies, localStorage, profiles) survive across connections? This is non-negotiable for AI agents that work in steps.

Live Debugging

Can you watch the browser in real time? A live viewer is essential for debugging agent behavior. You need to see what the agent sees, not just read logs.

Proxy Support

Can you route traffic through different IPs? This is critical for sites that block datacenter IPs or for geo-specific testing.

Usage Controls

Can you set limits on session duration, concurrent sessions, or spending? Without usage controls, a runaway agent can burn through your budget in minutes.

API Compatibility

Does the service support Playwright, Puppeteer, and Selenium? Or are you locked into a proprietary API? Standard protocols mean you can switch providers without rewriting your code.

Remote Browser vs. Self-Hosted Chromium

You could run your own Chromium cluster. It's not impossible—it's just a lot of work.

CriterionSelf-Hosted ChromiumRemote Browser (Cloud Browsercore)
Setup timeDays to weeksMinutes
Session persistenceYou build itBuilt-in
Live viewerYou build itBuilt-in
Proxy managementYou build itConfigurable
ScalingManual (K8s, Docker)Automatic
MaintenanceOngoing (updates, security)Managed
CostHigh upfront, variableUsage-based
Protocol supportFull controlCDP, Playwright, Selenium

Self-hosting gives you full control, but it also gives you full responsibility. You're on the hook for browser updates, security patches, capacity planning, and debugging infrastructure issues.

For most teams, the trade-off favors a managed cloud based browsercore. You pay for browser-hours and get back engineering time.

Use Cases for a Cloud Browsercore

AI Web Agents

The primary use case. Agents that browse the web, fill forms, extract data, and make decisions need a reliable browser runtime. A cloud based browsercore gives them persistent sessions and consistent behavior.

Browser Automation at Scale

Running many browser sessions for scraping, monitoring, or testing. A cloud browsercore handles the concurrency without you managing infrastructure.

QA and E2E Testing

Running Playwright or Selenium tests against a real browser in the cloud. Useful for CI/CD pipelines where you don't want to maintain browser binaries.

Remote Browser Control

When you need to control a browser from anywhere—a mobile app, a desktop tool, or a web dashboard. The browser runs in the cloud, and your client connects over the network.

Getting Started with Remote Browser

To start using Remote Browser's cloud based browsercore:

  1. Create an account at remote-browser.dev.
  2. Get your API key from the dashboard.
  3. Create a session via the API or the dashboard.
  4. Connect using Playwright, Puppeteer, or Selenium.
  5. Build your agent on top of the persistent session.

The documentation covers the full API, including session management, proxy configuration, and live debugging.

For pricing details, check the pricing page for current rates and session limits.

If you're building AI agents that browse the web, these posts cover adjacent topics:

External Resources

For a deeper dive into the Chrome DevTools Protocol, see the official CDP documentation. It's the protocol that makes cloud based browsercore connections possible.

The Bottom Line

A cloud based browsercore is the production runtime for AI web automation. It decouples the browser from your application, provides persistent sessions, and scales horizontally without you managing infrastructure.

Whether you're building an AI agent, running browser automation at scale, or migrating from local Playwright, Remote Browser gives you a hosted Chromium runtime that speaks the protocols you already know.

The browser is the hard part. Let the cloud handle it.