Vulpine Browser Agent Setup
This guide covers the current VulpineOS browser-agent path: one Vulpine browser process, isolated contexts per agent, MCP/Juggler browser tools, and an embedded foxbridge CDP endpoint for compatible clients.
Why Vulpine Browser for AI Agents?
Chrome automation stacks often expose browser-level automation markers:
Vulpine browser reduces that surface because:
navigator.webdriverisfalseat the C++ level (not a JavaScript override)- no Chromium automation markers (
$cdc_,HeadlessChrome, etc.) - Per-context BrowserForge fingerprints (unique WebGL, canvas, audio, fonts)
- Real browser engine (Firefox 146.0.1), not a patched Chromium
Setup Options
Option 1: VulpineOS (Recommended)
VulpineOS bundles the browser runtime, foxbridge CDP proxy, agent management, and security features:
curl -fsSL https://vulpineos.com/install | bash
vulpineosVulpineOS automatically:
- Launches the Vulpine browser with the embedded foxbridge CDP server
- Creates isolated contexts with unique fingerprints per agent
- Filters hidden DOM for injection protection
- Manages agent lifecycles, costs, and sessions
Option 2: Standalone Foxbridge
If you want just the CDP bridge without VulpineOS management:
# Install foxbridge
go install github.com/VulpineOS/foxbridge/cmd/foxbridge@latest
# Start with Vulpine browser
foxbridge --binary /path/to/vulpine --port 9222 --headlessConfigure any CDP-compatible client to use the foxbridge endpoint:
{
"browser": {
"cdpUrl": "ws://127.0.0.1:9222",
"enabled": true,
"headless": true
}
}Multi-Agent with Unique Fingerprints
Each agent in VulpineOS gets its own browser context with a unique identity from BrowserForge:
- User Agent — OS-matched, realistic version strings
- Screen — unique resolution and color depth
- WebGL — renderer and vendor from a database of 147 real GPU parameters
- Canvas — unique pixel-level fingerprint via seeds
- Audio — unique AudioContext fingerprint
- Fonts — OS-matched font enumeration
- Navigator — hardwareConcurrency, deviceMemory, platform
VulpineOS creates these automatically when spawning agents. No manual configuration needed.
Architecture
VulpineOS Go Binary
├── Orchestrator (agent lifecycle)
├── Context Pool (pre-warmed, max 20 concurrent)
├── Vault (SQLite — identities, cookies, sessions)
├── Embedded Foxbridge CDP (:9222)
│ └── CDP-compatible clients connect here
└── Vulpine browser (single process)
└── Per-agent contexts with unique fingerprintsOne Vulpine browser process serves all agents. Each agent gets an isolated context with its own cookies, storage, and fingerprint. Memory usage is roughly 10-15MB per context.
Security
VulpineOS protects agents from web-based attacks:
- Injection Filter — strips hidden DOM before agents read pages
- Action Lock — freezes pages during agent thinking
- DOM Monitoring — detects mutation attacks in real-time
- Sandboxed Eval — blocks fetch/XHR/WebSocket in agent JS
- CSP Injection — restricts what pages can load
See also
- Getting Started — Full installation guide
- Injection Filter — How injection protection works
- Foxbridge — CDP proxy details
- Cost Tracking — Per-agent budget management
- Architecture — Full system architecture