CloakHQ/CloakBrowser

Stealth Chromium that passes every bot detection test. Drop-in Playwright replacement with source-level fingerprint patches. 30/30 tests passed.

CloakBrowser – Stealth Chromium for Playwright / Puppeteer

What it is

  • A custom‑built Chromium binary whose fingerprint‑related code has been patched at the C++ source level (87 patches). The goal is to make the browser look exactly like a regular, non‑headless Chrome to anti‑bot services.
  • The binary is wrapped in thin Python, JavaScript/Node, and .NET libraries that expose the same API as Playwright (and Puppeteer). You can drop‑in import { launch } from 'cloakbrowser' (or from cloakbrowser import launch) and keep your existing automation code.

Why it matters for AI agents / automation

  • Many modern AI agents (LangChain, Crawl4AI, etc.) rely on a browser to fetch dynamic pages. Those agents often get blocked by reCAPTCHA, Cloudflare Turnstile, FingerprintJS, etc. CloakBrowser removes the need for separate CAPTCHA‑solving services by preventing the challenges from appearing in the first place.
  • Because the stealth is baked into the binary, it survives Chrome updates; you don’t have to keep re‑applying JavaScript‑based “stealth plugins”.

Key features (as described in the README)

Feature Detail
Source‑level stealth 87 C++ patches covering canvas, WebGL, audio, fonts, GPU, screen size, WebRTC, network timing, automation flags, CDP input behavior, etc.
Humanize flag humanize=True makes mouse moves, typing, and scrolling follow realistic Bézier curves and timing.
High reCAPTCHA v3 score Reported 0.9 (human‑level) on the latest build.
Passes Cloudflare Turnstile, FingerprintJS, BrowserScan Tested on >30 detection sites.
Auto‑download of correct binary pip install cloakbrowser / npm install cloakbrowser pulls the appropriate Chromium build (free or Pro) and caches it locally.
Proxy & geo‑IP support Accepts HTTP or SOCKS5 proxies; geoip=True syncs timezone/locale and spoofs WebRTC ICE candidates to the proxy’s exit IP.
Cross‑language wrappers Python, Node (Playwright & Puppeteer), and .NET (NuGet package).
Docker ready docker run --rm cloakhq/cloakbrowser cloaktest runs a quick sanity check; the binary works headless in containers.
Persistent profiles & extensions launch_persistent_context() keeps cookies/localStorage; extension_paths lets you load Chrome extensions.
CloakBrowser Manager (GUI) Separate open‑source GUI (MIT‑licensed) that lets you create unlimited isolated profiles, each with its own fingerprint, proxy, and CDP endpoint.

Typical usage (Python)

from cloakbrowser import launch

browser = launch(
    proxy="http://user:pass@residential-proxy:8080",
    geoip=True,
    headless=False,
    humanize=True,
)
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
browser.close()

Typical usage (Node – Playwright)

import { launch } from 'cloakbrowser';

const browser = await launch({
  proxy: 'http://user:pass@residential-proxy:8080',
  geoip: true,
  headless: false,
  humanize: true,
});
const page = await browser.newPage();
await page.goto('https://example.com');
await browser.close();

Installation

  • Python: pip install cloakbrowser
  • Node: npm install cloakbrowser playwright-core (or ... puppeteer-core for Puppeteer)
  • .NET: dotnet add package CloakBrowser
  • The first run automatically downloads the appropriate Chromium binary (~200 MiB) and verifies it with an Ed25519 signature.

Licensing & pricing

  • The repository is MIT‑licensed; the binary is distributed under a separate license.
  • A free key (GitHub sign‑in) gives one concurrent session with the latest build.
  • CloakBrowser Pro provides unlimited concurrent sessions, priority updates, and support. Keys are set via CLOAKBROWSER_LICENSE_KEY env var or the license_key argument.

How it works under the hood

  1. Binary build – The team forks Chromium, applies the 87 patches, builds the binary for each platform, signs the archive, and hosts it.
  2. Wrapper – The Python/JS/.NET package is a thin shim that downloads the binary, launches it via Playwright/Puppeteer, and injects a few launch arguments (e.g., --fingerprint-webrtc-ip=auto).
  3. Verification – Downloads are checked against a published Ed25519 checksum to prevent tampering.

When you might need it

  • Scraping sites that aggressively detect headless browsers.
  • Running AI agents that need to browse without human interaction but must stay under the radar.
  • QA or monitoring pipelines that must render pages exactly as a real user would.
  • Any automation that currently relies on fragile “stealth‑plugin” solutions.

Limitations

  • CloakBrowser does not solve CAPTCHAs that have already been presented; it only aims to keep them from appearing.
  • You still need to supply your own residential proxies for the highest success rates.
  • The free tier is limited to a single concurrent session; larger scale requires a Pro license.

All information above is taken directly from the project's README; no additional features have been inferred.

Related

  • Project
  • Project
  • Project
  • Project
  • Project