反偵測瀏覽器自動化專案完整指南:引擎層到 Agentic CLI 選型與架構

深度比較 Camoufox、Patchright、Stealth MCP 等主流反偵測瀏覽器專案,涵蓋 C++ 引擎層、CDP 驅動層、Agentic CLI 三大架構層級,提供選型矩陣與自建 Agentic CLI 架構藍圖。

引言

本文系統整理與 camofox-browser 相似的開源反偵測瀏覽器自動化專案,依架構層級分為三大類:

  1. 引擎層(C++ 級指紋偽造):直接修改瀏覽器原生碼,繞過 Cloudflare、DataDome、Akamai 等 WAF 的最強開源路線。
  2. CDP/驅動層補丁:不動瀏覽器二進制,修補 Playwright/Puppeteer 的 CDP 洩漏,維護成本低、Chromium 生態相容性最好。
  3. Agentic CLI / MCP 介面層:提供 CLI、MCP Server 或 SDK,讓 AI Agent 直接操控瀏覽器,並以 accessibility snapshot + 穩定 element refs 降低 token 成本。

文末另附 Camoufox vs camofox-browser 深度比較與自建 Agentic CLI 架構藍圖,供團隊依堆疊與交付目標快速決策。

一、引擎層反偵測:C++ 層級指紋偽造

此類專案在 Firefox/Chromium C++ 實作層攔截 fingerprint,非 JS shim,難以被 property descriptor、toString()、timing 分析偵測。

專案 引擎 語言 / API Agentic 介面 備註
daijro/camoufox Firefox C++ fingerprint injection Python + Playwright 相容 函式庫(可自包 API) camofox-browser 底層引擎
feder-cr/invisible_playwright Firefox C++ 級 fingerprint patch Python,Playwright drop-in CLI / 程式庫 同路線另一套 stealth Firefox
MUHVUGGAH/zorroz Camoufox C++ + Go wrapper Go 函式庫 Camoufox Go 生態延伸

daijro/camoufox

開源 anti-detect Firefox 自訂建置。指紋在 C++ implementation level 攔截,涵蓋 navigator、screen、WebGL、WebRTC、fonts、AudioContext、geolocation 等;內建 human-like cursor、BrowserForge 統計分佈指紋旋轉。官方文件:camoufox.com

實務建議:若要自幹 agentic CLI,最乾淨做法是「Camoufox binary + 自寫 thin server」。

feder-cr/invisible_playwright

同樣走 stealth Firefox + C++ 級 patch,強調「不是 JS shim」,可當 Playwright drop-in。安裝後用 python -m invisible_playwright fetch 下載驗證過的 Firefox binary。文件明確警告:不要用 headless=True(會跳過真實 rendering pipeline,破壞 canvas/audio/WebGL 一致性),應自行用 Xvfb 等隱藏顯示。

適合既有 Python Playwright agent 腳本、想最小改動換引擎的場景。

二、CDP/驅動層補丁:Chromium 路線

不改瀏覽器 binary,而是 patch Playwright/Puppeteer 的 CDP 洩漏(尤其 Runtime.enable)。維護成本較低,對現有 Chromium 生態相容性最好。

專案 修補重點 支援 宣稱可過
Kaliiiiiiiiii-Vinyzu/patchright Runtime.enable、Console.enable、command flags、closed shadow roots Chromium only;Node + Python Cloudflare、Kasada、Akamai、DataDome、Fingerprint.com、CreepJS 等
rebrowser/rebrowser-patches Runtime.enable 等 CDP 洩漏 Puppeteer + Playwright(Node/Python 預打補丁包) Cloudflare、DataDome CAPTCHA 頁
puppeteer-extra-plugin-stealth JS 層 stealth plugin(較舊) Puppeteer 對新一代 WAF 逐漸失效,常需搭配 rebrowser

Patchright

Playwright 的 undetected drop-in。核心是避免在 main world 打 Runtime.enable,改在 isolated ExecutionContext 執行 JS;並調整 default args(加 --disable-blink-features=AutomationControlled、移除 --enable-automation 等)。僅支援 Chromium 系。

有對應的 MCP 包裝可參考:dylangroos/patchright-mcp-lite

rebrowser-patches

針對 Puppeteer/Playwright 的 patch 集合,提供 rebrowser-playwrightrebrowser-puppeteer 等預打補丁 npm/PyPI 包,API 幾乎完全相容原版。

三、Agentic CLI / MCP 介面層

此層最像 camofox-browser 的「產品形態」:CLI 或 MCP server,讓 Claude Code / Cursor / OpenClaw 類 agent 直接操控瀏覽器,並用 snapshot + refs 省 token。

專案 反偵測底座 介面 特色
vibheksoni/stealth-browser-mcp nodriver + CDP MCP(Claude / Cursor) ~90 tools、network intercept、element cloning、模組化開關
ykshah1309/stealth-agent-browser-mcp rebrowser-playwright MCP AOM YAML refs + Set-of-Mark hybrid vision、token-lean
yelban/camofox-browser-skills camofox-browser / Camoufox Claude Code Skill + CLI 直接站在 camofox 上的 agent skill 層
browserbase/stagehand Playwright +(可接 Browserbase 雲端 stealth) SDK:act / extract / observe / agent 自然語言 + 程式碼混用的 agent browser SDK
browser-use/browser-use Playwright 等 Python agent framework 讓 LLM 以 agent loop 操作網站

