Early access — now open

Browser built for AI agents

Clawbrowser is a Chromium fork with built-in fingerprint management and transparent proxy routing. Stop fighting captchas and bot detection at scale.

Works with Playwright, Puppeteer, and any CDP-compatible tool

Pre-built prompt

Let your agent install Clawbrowser

Who it's for

Who Clawbrowser is for

AI agents

AI agents

Automate with standard CDP—Playwright, Puppeteer, or anything that speaks DevTools. Fingerprints and proxy routing stay consistent so your agent sees a normal browser, not a brittle puppet.

Multi-account

Multi-account operators

Each fingerprint ID maps to its own profile directory: cookies, storage, and identity move together. Separate accounts stay separated on disk by design.

Architecture

One browser binary, one process

Clawbrowser pairs a Chromium fork with an embedded Rust library, libclaw, for fingerprint profiles and proxy credentials. At launch, your profile is loaded so renderer and GPU processes read the same values—no per-call glue from your automation code.

Built-in verification

On startup the browser can run checks that proxy egress matches the profile and that key JavaScript surfaces match what was generated—so failures are obvious before your agent touches the page.

Zero glue code

Fingerprint spoofing and proxy routing happen inside the binary. Your automation scripts connect via standard CDP—no middleware, no wrappers, no per-call configuration.

Fingerprint surfaces

Surfaces stay internally consistent

Profiles are generated to match real-world combinations—platform, fonts, timezone, and proxy geography line up so you are not advertising contradictory signals.

  • Canvas 2D and WebGL (vendor, renderer, readbacks)
  • AudioContext output
  • Client rects and bounding boxes
  • Navigator: user agent, languages, platform, hardware signals
  • Screen metrics, timezone, and fonts
  • Media devices, plugins, speech voices
  • WebRTC policy oriented toward relay usage to reduce IP leaks

Proxy routing

Proxy routing from the fingerprint profile

Proxy credentials ride along with the fingerprint payload. Clawbrowser does not pick a separate proxy stack at launch—whatever the profile contains is what the browser uses for that session.

  • Provider-agnostic: residential, datacenter, or other types expressed in the profile.
  • One proxy per launch; no mid-session rotation inside a single run.
  • If the proxy is broken or expired, relaunch after fixing credentials or run with --regenerate to fetch a fresh profile from the API.

CLI

CLI that stays familiar

The executable is Chromium with Clawbrowser hooks. Standard Chromium flags pass through; Clawbrowser adds profile-oriented commands for fingerprints and automation-friendly output.

bash
$ export CLAWBROWSER_API_KEY=clawbrowser_xxxxx

$ clawbrowser --fingerprint=fp_abc123
$ clawbrowser --fingerprint=fp_abc123 --regenerate
$ clawbrowser --fingerprint=fp_abc123 --remote-debugging-port=9222
$ clawbrowser --fingerprint=fp_abc123 --headless
$ clawbrowser --list
$ clawbrowser

Agent integration

Connect over standard CDP

Launch with --remote-debugging-port, then attach the same way you would to any Chromium build. Spoofing and proxying are invisible to your automation.

Playwright · Python
browser = await p.chromium.connect_over_cdp("http://127.0.0.1:9222")
page = browser.contexts[0].pages[0]
await page.goto("https://example.com")
Playwright · Node
const browser = await chromium.connectOverCDP('http://127.0.0.1:9222');
const page = browser.contexts()[0].pages()[0];
await page.goto('https://example.com');
Puppeteer
const browser = await puppeteer.connect({ browserURL: 'http://127.0.0.1:9222' });
const [page] = await browser.pages();
await page.goto('https://example.com');

Available for macOS and Linux. Windows support is on the roadmap.