Ghostfox

Ghostfox

The agent-native stealth browser you can own.

Self-hosted · open source · MCP-first · engine-level anti-detect — stealth when you need it, evidence for everything it does.

GitHub release engine runtime license
curl -fsSL https://raw.githubusercontent.com/autokeren/ghostfox/main/install.sh | bash

Linux · Windows · macOS — x86_64 · arm64

demo — real sessions, real captures

An agent books dinner, passes detection, replays its work

why

Hosted stealth browsers see your cookies. You should see yours.

AI agents get blocked (headless Chrome trips Cloudflare on ~20% of the web), and the hosted "stealth browser" platforms route your agent's identities, cookies and sessions through someone else's cloud. Ghostfox is the self-hosted alternative: a complete browser stack you run yourself.

GhostfoxHosted stealth (Browserbase, …)playwright-mcpAnti-detect suites (Multilogin, …)
Self-hosted✓✗✓partial
Open source✓ (engine + runtime)✗✓✗
MCP-native✓✓✓✗
Engine-level anti-detect✓ C++ / Firefoxvendor partnerships✗✓ (closed)
Captcha solvers✓ 8 families, on-device✗✗✗
Debug cortex (console/errors/network)✓✗✗✗
Coherent, audited identities✓ 500/500✗✗partial
Session evidence & replay✓✗✗✗
Runtime languageRust—Node—

architecture

One stack, both halves yours

Firefox (MPL-2.0)
  └─ Camoufox (anti-detect patches, by daijro)
       └─ Ghostfox engine          engine/   — patches, branding, builds
            └─ Ghostfox runtime    runtime/  — Rust: sessions, identities, MCP

The runtime speaks Juggler natively from Rust — zero Python, zero Node at runtime. The engine is your own fork of the Camoufox build system: rebased when you want, branded your way, and it survives any upstream licensing change (upstream has signaled partially-closed future patches — forks that don't own their engine inherit that risk).

quickstart

Running in three minutes

# 1) install (engine + runtime, Linux x86_64)
curl -fsSL https://raw.githubusercontent.com/autokeren/ghostfox/main/install.sh | bash

# 2) wire into any MCP client
{
  "mcpServers": {
    "ghostcloak": {
      "command": "~/.ghostfox/mcp/ghostcloak-mcp",
      "env": { "GHOSTFOX_HOME": "~/.ghostfox/engine" }
    }
  }
}

Or Python: pip install ghostfox · Or npm: npx ghostfox mcp · Or Docker: docker run -i --rm ghcr.io/autokeren/ghostfox · Listed on the MCP Registry

See & understand

page_a11y — semantic snapshot with refs, roles, names, live values, login_state. Pierces shadow DOM + iframes. Then page_read_ref for full values, page_wait_for for element readiness, page_screenshot for pixels.

Act by ref

page_click_ref · page_type_ref · page_upload_file — no CSS selectors. Rich editors (Lexical, Draft) handled via editor-native paste paths with fire-then-verify receipts. Every mutation returns proof it landed.

Identity & evidence

identity_generate · identity_audit · session_evidence — coherent personas (Windows · macOS · Linux · Android), audited before use. Every session writes an append-only event log, snapshots, screenshots and the identity used. Replay what your agent did.

Session health

login_state in every a11y snapshot — agents detect dead sessions before acting, not after. Plus captcha_solve for when you're challenged anyway.

Captcha suite

page_geetest_click · page_geetest_slide · page_captcha_rotate · page_captcha_ocr · page_hcaptcha — 8 families solved with on-device models (custom-trained YOLOv8s + siamese, ddddocr OCR port, hCaptcha model zoo). E2E-proven on production sites: bilibili, hCaptcha-protected signups, TikTok.

Debug cortex

page_console · page_errors · page_network_start/read/body — the DevTools trio over MCP. Console logs, uncaught exceptions with stacks, and request/response capture with body fetch. When a page breaks, your agent finds out why.

Vision helpers

page_vision · page_ocr · page_match_image · page_pixels · page_contrast — optional cross-model checks for grid puzzles and layout questions. Wire any vision-capable model; the native solvers run fully local.

signatures

Details competitors don't have

numbers

Measured, not claimed

CheckResult
Identity coherence (500 generated)500/500 pass, 0 violations
Live-target probe (4 targets, datacenter IP)4/4 OK, 0 gated
bot.sannysoft.comwebdriver clean · WebGL=Mozilla · UA coherent
MCP round-trip E2Ecreate → open → fill → submit → evidence
GeeTest icon-click, production (bilibili)6/6 "Verification Succeeded" (YOLO + siamese, CPU)
hCaptcha, production signups2 real sites passed (behavioral + layout router)
TikTok OAuth + OTPlive session maintained
Docker image E2Esession → open → snapshot inside container

Methodology and honest caveats (datacenter IP bias, the expected "Chrome missing" row): runtime/docs/benchmark.

license & credits

Standing on giants, honestly

engine/ is MPL-2.0 (Firefox → Camoufox by daijro → Ghostfox). runtime/ is MIT OR Apache-2.0. Plus LibreWolf (patch tooling lineage) and Playwright (the Juggler protocol).

v0.7 — alpha. Research / testing tool. Do not use against targets you don't have permission to test.