stealth-browser-mcp

標榜可過 Cloudflare / antibot / 社群平台封鎖;建構在 nodriver + Chrome DevTools Protocol + FastMCP。提供完整 MCP 安裝路徑(Claude Code CLI / Desktop / Cursor),工具可拆成 11 個 section,支援 --minimal 輕量部署。適合「agent 聊天就能控瀏覽器 + 抓 network」的工作流。

stealth-agent-browser-mcp

架構最接近 camofox 的 agent 體驗:

  • browser_snapshot 回傳 Playwright aria snapshot YAML(約 2–5KB)+ [ref=eN]
  • 可切 hybrid 模式(YAML + Set-of-Mark 標號截圖)
  • 底座用 rebrowser-playwright 修 CDP leak
  • 內建 human mouse、proxy pool、可選 CapSolver / 2Captcha

與 vanilla playwright-mcp 相比,明確多了 CDP-level stealth。

Stagehand (Browserbase)

不是自幹 anti-detect binary,而是 AI browser agent SDK。四個 primitive:actextractobserveagent。本地可用 Playwright;上 production 可無痛接 Browserbase 雲端瀏覽器(含 captcha solving、session replay、stealth infra)。適合「agent 編排優先、反偵測交給基礎設施」的路線。

四、選型指南:依需求挑選專案

需求 首選 次選
要 C++ 引擎級、與 camofox 同血統 camoufox + 自包 API,或繼續用 camofox-browser invisible_playwright
既有 Playwright Chromium 程式碼、最小改動 Patchright rebrowser-playwright
既有 Puppeteer 程式碼 rebrowser-puppeteer puppeteer-extra-plugin-stealth(較弱)
直接給 Claude Code / Cursor 當 MCP stealth-agent-browser-mcpstealth-browser-mcp patchright-mcp-lite
自然語言 agent loop + 可上雲 Stagehand browser-use
已在用 camofox,只要 Claude Skill 層 camofox-browser-skills 自寫 OpenClaw / MCP wrapper

五、自建 Agentic CLI 架構藍圖

可參考 camofox-browser 的分層,用開源組件組一條同等架構:

┌─────────────────────────────────────────┐
│  Agentic CLI / MCP / OpenClaw tools     │  ← stealth-*-mcp、自寫 CLI
│  (snapshot + refs + navigate/click/type)│
├─────────────────────────────────────────┤
│  Session / Proxy / Cookie / Trace API   │  ← 參考 camofox REST 設計
├─────────────────────────────────────────┤
│  Driver patch 層(可選)                  │  ← Patchright / rebrowser
├─────────────────────────────────────────┤
│  Browser engine                         │
│  • Camoufox / invisible_playwright (FF) │  ← 最強反偵測
│  • Patchright Chromium                  │  ← 生態相容
└─────────────────────────────────────────┘

實務建議

  1. 反偵測上限要高 → 以 Camoufoxinvisible_playwright 當 engine,不要只靠 JS stealth plugin。
  2. Agent 介面 → 學 camofox / stealth-agent-browser-mcp:accessibility snapshot + 穩定 e1/e2 refs,避免把 raw HTML 餵給 LLM。
  3. Chromium 既有資產多 → Patchright 或 rebrowser 當 drop-in,再包一層 MCP。
  4. 生產部署 → Docker + idle shutdown + session isolation + optional residential proxy/GeoIP(camofox 已示範完整模式)。

六、Camoufox vs camofox-browser 深度比較

兩者不是同一層級的競品。 Camoufox 是 C++ 級 anti-detect Firefox 引擎;camofox-browser 是 站在 Camoufox 之上、專為 AI agent 打造的 REST / CLI 伺服器

一句話定位

維度 Camoufox camofox-browser
本質 自訂 Firefox binary + Python Playwright 介面 Node.js 伺服器,包裝 Camoufox 成 agent API
堆疊位置 引擎層 應用 / Agent 介面層
反偵測來源 自己(C++ fingerprint injection) 繼承 Camoufox,外加 session / proxy 等運維能力
主要使用方式 from camoufox.sync_api import Camoufox 寫腳本 npm starthttp://localhost:9377 + tools / curl
目標使用者 爬蟲工程師、要精細控制 fingerprint 的開發者 要讓 LLM / OpenClaw / agent 直接瀏覽網站的人

架構關係

你的 Agent / CLI / OpenClaw
        │
        ▼
┌───────────────────────────┐
│  camofox-browser          │  ← REST、snapshot、refs、cookies、proxy、Docker
│  (Node server + plugins)  │
└───────────┬───────────────┘
            │ 啟動 / 驅動
            ▼
┌───────────────────────────┐
│  Camoufox                 │  ← C++ 級 navigator / WebGL / WebRTC / fonts…
│  (custom Firefox build)   │
└───────────────────────────┘

反偵測能力

