docs/src/app/cdp-mode/page.mdx
Connect to an existing browser via Chrome DevTools Protocol:
# Start Chrome with: google-chrome --remote-debugging-port=9222
# Connect once, then run commands without --cdp
agent-browser connect 9222
agent-browser snapshot
agent-browser tab
agent-browser close
# Or pass --cdp on each command
agent-browser --cdp 9222 snapshot
Connect to remote browser services via WebSocket URL:
# Connect to remote browser service
agent-browser --cdp "wss://browser-service.com/cdp?token=..." snapshot
# Works with any CDP-compatible service
agent-browser --cdp "ws://localhost:9222/devtools/browser/abc123" open example.com
The --cdp flag accepts either:
9222) for local connections via http://localhost:{port}wss://... or ws://...) for remote browser servicesUse --auto-connect to automatically discover and connect to a running Chrome instance without specifying a port:
# Auto-discover running Chrome with remote debugging
agent-browser --auto-connect open example.com
agent-browser --auto-connect snapshot
# Or via environment variable
AGENT_BROWSER_AUTO_CONNECT=1 agent-browser snapshot
Auto-connect discovers Chrome by:
DevToolsActivePort file from the default user data directory/json/version, /json/list) fails, falling back to a direct WebSocket connectionThis is useful when:
chrome://inspect/#remote-debugging (which uses a dynamic port)Use --color-scheme to set a persistent preference when connecting via CDP:
agent-browser --cdp 9222 --color-scheme dark open https://example.com
agent-browser --cdp 9222 snapshot # stays in dark mode
Or set it globally via config or environment variable:
AGENT_BROWSER_COLOR_SCHEME=dark agent-browser --cdp 9222 open https://example.com
This enables control of:
Use the -p flag to connect to a cloud browser provider instead of launching a local browser:
agent-browser -p browserbase open https://example.com
See the Providers section for setup and configuration of each supported provider: Browser Use, Browserbase, Browserless, and Kernel.