[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-74060":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":23,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":37,"lastSyncTime":38,"discoverSource":39},74060,"camoufox","daijro\u002Fcamoufox","daijro","🦊 Anti-detect browser","https:\u002F\u002Fcamoufox.com",null,"C++",9117,781,64,234,0,111,256,908,333,114.68,"Mozilla Public License 2.0",false,"main",[26,27,28,29,30,31,32,33],"antidetect","antidetect-browser","fingerprint","firefox","networking","playwright","scraping","webscraping","2026-06-12 04:01:13","\u003Cimg src=\"https:\u002F\u002Fcamoufox.com\u002Fstatic\u002Fbanner.svg\" align=\"center\">\n\n\u003Ch1 align=\"center\">Camoufox\u003C\u002Fh1>\n\n\u003Ch4 align=\"center\">The browser built for AI agents 🦊\u003C\u002Fh4>\n\n\u003Cp align=\"center\">                                      \nCamoufox is an open source browser built for AI agents. It is lightweight, mimics a human browser, and is optimized for LLM automation.\n\u003C\u002Fp>\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F12224\" target=\"_blank\">\n    \u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F12224\" alt=\"daijro%2Fcamoufox | Trendshift\" width=\"250\" height=\"55\"\u002F>\n  \u003C\u002Fa>\u003Cbr>\n  \u003Ca href=\"https:\u002F\u002Fpepy.tech\u002Fprojects\u002Fcamoufox\">\u003Cimg src=\"https:\u002F\u002Fstatic.pepy.tech\u002Fpersonalized-badge\u002Fcamoufox?period=total&units=INTERNATIONAL_SYSTEM&left_color=BLACK&right_color=GREEN&left_text=downloads\" alt=\"Total Downloads\"\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fpepy.tech\u002Fprojects\u002Fcamoufox\">\u003Cimg src=\"https:\u002F\u002Fstatic.pepy.tech\u002Fpersonalized-badge\u002Fcamoufox?period=monthly&units=INTERNATIONAL_SYSTEM&left_color=BLACK&right_color=GREEN&left_text=downloads%2Fmonth\" alt=\"Monthly Downloads\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fpepy.tech\u002Fprojects\u002Fcamoufox\">\u003Cimg src=\"https:\u002F\u002Fstatic.pepy.tech\u002Fpersonalized-badge\u002Fcamoufox?period=weekly&units=INTERNATIONAL_SYSTEM&left_color=BLACK&right_color=GREEN&left_text=downloads%2Fweek\" alt=\"Weekly Downloads\">\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n---\n\n> [!NOTE]\n> **All of the latest documentation is avaliable at [camoufox.com](https:\u002F\u002Fcamoufox.com).**\n\n> [!NOTE]\n> Browser development is active at [github.com\u002FCloverLabsAI\u002Fcamoufox](https:\u002F\u002Fgithub.com\u002FCloverLabsAI\u002Fcamoufox) and [github.com\u002FVulpineOS\u002FVulpineOS](https:\u002F\u002Fgithub.com\u002FVulpineOS\u002FVulpineOS).\u003Cbr>This repo is being used to merge checkpoint releases and should be used as the source of truth.\n\n> [!NOTE]\n> To make use of the alpha Camoufox releases, use the [`cloverlabs-camoufox`](https:\u002F\u002Fpypi.org\u002Fproject\u002Fcloverlabs-camoufox\u002F) pip package.\n\n---\n\n# Sponsors\n\n\u003Cdetails open>\n\u003Csummary>View\u003C\u002Fsummary>\n\u003Cbr>\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fscrapfly.io\u002F?utm_source=github&utm_medium=sponsoring&utm_campaign=camoufox\" target=\"_blank\">\n        \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fdaijro\u002Fcamoufox\u002Fmain\u002Fassets\u002Fscrapfly.png\" alt=\"Scrapfly.io\" width=\"200\">\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fscrapfly.io\u002F?utm_source=github&utm_medium=sponsoring&utm_campaign=camoufox\">Scrapfly\u003C\u002Fa> is an enterprise-grade solution providing Web Scraping API that aims to simplify the scraping process by managing everything: real browser rendering, rotating proxies, and fingerprints (TLS, HTTP, browser) to bypass all major anti-bots. Scrapfly also unlocks the observability by providing an analytical dashboard and measuring the success rate\u002Fblock rate in detail.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fcloverlabs.ai\u002F?utm_source=github&utm_medium=sponsoring&utm_campaign=camoufox\" target=\"_blank\">\n        \u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002FI3oe7xG.jpeg\" alt=\"cloverlabs.ai\" width=\"300\">\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fcloverlabs.ai\u002F?utm_source=github&utm_medium=sponsoring&utm_campaign=camoufox\">Clover Labs\u003C\u002Fa> is a Toronto based venture studio building AI agents for growth and distribution.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\" height=\"100\">\n      \u003Ca href=\"https:\u002F\u002Fserpapi.com\u002Fuse-cases\u002Fweb-search-api?utm_source=camoufox\" target=\"_blank\">\n        \u003Cimg width=\"350\" alt=\"color horizontal\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fcdf90178-869e-4f85-8288-3fe32da319d9\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fserpapi.com\u002Fuse-cases\u002Fweb-search-api?utm_source=camoufox\">SerpApi, a web search API\u003C\u002Fa> to scrape Google and other search engines with a simple API.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Proxy providers\n\nCamoufox is intended to be used with rotating proxies (preferably residential IPs). Check out these providers:\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.thordata.com\u002F?ls=github&lk=camoufox\" target=\"_blank\">\n        \u003Cimg alt=\"thordata\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ffa79fe26-633b-44a4-a2a8-bce570f180ca\" width=\"350\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.thordata.com\u002F?ls=github&lk=camoufox\">Thordata\u003C\u002Fa> - Your First Plan is on Us! 💰 Get 100% of your first residential proxy purchase back as wallet balance, up to $900.\u003Cbr>\u003Cbr>\n      \u003Cb>⚡ Why Thordata?\u003C\u002Fb>\u003Cbr>\n      • 🌍 190+ real residential & ISP IP locations\u003Cbr>\n      • 🔐 Fully encrypted, ultra-secure connections\u003Cbr>\n      • 🚀 Optimized for web scraping, ad verification & automation workflows\u003Cbr>\n      🔥 Don't wait - this is your \u003Cb>best time to start\u003C\u002Fb> with \u003Ca href=\"https:\u002F\u002Fwww.thordata.com\u002F?ls=github&lk=camoufox\">Thordata\u003C\u002Fa> and experience the safest, fastest proxy network.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fproxyempire.io\u002F?ref=camoufox&utm_source=camoufox\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"proxyempire\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fd1c5f849-5cb0-4aff-b48c-530bda2ee03f\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Cb>🚀 Camoufox × ProxyEmpire\u003C\u002Fb>\u003Cbr>\n      Running Camoufox? Your proxy layer decides whether you scale — or get blocked.\u003Cbr>\n      \u003Ca href=\"https:\u002F\u002Fproxyempire.io\u002F?ref=camoufox&utm_source=camoufox\">ProxyEmpire\u003C\u002Fa> delivers:\u003Cbr>\n      • 🌍 30M+ Residential IPs (170+ countries)\u003Cbr>\n      • 📱 4G\u002F5G Mobile Proxies\u003Cbr>\n      • 🔄 Rotating & Sticky Sessions\u003Cbr>\n      • ⚡ Unlimited Concurrent Sessions\u003Cbr>\n      • 🎯 Precise geo-targeting\u003Cbr>\n      • HTTP, HTTPS & SOCKS5 Support\u003Cbr>\n      Built for scraping, automation, and high-stealth workflows.\u003Cbr>\n      \u003Cb>🔥 Exclusive Offer\u003C\u002Fb> - Use code \u003Cb>Camoufox30\u003C\u002Fb>\u003Cbr>\n      Get \u003Cb>30% recurring discount\u003C\u002Fb> (not just first month). Upgrade your proxies. Reduce bans. Scale properly\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fbirdproxies.com\u002Ft\u002Fcamoufox\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"birdproxies\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fe146836d-eb92-4b05-8bd9-120fd95dca10\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      Hey, we built BirdProxies because proxies shouldn't be complicated or overpriced. Fast residential and ISP proxies in 195+ locations, fair pricing, and real support.\u003Cbr>\n      Try our FlappyBird game on the landing page for free data!\u003Cbr>\n      \u003Ca href=\"https:\u002F\u002Fbirdproxies.com\u002Ft\u002Fcamoufox\">Try Now\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fdiscord.com\u002Finvite\u002Fbirdproxies\">Discord\u003C\u002Fa>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fproxy-seller.com\u002F?partner=1W5MMSYEXKKTUK\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"birdproxies\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fd2771913-e2c1-453f-a258-4789139a841c\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fproxy-seller.com\u002F?partner=1W5MMSYEXKKTUK\">\n        \u003Ca href=\"https:\u002F\u002Fproxy-seller.com\u002F?partner=1W5MMSYEXKKTUK\">Proxy-Seller\u003C\u002Fa> - Premium Proxies for AI Agents, Scraping & Automation 🎁 Use code \u003Cstrong>CAMOUFOX for 15% OFF\u003C\u002Fstrong> IPv4, IPv6, ISP & Residential proxies + 10% OFF Mobile\u003Cbr>\n        \u003Cstrong>Why Choose Proxy-Seller?\u003C\u002Fstrong>\u003Cbr>\n        • 🌍 40M+ IPs across 220+ countries with city\u002FISP-level targeting\u003Cbr>\n        • 📶 Residential, ISP, Datacenter (IPv4\u002FIPv6) & 4G\u002F5G Mobile proxies\u003Cbr>\n        • ⚡ Up to 1 Gbps speed with 99% uptime\u003Cbr>\n        • 🔄 Flexible rotation — time-based, request-based, or sticky sessions\u003Cbr>\n        • 🛠️ Ready-made API for Python, Node.js, PHP, Java & Golang\u003Cbr>\n        • 🔒 SOCKS5 & HTTP(S) with login\u002Fpass or IP whitelisting\u003Cbr>\n        • 🎭 Perfect pairing with Camoufox for stealth automation\u003Cbr>\n        • 🕐 24\u002F7 support + 24-hour refund & replacement policy\u003Cbr>\n        Trusted by 500,000+ clients since 2014. Built for scraping, AI agents, ad verification, and SEO automation.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.rapidproxy.io\u002F?ref=daijro\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"rapidproxy\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F140337e0-50d5-452d-8a31-86c6b1761e47\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.rapidproxy.io\u002F?ref=daijro\">RapidProxy\u003C\u002Fa> - Power Your Data with Premium Proxies.\u003Cbr>\n      🎁 Try proxies for free  + Use code \u003Cstrong>RAPID10\u003C\u002Fstrong> for \u003Cstrong>10% OFF\u003C\u002Fstrong>\n      \u003Cbr>\n      \u003Cstrong>Why Choose RapidProxy?\u003C\u002Fstrong>\u003Cbr>\n      • 🌍 90M+ IPs in 200+ countries & regions\u003Cbr>\n      • ♾️ No expiration on traffic — use anytime, no pressure\u003Cbr>\n      • 🔥 Unlimited concurrency for maximum performance\u003Cbr>\n      • 💰 Starting from just $0.65\u002FGB — built for scale\u003Cbr>\n      • 📍 City-level targeting for precise geo access\u003Cbr>\n      • 🔄 Flexible session control tailored to your needs\u003Cbr>\n      Don’t miss out — start your free trial today and experience fast, stable, and scalable proxy performance with \u003Ca href=\"https:\u002F\u002Fwww.rapidproxy.io\u002F?ref=daijro\">RapidProxy\u003C\u002Fa>.\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.swiftproxy.net\u002F?ref=daijro\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"swiftproxy\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2f351c5e-f128-4478-83ff-46a261bea221\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fwww.swiftproxy.net\u002F?ref=daijro\">Swiftproxy\u003C\u002Fa> - \u003Cstrong>High-Performance Residential Proxies for Scalable Data Collection\u003C\u002Fstrong>\u003Cbr>\n      Built for developers who need \u003Cstrong>reliable\u003C\u002Fstrong>, anti-detection proxy infrastructure. Swiftproxy delivers stable connections, high success rates, and flexible control for large-scale scraping and automation.\u003Cbr>\n      • 🌍 195+ locations with ethically sourced residential IPs\u003Cbr>\n      • 🔄 \u003Cstrong>Rotating\u003C\u002Fstrong> & \u003Cstrong>sticky\u003C\u002Fstrong> sessions with precise geo-targeting\u003Cbr>\n      • ⚡ Optimized for \u003Cstrong>anti-ban\u003C\u002Fstrong> & \u003Cstrong>high success rate\u003C\u002Fstrong>\u003Cbr>\n      • 🔌 HTTP \u002F HTTPS \u002F SOCKS5 support\u003Cbr>\n      • 🧪 \u003Cstrong>Free 500MB trial\u003C\u002Fstrong> for testing\u003Cbr>\n      • 💸 \u003Cstrong>Special discount\u003C\u002Fstrong> code for Camoufox users: \u003Cstrong>PROXY90 - 10%\u003C\u002Fstrong>\u003Cbr>\n      Best for: Web scraping, automation, multi-accounting, and large-scale data extraction\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>     \n  \u003Ctr>\n    \u003Ctd width=\"25%\" align=\"center\" valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fmangoproxy.com\u002F?utm_source=github&utm_medium=partner&utm_campaign=daijro\" target=\"_blank\">\n        \u003Cimg width=\"380\" alt=\"mangoproxy\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fc2cd3ddf-c940-4906-be1b-5505dcdb6e06\"\u002F>\n      \u003C\u002Fa>\n    \u003C\u002Ftd>\n    \u003Ctd valign=\"middle\">\n      \u003Ca href=\"https:\u002F\u002Fmangoproxy.com\u002F?utm_source=github&utm_medium=partner&utm_campaign=daijro\">MangoProxy\u003C\u002Fa> is a Residential, ISP, Mobile and Datacenter proxy service designed for professional tasks where stability, speed, and anonymity matter.\u003Cbr>\n      Use code DAIJRO for 8% OFF ISP Static Proxies\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\u003C\u002Fdetails>\n\n---\n\n# Introduction\n\nCamoufox is a Firefox fork engineered for AI agents. It is headless, undetectable, and optimized to run at scale. With stealth features as the foundation, it gives your AI agent a browser that just works: no bot walls, no fingerprint leaks, no wasted tokens\\* parsing bloated DOM.\n\n## Highlights\n\n* **Built for AI agents** 🤖\n  * Minimal, debloated Firefox - fast to launch, cheap to run\n  * Drop-in Playwright compatibility via Python interface\n  * Token-efficient: clean DOM output, no CSS animations, or tracking noise\n  * Invisible to anti-bot systems so you can run your agent cluster locally or in the cloud without being flagged\n\n- **Undetectable by design** 🎭\n  - Page automation hidden from JavaScript inspection. See the [stealth page](https:\u002F\u002Fcamoufox.com\u002Fstealth) for more details.\n\n* **Fingerprint injection & rotation (without JS injection!)**\n  * All navigator properties (device, OS, hardware, browser, etc.) ✅\n  * Screen size, resolution, window, & viewport properties ✅\n  * Geolocation, timezone, locale, & Intl spoofing ✅\n  * WebRTC IP spoofing at the protocol level ✅\n  * Voices, speech playback rate, etc. ✅\n  * And much, much more!\n\n- **Anti Graphical fingerprinting**\n  - WebGL parameters, supported extensions, context attributes, & shader precision formats ✅\n  - Font spoofing & anti-fingerprinting ✅\n\n* **Optimized for automation**\n  * Human-like mouse movement 🖱️\n  * Blocks & circumvents ads 🛡️\n  * No CSS animations 💨\n\n- Debloated & optimized for memory efficiency ⚡\n- [PyPi package](https:\u002F\u002Fpypi.org\u002Fproject\u002Fcamoufox\u002F) for updates & auto fingerprint injection 📦\n- Stays up to date with the latest Firefox version 🕓\n\n---\n\n## Fingerprint Injection\n\nIn Camoufox, data is intercepted at the C++ implementation level, making the changes undetectable through JavaScript inspection.\n\nTo spoof individual fingerprint properties, pass a JSON containing properties to spoof to the [Python interface](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\u002Ftree\u002Fmain\u002Fpythonlib#camoufox-python-interface):\n\n```py\n>>> with Camoufox(config={\"property\": \"value\"}) as browser:\n```\n\nConfig data not set by the user will be automatically populated using [BrowserForge](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fbrowserforge) fingerprints, which mimic the statistical distribution of device characteristics in real-world traffic.\n\n[[See implemented properties](https:\u002F\u002Fcamoufox.com\u002Ffingerprint\u002F)]\n\n---\n\n## Python Usage\n\nCamoufox is compatible with your existing Playwright code. You only have to change your browser initialization.\n\n**Sync API**\n\n```python\nfrom camoufox.sync_api import Camoufox\n\nwith Camoufox() as browser:\n    page = browser.new_page()\n    page.goto(\"https:\u002F\u002Fexample.com\")\n```\n\n**Async API**\n\n```python\nfrom camoufox.async_api import AsyncCamoufox\n\nasync with AsyncCamoufox() as browser:\n    page = await browser.new_page()\n    await page.goto(\"https:\u002F\u002Fexample.com\")\n```\n\n[[Installation & usage](https:\u002F\u002Fcamoufox.com\u002Fpython\u002F)]\n\n### Making Full use of Hardware Spoofing\n\nFor stable releases, you should always use the main [`camoufox`](https:\u002F\u002Fpypi.org\u002Fproject\u002Fcamoufox\u002F) pip package. However, if you want to make use of per-context fingerprints and hardware spoofing, use the [`cloverlabs-camoufox`](https:\u002F\u002Fpypi.org\u002Fproject\u002Fcloverlabs-camoufox\u002F) package. This package is updated with each releases, whereas the official package is released on delay.\n\nMake sure you are using a virtual env to avoid conflicts between the two packages.\n\n**Installation**\n\n```bash\npip install cloverlabs-camoufox\n```\n\n**Fetch the latest prerelease browser** (recommended for newest patches)\n\n```bash\npython -m camoufox sync\npython -m camoufox set official\u002Fprerelease\npython -m camoufox fetch\n```\n\n**Usage** — the API is identical to the upstream package:\n\n```python\nfrom camoufox.sync_api import Camoufox\n\nwith Camoufox() as browser:\n    page = browser.new_page()\n    page.goto(\"https:\u002F\u002Fexample.com\")\n```\n\n#### Real fingerprint presets (recommended for v149+ binaries)\n\nBy default, fingerprint values are synthesized by BrowserForge. For better evasion against complex consistency checks, opt into the bundled presets — real fingerprints scraped from in-the-wild Firefox traffic:\n\n```python\nwith Camoufox(fingerprint_preset=True, os=\"macos\") as browser:\n    ...\n```\n\nThe library auto-routes by binary version: Firefox ≥ 149 loads `fingerprint-presets-v150.json` (312 presets covering v149–v152, 67 macOS \u002F 180 Windows \u002F 65 Linux); older binaries fall back to the original bundle. UA strings are rewritten to match the active binary, so opting in is safe across versions. Pass a preset dict instead of `True` to pin a specific fingerprint.\n\n---\n\n## Capabilities\n\nBelow is a list of patches and features implemented in Camoufox.\n\n### Fingerprint spoofing\n\n- Navigator properties spoofing (device, browser, locale, etc.)\n- Support for emulating screen size, resolution, etc.\n- Spoof WebGL parameters, supported extensions, context attributes, and shader precision formats.\n- Spoof inner and outer window viewport sizes\n- Spoof AudioContext sample rate, output latency, and max channel count\n- Spoof device voices & playback rates\n- Spoof the amount of microphones, webcams, and speakers available.\n- Network headers (Accept-Languages and User-Agent) are spoofed to match the navigator properties\n- WebRTC IP spoofing at the protocol level\n- Geolocation, timezone, and locale spoofing\n- Battery API spoofing\n- etc.\n\n### Stealth patches\n\n- Avoids main world execution leaks. All page agent javascript is sandboxed\n- Avoids frame execution context leaks\n- Fixes `navigator.webdriver` detection\n- Fixes Firefox headless detection via pointer type ([#26](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\u002Fissues\u002F26))\n- Removed potentially leaking anti-zoom\u002Fmeta viewport handling patches\n- Uses non-default screen & window sizes\n- Re-enable fission content isolations\n- Re-enable PDF.js\n- Other leaking config properties changed\n- Human-like cursor movement\n\n### Anti font fingerprinting\n\n- Automatically uses the correct system fonts for your User Agent\n- Bundled with Windows, Mac, and Linux system fonts\n- Prevents font metrics fingerprinting by randomly offsetting letter spacing\n\n### Playwright support\n\n- Custom implementation of Playwright for the latest Firefox\n- Various config patches to evade bot detection\n\n### Debloat\u002FOptimizations\n\n- Stripped out\u002Fdisabled _many, many_ Mozilla services. Runs faster than the original Mozilla Firefox, and uses less memory (200mb)\n- Patches from LibreWolf & Ghostery to help remove telemetry & bloat\n- Debloat config from PeskyFox, LibreWolf, and others\n- Speed & network optimizations from FastFox\n- Removed all CSS animations\n- Minimalistic theming\n- etc.\n\n### Addons\n\n- Load Firefox addons without a debug server by passing a list of paths to the `addons` property\n- Added uBlock Origin with custom privacy filters\n- Addons are not allowed to open tabs\n- Addons are automatically enabled in Private Browsing mode\n- Addons are automatically pinned to the toolbar\n- Fixes DNS leaks with uBO prefetching\n\n### Python Interface\n\n- Automatically generates & injects unique device characteristics into Camoufox based on their real-world distribution\n- WebGL fingerprint injection & rotation\n- Uses the correct system fonts and subpixel antialiasing & hinting based on your target OS\n- Avoid proxy detection by calculating your target geolocation, timezone, & locale from your proxy's target region\n- Calculate and spoof the browser's language based on the distribution of language speakers in the proxy's target region\n- Remote server hosting to use Camoufox with other languages that support Playwright\n- Built-in virtual display buffer to run Camoufox headfully on a headless server\n- Toggle image loading, WebRTC, and WebGL\n- etc.\n\n> [!NOTE]\n> Camoufox does **not** fully support injecting Chromium fingerprints. Some WAFs (such as [Interstitial](https:\u002F\u002Fnopecha.com\u002Fdemo\u002Fcloudflare)) test for Spidermonkey engine behavior, which is impossible to spoof.\n\n---\n\n# Stealth Overview\n\n## How Camoufox hides its automation library\n\n> [!WARNING]\n> **Current status as of 2026**:\n> There has been a year gap in maintenance due to a personal situation. Camoufox has gone down in performance due to the base Firefox version and newly discovered fingerprint inconsistencies. **Camoufox is currently under active development.**\n\nIn Camoufox, all of Playwright's internal Page Agent's code is sandboxed and isolated. This makes it impossible for a page to detect the presence of Playwright through Javascript inspection.\n\nNormally, Playwright injects some JavaScript into the page such as `window.__playwright__binding__` and to perform actions like querying elements, evaluating javascript, or running init scripts, which can be detected by websites. In Camoufox, these actions are handled in an isolated scope outside of the page. In other words, websites can no longer \"see\" any JavaScript that Playwright would typically inject. This prevents traces of Playwright altogether.\n\nHowever, even with hiding its automation library, Camoufox is not immune to inconsistencies in fingerprint rotation. This still requires maintenance to spot and fix.\n\n### Page Interactions\n\nAnti-bot systems also run client-side scripts to monitor your behavior. For example, they look for patterns in mouse movements, clicks, scrolling, and the timing between actions.\n\n\u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F6d33d6af-3537-4603-bf24-6bd3f4f8f455\" width=\"200px\" autoplay loop muted>\u003C\u002Fvideo>\n\nCamoufox tries its best with its human-like mouse movement algorithm. The natural motion algorithm was originally from [riflosnake's HumanCursor](https:\u002F\u002Fgithub.com\u002Friflosnake\u002FHumanCursor) and has been rewritten in C++ and modified for more distance-aware trajectories.\n\nHowever, this isn't perfect. It may still be detected with sophisticated enough analysis. (WIP for the future)\n\n---\n\n## How Camoufox rotates identities\n\nAI agents need to operate across many sessions without getting flagged or rate-limited. Rotating your IP address isn't enough — every browser session carries thousands of signals that create a unique **fingerprint**. A website can see your OS, GPU, screen resolution, fonts, timezone, and more. If those signals are inconsistent or unusual, you get blocked.\n\n### Market Share Distribution\n\nEven if you are rotating your IP for each running bot instance, web access firewalls can still use machine learning to analyze incoming web traffic to detect if it's abnormal. If the Linux market share was 5%, then suddenly it's 20%, it's a red flag. They will unconditionally require all Linux users to complete a captcha.\n\nCamoufox uses [BrowserForge](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fbrowserforge)'s fingerprint generator to mimic the statistical distribution of device data in real-world traffic. For example, Camoufox will make your browser look like a Linux user 5% of the time. Of that 5%, it will spoof a 2560x1440 screen resolution 9.5% of the time and an Intel HD GPU 27.5% of the time.\n\n### How can Camoufox be detected?\n\nCamoufox can spoof fingerprints with a correct market share. However, **fingerprints must also be internally consistent.** A Windows user agent with an Apple M1 GPU, a MacOS user agent with a Windows DirectX renderer, and a mobile device with a desktop screen resolution are all impossible, and will be flagged for being suspicious.\n\nOf the thousands of possible datapoints that must be changed to create a believable spoofed fingerprint, where each change must be consistent with the others, Camoufox doesn't always succeed. Anti-bot providers test Camoufox over and over again to find even 1 unique inconsistency, then they immediately update their background scripts to test for it.\n\n---\n\n## How does Camoufox compare to other solutions?\n\n### JavaScript-based solutions\n\nIn the past, developers tried injecting JavaScript to spoof these values, but it doesn't work reliably since JavaScript can't spoof everything. Incomplete coverage causes inconsistent fingerprints. For example, an anti-bot system will flag you if your network request's User Agent doesn't match your navigator's User Agent.\n\nAdditionally, all injected JavaScript is detectable in some way. Anti-bot systems can check if `Object.getOwnPropertyDescriptor` reveals an overwritten property, if a function's `toString()` no longer returns `[native code]` (revealing it was hijacked), or if data in the window context doesn't match the worker thread context. Workarounds only take you so far, but there will always be a way to detect JS injection if you search deep enough.\n\n#### Camoufox's approach\n\nSince Camoufox intercepts calls in the browser's C++ implementation level, all of the hijacked objects and properties appear native. There is no JavaScript hijacking to be detected.\n\nCamoufox also attempts to generate consistent and believable fingerprints with Browserforge as well. However, this can still be detected by complex fingerprint detection methods like mismatching data (as described earlier).\n\n\u003Chr width=50>\n\n### CDP-based libraries\n\nCDP (Chrome DevTools Protocol) is an automation protocol built into Chromium and Firefox. However, CDP makes no effort to hide the fact that it's an automation protocol and exposes much of its functionality in the page scope. Some common methods are checking if `navigator.webdriver` is true, catching it reading the stack debugger, checking for variables that ChromeDriver injects into the document object for internal communication, and more.\n\n#### Camoufox's approach\n\nWhile Playwright uses CDP to control Chromium, it uses _Juggler_ for Firefox. Juggler is a custom protocol developed before Firefox supported CDP ([original repo](https:\u002F\u002Fgithub.com\u002Fpuppeteer\u002Fjuggler)). It is a distinct module within Firefox, and not part of its core browser. This makes it easier to edit and control what's revealed to the page.\n\nCamoufox patches Juggler to give it its own isolated \"copy\" of the page to work with. Playwright can read and edit its own version of the page freely. Everything appears to work normally to it, but the real page is completely unaffected by these changes. The page also can't detect when things are being read (through tricks like hijacking getters) or listeners being added to watch elements.\n\nAdditionally, Juggler sends its inputs directly through the Firefox's original user input handlers, meaning they are handled the exact same way as if you were using the browser normally. Camoufox also patches Firefox's headless mode to appear the same as if it were running in a normal window. But as a fallback, the Python library can run Camoufox in a [virtual display](https:\u002F\u002Fcamoufox.com\u002Fpython\u002Fvirtual-display\u002F) if headless mode ever leaks.\n\n---\n\n\u003Ch1 align=\"center\">Build System\u003C\u002Fh1>\n\n> [!WARNING]\n> The content below is intended for those interested in building & debugging Camoufox. For Playwright usage instructions, see [here](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\u002Ftree\u002Fmain\u002Fpythonlib#camoufox-python-interface).\n\n### Overview\n\nHere is a diagram of the build system, and its associated make commands:\n\n```mermaid\ngraph TD\n    FFSRC[Firefox Source] -->|make fetch| REPO\n\n    subgraph REPO[Camoufox Repository]\n        PATCHES[Fingerprint masking patches]\n        ADDONS[uBlock & B.P.C.]\n        DEBLOAT[Debloat\u002Foptimizations]\n        SYSTEM_FONTS[Win, Mac, Linux fonts]\n        JUGGLER[Patched Juggler]\n    end\n\n    subgraph Local\n    REPO -->|make dir| PATCH[Patched Source]\n    PATCH -->|make build| BUILD[Built]\n    BUILD -->|make package-linux| LINUX[Linux Portable]\n    BUILD -->|make package-windows| WIN[Windows Portable]\n    BUILD -->|make package-macos| MAC[macOS Portable]\n    end\n```\n\nThis was originally based on the LibreWolf build system.\n\n## Build CLI\n\n> [!WARNING]\n> Camoufox's build system is designed to be used in Linux. WSL will not work!\n\nFirst, clone this repository with Git:\n\n```bash\ngit clone --depth 1 https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\ncd camoufox\n```\n\nNext, build the Camoufox source code with the following command:\n\n```bash\nmake dir\n```\n\nAfter that, you have to bootstrap your system to be able to build Camoufox. You only have to do this one time. It is done by running the following command:\n\n```bash\nmake bootstrap\n```\n\nFinally you can build and package Camoufox the following command:\n\n```bash\npython3 multibuild.py --target linux windows macos --arch x86_64 arm64 i686\n```\n\n\u003Cdetails>\n\u003Csummary>\nCLI Parameters\n\u003C\u002Fsummary>\n\n```bash\nOptions:\n  -h, --help            show this help message and exit\n  --target {linux,windows,macos} [{linux,windows,macos} ...]\n                        Target platforms to build\n  --arch {x86_64,arm64,i686} [{x86_64,arm64,i686} ...]\n                        Target architectures to build for each platform\n  --bootstrap           Bootstrap the build system\n  --clean               Clean the build directory before starting\n\nExample:\n$ python3 multibuild.py --target linux windows macos --arch x86_64 arm64\n```\n\n\u003C\u002Fdetails>\n\n### Using Docker\n\nCamoufox can be built through Docker on all platforms.\n\n1. Create the Docker image containing Firefox's source code:\n\n```bash\ndocker build -t camoufox-builder .\n```\n\n2. Build Camoufox patches to a target platform and architecture:\n\n```bash\ndocker run -v \"$(pwd)\u002Fdist:\u002Fapp\u002Fdist\" camoufox-builder --target \u003Cos> --arch \u003Carch>\n```\n\n\u003Cdetails>\n\u003Csummary>\nHow can I use my local ~\u002F.mozbuild directory?\n\u003C\u002Fsummary>\n\nIf you want to use the host's .mozbuild directory, you can use the following command instead to run the docker:\n\n```bash\ndocker run \\\n  -v \"$HOME\u002F.mozbuild\":\u002Froot\u002F.mozbuild:rw,z \\\n  -v \"$(pwd)\u002Fdist:\u002Fapp\u002Fdist\" \\\n  camoufox-builder \\\n  --target \u003Cos> \\\n  --arch \u003Carch>\n```\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\nDocker CLI Parameters\n\u003C\u002Fsummary>\n\n```bash\nOptions:\n  -h, --help            show this help message and exit\n  --target {linux,windows,macos} [{linux,windows,macos} ...]\n                        Target platforms to build\n  --arch {x86_64,arm64,i686} [{x86_64,arm64,i686} ...]\n                        Target architectures to build for each platform\n  --bootstrap           Bootstrap the build system\n  --clean               Clean the build directory before starting\n\nExample:\n$ docker run -v \"$(pwd)\u002Fdist:\u002Fapp\u002Fdist\" camoufox-builder --target windows macos linux --arch x86_64 arm64 i686\n```\n\n\u003C\u002Fdetails>\n\nBuild artifacts will now appear written under the `dist\u002F` folder.\n\n---\n\n## Development Tools\n\nThis repo comes with a developer UI under scripts\u002Fdeveloper.py:\n\n```\nmake edits\n```\n\nPatches can be edited, created, removed, and managed through here.\n\n\u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002FBYAN5J0.png\">\n\n### How to make a patch\n\n1. In the developer UI, click **Reset workspace**.\n2. Make changes in the `camoufox-*\u002F` folder as needed. You can test your changes with `make build` and `make run`.\n3. After you're done making changes, click **Write workspace to patch** and save the patch file.\n\n### How to work on an existing patch\n\n1. In the developer UI, click **Edit a patch**.\n2. Select the patch you'd like to edit. Your workspace will be reset to the state of the selected patch.\n3. After you're done making changes, hit **Write workspace to patch** and overwrite the existing patch file.\n\n---\n\n## Leak Debugging\n\nThis is a flow chart demonstrating my process for determining leaks without deobfuscating WAF Javascript. The method incrementally reintroduces Camoufox's features into Firefox's source code until the testing site flags.\n\nThis process requires a Linux system and assumes you have Firefox build tools installed (see [here](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox?tab=readme-ov-file#build-cli)).\n\n\u003Cdetails>\n\u003Csummary>\nSee flow chart...\n\u003C\u002Fsummary>\n\n```mermaid\nflowchart TD\n    A[Start] --> B[Does website flag in the official Firefox?]\n    B -->|Yes| C[Likely bad IP\u002Frate-limiting. If the website fails on both headless and headful mode on the official Firefox distribution, the issue is not with the browser.]\n    B -->|No| D[\"Run make ff-dbg(1) and build(2) a clean distribution of Firefox. Does the website flag in Firefox **headless** mode(4)?\"]\n    D -->|Yes| E[\"Does the website flag in headful mode(3) AND headless mode(4)?\"]\n    D -->|No| F[\"Open the developer UI(5), apply config.patch, then rebuild(2). Does the website still flag(3)?\"]\n    E -->|No| G[\"Enable privacy.resistFingerprinting in the config(6). Does the website still flag(3)?\"]\n    E -->|Yes| C\n    G -->|No| H[\"In the config(6), enable FPP and start omitting overrides until you find the one that fixed the leak.\"]\n    G -->|Yes| I[If you get to this point, you may need to deobfuscate the Javascript behind the website to identify what it's testing.]\n    F -->|Yes| K[\"Open the developer UI, apply the playwright bootstrap patch, then rebuild. Does it still flag?\"]\n    F -->|No| J[\"Omit options from camoufox.cfg(6) and rerun(3) until you find the one causing the leak.\"]\n    K -->|No| M[Juggler needs to be debugged to locate the leak.]\n    K -->|Yes| L[The issue has nothing to do with Playwright. Apply the rest of the Camoufox patches one by one until the one causing the leak is found.]\n    M --> I\n```\n\n#### Cited Commands\n\n| #   | Command                                       | Description                                                                                                 |\n| --- | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |\n| (1) | `make ff-dbg`                                 | Setup vanilla Firefox with minimal patches.                                                                 |\n| (2) | `make build`                                  | Build the source code.                                                                                      |\n| (3) | `make run`                                    | Runs the built browser.                                                                                     |\n| (4) | `make run args=\"--headless https:\u002F\u002Ftest.com\"` | Run a URL in headless mode. All redirects will be printed to the console to determine if the test passed.   |\n| (5) | `make edits`                                  | Opens the developer UI. Allows the user to apply\u002Fundo patches, and see which patches are currently applied. |\n| (6) | `make edit-cfg`                               | Edit camoufox.cfg in the default system editor.                                                             |\n\n\u003C\u002Fdetails>\n\n---\n\n## Thanks\n\nDebloating & references:\n\n- [LibreWolf](https:\u002F\u002Fgitlab.com\u002Flibrewolf-community\u002Fbrowser\u002Fsource): Debloat patches & build system inspiration\n- [BetterFox](https:\u002F\u002Fgithub.com\u002Fyokoffing\u002FBetterFox): Speed and debloat preferences\n- [Ghostery](https:\u002F\u002Fgithub.com\u002Fghostery\u002Fuser-agent-desktop): Debloat reference ([disable onboarding](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\u002Fblob\u002Fmain\u002Fpatches\u002Fghostery\u002FDisable-Onboarding-Messages.patch))\n\nWeb scraping & testing:\n\n- [riflosnake\u002FHumanCursor](https:\u002F\u002Fgithub.com\u002Friflosnake\u002FHumanCursor): Original human-like cursor movement algorithm, ported to C++\n- [CreepJS](https:\u002F\u002Fgithub.com\u002Fabrahamjuliot\u002Fcreepjs), [Browserleaks](https:\u002F\u002Fbrowserleaks.com), [BrowserScan](https:\u002F\u002Fwww.browserscan.net\u002F) - Valuable leak testing sites\n\nUI theming:\n\n- [Jamir-boop\u002Fminimalisticfox](https:\u002F\u002Fgithub.com\u002FJamir-boop\u002Fminimalisticfox): Inspired Camoufox's minimal css theming [(link)](https:\u002F\u002Fgithub.com\u002Fdaijro\u002Fcamoufox\u002Fblob\u002Fmain\u002Fsettings\u002Fchrome.css)\n","Camoufox 是一个专为AI代理设计的反检测浏览器。它使用C++开发，具有轻量级、模仿人类浏览器行为的特点，并针对大规模语言模型自动化进行了优化。该项目的核心功能包括指纹隐藏、网络请求伪装等技术手段，以帮助用户绕过网站的反爬虫机制。适用于需要进行网页抓取或自动化操作但又不希望被目标网站识别和封锁的场景，例如数据采集、市场分析等领域。",2,"2026-06-11 03:48:39","high_star"]