Skip to content

The open-source Zendriver alternative

Zendriver is the community fork of nodriver: fast, async, CDP-only, with open issues and Docker support. Like nodriver it drives a stock Chrome, so the fingerprint is still your machine's. Clearcote changes that fingerprint in the engine, and Zendriver can drive it.

What is Zendriver?

Zendriver is a fork of nodriver started to merge pull requests that had stalled upstream, add static typing and linting, and open the project to contributions. It is async-first, talks the Chrome DevTools Protocol directly with no Selenium or WebDriver, and has a companion Docker setup for running a GPU-accelerated, non-headless Chrome on Linux. It is AGPL-3.0, has about 1,400 GitHub stars and around 120,000 PyPI downloads a month, and released 0.16 in August 2026.

Zendriver inherits nodriver's design: it removes the WebDriver surface entirely, but the Chrome it controls is unmodified. Canvas, WebGL, fonts and hardware come from the host, and there is no way to give a session a different identity. The AGPL-3.0 licence is strong network copyleft, which matters if you run it as part of a hosted service.

Clearcote vs Zendriver

FeatureClearcoteZendriver
Approach Engine-level C++ patches Direct CDP client on a stock Chrome
Fingerprint identity Coherent persona from a seed Your host's real values
WebDriver surface None: driven over CDP None: driven over CDP
Docker Official image with a CDP endpoint Companion image for GPU-accelerated Chrome (Linux)
TLS / network ClientHello follows the persona's Chrome version Whatever the local Chrome sends
Interface Playwright & Puppeteer, plus a raw CDP endpoint Its own async Python API
License Open build BSD-3 AGPL-3.0 (network copyleft)
Cost Open build free; latest build free with GitHub; Pro $49/mo Free & open

Comparison compiled September 2026. Zendriver is open source (agpl-3.0); details change — check its project for the latest.

Why teams pick Clearcote

Changes what the browser reports

Zendriver controls Chrome cleanly, but the Chrome is stock. Clearcote sets canvas, WebGL, fonts, screen and hardware in the engine, as one consistent persona.

Many identities from one host

Every seed is its own machine, so parallel sessions don't share the fingerprint of the server they run on.

Permissive licence

AGPL-3.0 has obligations for network services. Clearcote's open build is BSD-3, which doesn't.

Works with Zendriver

Zendriver's browser_executable_path accepts any Chromium binary, including Clearcote.

When Zendriver might be the better pick

  • You like the async nodriver-style API and the host's own fingerprint is acceptable for your targets.
  • AGPL-3.0 is fine for how you use it.
  • Or run Zendriver on Clearcote: pass the binary as browser_executable_path and the fingerprint arguments as browser_args.

FAQ

Zendriver vs nodriver: what's the difference?

Zendriver is a fork of nodriver that merged pending fixes, added linting and typing, opened the issue tracker and added Docker support. The core approach, a direct CDP client for a stock Chrome, is the same.

Does Zendriver change the browser fingerprint?

No. It removes the WebDriver layer, but canvas, WebGL, fonts, screen and hardware come from the Chrome it launches and the machine it runs on.

Can Zendriver drive Clearcote?

Yes. Set browser_executable_path to the Clearcote binary (the SDK's download() returns its path) and pass --fingerprint in browser_args.

Related reading

CompareClearcote vs nodrivernodriver is the successor to undetected-chromedriver: fast, async, no Selenium, straight CDP. But it still drives a stock Chrome, so the fingerprint is your machine's. Clearcote keeps the CDP-first ergonomics and changes the fingerprint and TLS in the engine.Q&AWhat is CDP detection?The Chrome DevTools Protocol drives automation but leaves side-effects — Runtime.enable, injected init scripts, main-world execution — that a page can observe. Spotting those is CDP detection.DocsDeployment — Docker & CDP endpointRun Clearcote as a stealth CDP endpoint: the official Docker image, serve(), and attaching Playwright, Puppeteer or browser-use over CDP with no code change.CompareClearcote vs CamoufoxCamoufox is a well-built open-source anti-detect browser, on Firefox. Clearcote takes the same engine-level approach to Chromium, so your automation presents the browser about 69% of the web actually uses instead of one used by about 3%.CompareClearcote vs CloakBrowserCloakBrowser is a capable engine-level stealth Chromium with a large following, but the patched binary is closed source. Clearcote is engine-level too, runs a newer Chromium, and ships an open build whose every patch you can read and rebuild.CompareClearcote vs undetected-chromedriverundetected-chromedriver is still downloaded about 2 million times a month, but its last release was in February 2024. It hides the Selenium/ChromeDriver seam on a stock Chrome and never touches the fingerprint or the network layer. Clearcote changes both in the engine.

Try the open-source Chromium alternative

Free and open source, a drop-in for Playwright & Puppeteer, coherent down to the TLS handshake.

Free for one browser with GitHub. No card.