The open-source Patchright alternative
Patchright is the best-maintained patched Playwright around: a drop-in replacement that removes the driver's automation leaks. It does not change the browser itself, so the fingerprint a site reads is still your machine's. Clearcote works one layer down, in the engine, and the two combine.
What is Patchright?
Patchright (by Vinyzu and Kaliiiiiiiiii) is a patched build of Playwright for Python, Node.js and .NET. It is Apache-2.0, tracks Playwright's releases closely (1.63 at the time of writing, the same as upstream), and is heavily used: around 3.5 million PyPI downloads a month plus roughly 285,000 npm downloads a week. It only supports Chromium-based browsers.
Its patches target the automation driver. It avoids the Runtime.enable leak by running code in isolated execution contexts, disables the Console API (so console events don't work), drops --enable-automation and adds --disable-blink-features=AutomationControlled, and can reach into closed shadow roots. Init scripts are delivered through request routing, which the README notes is detectable by timing.
What Patchright deliberately leaves alone is the browser. It recommends running a real Chrome, and whatever Chrome it launches reports your actual hardware, GPU, fonts and screen. On a desktop that can be ideal. On a server or in Docker, the real values are those of a VM: a software GPU, a Linux font set, a headless screen. Every session on that machine also shares one identity.
Clearcote vs Patchright
| Feature | Clearcote | Patchright |
|---|---|---|
| Layer it works on | The browser engine (C++ / Blink) | The Playwright driver |
| Driver / CDP leaks | Engine neutralizes Runtime.enable; isolated worlds at launch | Patched driver avoids Runtime.enable; Console API disabled |
| Fingerprint identity | Coherent persona from a seed (canvas, WebGL, fonts, navigator, screen) | Your host's real values |
| Identities per machine | One per seed, as many as you need | One: the machine itself |
| On servers and in Docker | Persona hides the VM's software GPU and fonts | Reports the VM's real hardware |
| TLS / network | ClientHello follows the persona's Chrome version | Whatever the launched Chrome sends |
| Playwright release parity | Works with stock Playwright of any version | Patched build per Playwright release |
| Languages | Python, Node, .NET | Python, Node, .NET |
| Cost | Open build free; latest build free with GitHub; Pro $49/mo | Free & open (Apache-2.0) |
Comparison compiled September 2026. Patchright is open source (apache-2.0); details change — check its project for the latest.
Why teams pick Clearcote
A different layer, not a rival
Detection reads three places: the driver, the CDP session, and the fingerprint. Patchright covers the first two. Clearcote covers the fingerprint in the engine, and its launch defaults handle the CDP side as well.
An identity you choose
With Patchright on a stock Chrome, the fingerprint is the machine you run on. Clearcote gives each seed its own consistent machine, which matters most on servers where the real one looks like a VM.
No driver to keep in sync
Clearcote works with the official Playwright and Puppeteer packages, so you upgrade them on their own schedule instead of waiting for a patched build.
Coherent down to TLS
The persona's claimed Chrome version carries through to the TLS ClientHello, so the network layer agrees with the JavaScript.
When Patchright might be the better pick
- You run on a real desktop with a real Chrome and a normal profile, and the only tells you need gone are the driver's.
- You want a drop-in Playwright replacement and nothing else to install.
- Or use both: Patchright accepts any Chromium binary, so you can keep its driver patches and put Clearcote underneath with
executable_path=clearcote.download().
FAQ
Patchright vs Clearcote: which one do I need?
They solve different layers. Patchright patches the Playwright driver so the automation session is harder to see. Clearcote patches the browser so the fingerprint (canvas, WebGL, fonts, navigator, TLS) is a coherent persona instead of your host. If your fingerprint is the problem, Patchright alone won't change it.
Can I use Patchright with Clearcote?
Yes. Patchright launches any Chromium binary. Get the Clearcote path from the SDK with download() and pass it as executable_path, along with your --fingerprint arguments.
Does Patchright change the browser fingerprint?
No. It changes launch flags and how the driver talks to the browser. Canvas, WebGL, fonts, screen and hardware come from the Chrome you run and the machine it runs on.
Why does console.log not work in Patchright?
Patchright disables the Console API to avoid a detection side effect of the CDP Runtime and Console domains. Its README suggests using a JavaScript logger if you need console output.
Related reading
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.