How AI Agents Avoid Bot Detection with Camoufox
Skills:
AI Systems Design90%
⚡ Become a high-earning AI engineer: https://aiengineer.community/join
Point a normal automation browser at a modern website and it gets flagged as a bot in milliseconds. Point a stealth browser like Camoufox at the same page and it reads as a regular human visitor. I built a small bot-detection page, plus a board that maps all 8 checks, then drove the page with vanilla Playwright (caught) and Camoufox (passes) so you can see exactly what gives an AI agent away, and how it hides.
What You'll Learn
- The 2 layers every site uses to spot bots: HTTP header checks on the server and JavaScript fingerprinting in the browser
- Why bot detection is about consistency: any single signal that contradicts the others flags the whole visit (worst-of)
- Why header checks only catch crude clients like curl and python-requests, and what they miss
- The navigator.webdriver flag and automation globals (cdc_, __playwright) that expose a driven browser
- How WebGL renderer, canvas, and audio fingerprints reveal a headless or software-rendered machine
- The font and screen-geometry tells that flag a spoofed user agent running on a headless server
- Why vanilla Playwright Firefox passes every header check but still gets caught client-side
- Why a real stealth browser has to patch the engine in C++ instead of injecting JavaScript
- Why most bot detection happens in silence, with no CAPTCHA in sight
- The layers Cloudflare and Akamai add beyond this demo: TLS handshake and HTTP/2 fingerprinting
Camoufox, the stealth browser from the demo: https://camoufox.com/
Timestamps
0:00 Two visitors, two verdicts
0:34 Bot detection theory: a stack of signals
1:54 The 8 checks split into 2 layers
2:45 Server layer: user agent and header checks
4:06 Client layer: navigator.webdriver and leaked globals
5:11 WebGL, font, geometry, and canvas fingerprints
7:52 Why a stealth browser patches the engine
8:18 Camoufox: Firefox patched in C++
8:39 Live demo: my normal browser passes
8:53 Vanilla Playwright
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
More on: AI Systems Design
View skill →Related AI Lessons
⚡
⚡
⚡
⚡
Session-Level Spending Limits Are Not Governance. Your Agent Needs Autonomy Tiers.
Dev.to · Kavin Kim
Access Is Not Agency
Dev.to · Harry Floyd
Why My Polymarket Bot Watches Chainlink, Not Binance - The Oracle Gap That Changes Every Close Trade
Dev.to · Trader Developer
Supercharging AI with Real Estate Open Data: Building a Smarter MCP Server
Medium · AI
Chapters (10)
Two visitors, two verdicts
0:34
Bot detection theory: a stack of signals
1:54
The 8 checks split into 2 layers
2:45
Server layer: user agent and header checks
4:06
Client layer: navigator.webdriver and leaked globals
5:11
WebGL, font, geometry, and canvas fingerprints
7:52
Why a stealth browser patches the engine
8:18
Camoufox: Firefox patched in C++
8:39
Live demo: my normal browser passes
8:53
Vanilla Playwright
🎓
Tutor Explanation
DeepCamp AI