by ai-naymul
Open‑source alternative to Perplexity Comet, director.ai and firecrawl combined
# Add to your Claude Code skills
git clone https://github.com/ai-naymul/BrowserPilotLast scanned: 5/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-30T16:03:24.894Z",
"npmAuditRan": true,
"pipAuditRan": false
}BrowserPilot is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by ai-naymul. Open‑source alternative to Perplexity Comet, director.ai and firecrawl combined. It has 168 GitHub stars.
Yes. BrowserPilot passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/ai-naymul/BrowserPilot" and add it to your Claude Code skills directory (see the Installation section above).
BrowserPilot is primarily written in Python. It is open-source under ai-naymul on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh BrowserPilot against similar tools.
No comments yet. Be the first to share your thoughts!
Tell a browser what you want in plain English. It scrapes any website — even the ones that block everyone else.
Most scraping tools break the moment a site has Cloudflare, DataDome, or Akamai. BrowserPilot doesn't.
| BrowserPilot | Playwright | Selenium | Browserbase | Scrapy | |
|---|---|---|---|---|---|
| Bypasses DataDome/Akamai | Yes | No | No | Partial | No |
| AI vision (works on any site) | Yes | No | No | No | No |
| Bulk scraping with stealth | Yes | No | No | Yes ($$$) | Yes (no JS) |
| Self-hosted & free | Yes | Yes | Yes | No ($30/mo) | Yes |
| Human-like behavior | Yes | No | No | No | N/A |
| Pixelscan score | 105/105 | ~60/105 | ~40/105 | Unknown | N/A |
# Single page — just describe what you want
"Go to Amazon and extract all laptop prices under $1000 as JSON"
# Bulk scrape — hit hundreds of pages across protected sites
curl -X POST http://localhost:8000/bulk -H "Content-Type: application/json" -d '{
"urls": ["https://nike.com", "https://wayfair.com", "https://footlocker.com"],
"prompt": "Extract product data",
"format": "json",
"max_workers": 3
}'
# Watch it work — live browser stream in your browser
# Open http://localhost:8000 and watch the AI navigate in real-time
Output formats: JSON, CSV, PDF, HTML, Markdown, plain text — just ask.
Reddit's new React frontend — navigates feeds, clicks posts, scrolls comments. No selectors, no DOM parsing.
StatsMuse — scraped 191 rows of La Liga stats in seconds. JS-rendered data, no API needed.
10 protected sites in 60 seconds — DataDome, Akamai, Cloudflare, PerimeterX. Zero blocks.
We don't just claim stealth — we prove it. BrowserPilot passes every major bot detection benchmark:
| Benchmark | Score |
|---|---|
| Pixelscan | 105/105 Clear |
| Sannysoft | 29/29 Passed |
| Rebrowser | 9/10 Pass |
| BrowserScan | All Normal |
| DeviceAndBrowserInfo | "You are human!" |
| BrowserLeaks WebRTC | No IP Leak |
Don't trust screenshots — reproduce it yourself:
make benchmark # or: python -m backend.benchmark
Launches Ghost Mode against these detectors live and saves a screenshot + page text for each to outputs/benchmark/, plus an automated pass/fail summary. Use --only sannysoft to target one, or --dry-run to list them without launching a browser.
| Sannysoft | Pixelscan | DeviceInfo |
|---|---|---|
| Rebrowser | BrowserScan | BrowserLeaks |
|---|---|---|
These are the systems that block 99% of automation tools. BrowserPilot loaded 11 out of 14:
| Site | Anti-Bot | Result |
|---|---|---|
| Foot Locker | DataDome (Tier S) | Loaded |
| Leboncoin | DataDome (Tier S) | Loaded |
| Vinted | DataDome (Tier S) | Loaded |
| Booking.com | DataDome + custom (Tier S) | Loaded |
| Nike | Akamai (Tier A) | Loaded |
| New Balance | Akamai (Tier A) | Loaded |
| Zalando | Akamai (Tier A) | Loaded |
| Wayfair | PerimeterX (Tier A) | Loaded |
| Ticketmaster | Multiple (Tier A) | Loaded |
| Stake.com | Cloudflare Enterprise | Loaded |
| Cloudflare + custom | Loaded |
| Foot Locker (DataDome) | Leboncoin (DataDome) | Vinted (DataDome) |
|---|---|---|
| Nike (Akamai) | Wayfair (PerimeterX) | Ticketmaster |
|---|---|---|
| New Balance (Akamai) | Stake.com (CF Enterprise) | Booking.com |
|---|---|---|
Runtime.enable (defeats CDP detection)No noise injection. Anti-bots detect canvas/WebGL noise by rendering known values. Real fingerprints from real hardware, varied through configuration, is stronger.
Not a demo — a production bulk engine that scrapes hundreds of pages concurrently without getting blocked.
| Feature | How |
|---|---|
| 10 parallel workers | Each with unique fingerprints |
| Context rotation | New identity every N pages, no browser restart |
| Resource blocking | Skip images/fonts/CSS — 3-5x faster |
| Adaptive throttle | Backs off on 429s, speeds up on success |
| Checkpoint/resume | Crash? Resume from where you stopped |
| Shared intelligence | One worker blocked = all workers skip that combo |
# Start a bulk job
curl -X POST http://localhost:8000/bulk \
-H "Content-Type: application/json" \
-d '{
"urls": ["https://site1.com/page1", "https://site2.com/page2", "..."],
"prompt": "Extract product names and prices",
"format": "json",
"max_workers": 5,
"block_resources": true
}'
# Check progress
curl http://localhost:8000/bulk/{job_id}
# Resume after crash
curl -X POST http://localhost:8000/bulk/{job_id}/resume
| Benchmark | Pages | Speed | Blocked |
|---|---|---|---|
| Hacker News | 15/15 | 37.8 pages/min | 0 |
| DataDome + Akamai + PerimeterX + Cloudflare | 10/10 | 33.7 pages/min | 0 |
git clone https://github.com/ai-naymul/BrowserPilot.git
cd BrowserPilot
echo 'GOOGLE_API_KEY=your_key_here' > .env
docker-compose up -d
Open http://localhost:8000 — done.
# 1. Backend
git clone https://github.com/ai-naymul/BrowserPilot.git && cd BrowserPilot
pip install -r requirements.txt
patchright install chromium
echo 'GOOGLE_API_KEY=your_key_here' > .env
# 2. Build the dashboard the app serves (required — the API serves frontend/dist)
cd frontend && npm install && npm run build && cd ..
# 3. Run
python -m uvicorn backend.main:app --reload
# Required
GOOGLE_API_KEY=your_gemini_api_key
# Optional — proxies for heavy scraping
SCRAPER_PROXIES=[{"server": "http://proxy:port", "username": "user", "password": "pass", "location": "US"}]
Price monitoring — Track competitor pricing across Amazon, Walmart, Best Buy. Get structured JSON, schedule with cron.
Lead generation — Extract company data from LinkedIn, G2, Crunchbase. BrowserPilot handles login walls and infinite scroll.
Real estate data — Pull listings from Zillow, Realtor.com, Redfin. Export as CSV for analysis.
Market research — Monitor product launches on Product Hunt, reviews on Trustpilot, job postings on Indeed.
Academic research — Collect data from government portals, research databases, news sites that block standard scrapers.
You type: "Extract laptop prices from Best Buy"
|
v
AI Vision (Gemini 2.5 Flash) sees the page like you do
|
v
Decides: click search, type query, scroll, extract data
|
v
Ghost Mode stealth keeps it undetected
|
v
S