兩邊在 fingerprint 強度上同源:攔截發生在 C++ 實作層,非 JS shim。Camoufox 官方能力包含 navigator 全套、screen/window、geolocation/timezone/locale、fonts、WebGL、WebRTC IP(protocol level)、AudioContext、human-like cursor、BrowserForge 統計分佈自動補齊等;並通過 CreepJS、Rebrowser Bot Detector、BrowserScan、reCaptcha、DataDome 等測試。

結論:要比「過 Cloudflare / 指紋偵測」的上限 → 兩者同級(都是 Camoufox 引擎)。 camofox-browser 不會比 Camoufox「更 stealth」,也不會更差(除非配置錯 proxy / headless 顯示管線)。

Agent / CLI 體驗

能力 Camoufox camofox-browser
Accessibility snapshot + 穩定 e1/e2 refs 需自己用 Playwright a11y API 組 內建 GET /tabs/:id/snapshot
Token-efficient 輸出 自己做 標榜約 90% 更小
OpenClaw / agent tools 無官方 plugin camofox_create_tabsnapshotclicktype
Search macros(@google_search 等) 內建十多個
Cookie import(Netscape + API key) Playwright addCookies 自己寫 目錄沙箱 + Bearer + 預設關閉
Session 持久化 / VNC 登入 自己管 profile ~/.camofox/profiles、noVNC plugin
Proxy + GeoIP 與 locale 對齊 Camoufox 支援 config env 一鍵(含 backconnect sticky)
YouTube transcript yt-dlp 端點
OpenAPI / /docs
閒置省記憶體 自己實作 閒置約 ~40MB 級設計
部署(Docker / Railway / Fly) 自己包 binary Makefile、Dockerfile.ci、railway.toml

若目標是 Agentic CLI / MCP / 遠端 agent 瀏覽,camofox-browser 明顯更完整。

語言與整合

  • Camoufox:官方主力 Pythoncamoufox PyPI、Playwright-compatible API);也可用 executable + 任意 Playwright 綁定。
  • camofox-browserNode.js / TypeScript 伺服器,HTTP 對任何語言的 agent 都友善;並有 npm 包 @askjo/camofox-browser、OpenClaw plugin。

控制粒度與維護

Camoufox camofox-browser
Fingerprint JSON 逐欄控制 完整、一等公民 多半透傳 / 依賴預設 + proxy GeoIP
自建 Firefox / 打 patch multibuild.py、Linux build 系統 通常用預抓 binary(camoufox-js fetch
多一層抽象的成本 多 Node 進程、API 版本、telemetry 選項
上游節奏 引擎作者 daijro 直接維護 依賴 Camoufox 版本 + 自身 server 功能迭代
授權 見 repo MIT

什麼時候選誰

選 Camoufox 若你…

  • Python 寫 scraping / automation,要 Playwright drop-in
  • 直接控制 每個 fingerprint 欄位、fonts、humanize cursor
  • 會自建 pipeline(自己的 CLI、自己的 MCP、自己的 queue)
  • 不需要現成 multi-user REST、OpenClaw tools、VNC cookie 流程
  • 在意最少抽象層、直接跟引擎作者版本走

選 camofox-browser 若你…

  • AI agent 開箱能瀏覽(snapshot + refs + click/type/navigate)
  • Node / 任意語言 HTTP client / OpenClaw
  • 要 cookie import、session 持久化、proxy GeoIP、Docker/Railway 一鍵
  • 一台機器給多個 agent / user 隔離 session
  • 接受「反偵測上限 = Camoufox」,把工程時間花在 agent 工作流而非 browser server

兩者一起用(常見且合理)

  • 開發 / 研究 fingerprint:本機 Python + Camoufox
  • 生產 agent 服務:camofox-browser 當 daemon,必要時 CAMOUFOX_EXECUTABLE 指到自管的 Camoufox bundle
  • 自幹 Agentic CLI:引擎用 Camoufox,API 形狀抄 camofox-browser(tab lifecycle、snapshot refs、access key)

結論

評分面向 勝者 原因
反偵測上限 平手(同源) 都是 Camoufox C++ 引擎
當「瀏覽器引擎 / 函式庫」 Camoufox 更底層、Python API、fingerprint 控制完整
當「Agentic browser server / CLI」 camofox-browser REST、refs、macros、session、部署、OpenClaw
自幹產品、長期可控 Camoufox + 自寫薄封裝 不綁死 server 產品決策
最快讓 agent 上線繞過 bot 偵測 camofox-browser 安裝即有 agent 語意 API

對 AI agent / SaaS / 自動化 stack 更務實的預設:

  • 現成 agent 瀏覽能力camofox-browser 更好(它就是 Camoufox 的 agent 發行版)。
  • 引擎本體、Python 深度整合、或自建等同 camofox 的 CLICamoufox 更好(camofox-browser 無法取代引擎本身)。

Camoufox 是引擎;camofox-browser 是把該引擎做成 agent 基礎設施的產品層。 「更好」= 你卡在哪一層。卡在 Cloudflare 指紋 → 兩者一樣靠 Camoufox;卡在 agent 怎麼穩定 click / 省 token / 多 session 部署 → camofox-browser 勝出。