Skip to main content

Common Issues

Browser Launch Failures

”Daemon not found” error

This typically occurs when the daemon cannot start or the socket path is unreachable. Solutions:
  1. Clean up stale daemon files:
  2. Check socket path length (common on macOS):
  3. Verify write permissions:

Browser fails to launch with custom executablePath

When using a custom Chromium binary (e.g., for serverless deployment), ensure the path is valid and the binary is executable:
See Serverless Deployment for more on custom browser executables.

Timeout Errors

Default timeout issues

The default Playwright timeout is 25 seconds. This is intentionally below the CLI’s 30-second IPC read timeout to ensure proper error messages. For slow pages or operations:
Note: Setting timeouts above 30000ms may cause EAGAIN errors because the CLI’s read timeout will expire before Playwright responds. The CLI retries automatically, but response times will increase. Better approach for slow pages:

IPC EAGAIN errors (os error 35/11)

These errors indicate the daemon is taking too long to respond. Recent versions include automatic retry logic and backpressure-aware socket writes. Solutions:
  1. Update to the latest version:
  2. Use explicit waits instead of letting operations time out:
  3. Lower the default timeout if you’re running many operations:

Session and State Issues

Stale refs after page navigation

Refs (@e1, @e2, etc.) are invalidated when the page changes. Always re-snapshot after navigation:
Ref invalidation happens after:
  • Clicking links or buttons that navigate
  • Form submissions
  • Dynamic content loading (dropdowns, modals)

Session conflicts with concurrent agents

Always use named sessions when running multiple automations:

State load failures

If state loading fails, ensure:
  1. The browser is running:
  2. The state file is valid:
  3. Encryption key matches (if state is encrypted):

Network and Certificate Issues

HTTPS certificate errors

For development environments with self-signed certificates:
Note: Only use this for testing. Do not use in production.

Proxy SSL inspection issues

Some corporate proxies perform SSL inspection. Combine proxy settings with certificate error ignoring:

Connection resets and broken pipes

The CLI includes automatic retry logic for transient errors like connection resets, broken pipes, and temporary resource unavailability. If you still see these errors:
  1. Check network stability
  2. Restart the daemon:

Platform-Specific Issues

Linux: Missing system dependencies

On Linux, Chromium requires system dependencies:

macOS: Binary permission issues

If postinstall scripts don’t run (e.g., when using bun), the native binary may not be executable:

Windows: CMD wrapper issues

Older versions had issues with the Windows CMD wrapper routing through Node.js. Update to the latest version:

JavaScript Evaluation Issues

Shell quoting corruption

Complex JavaScript expressions can be corrupted by shell quoting. Use --stdin or -b to avoid issues: Recommended approach with heredoc:
Alternative with base64 encoding:

Performance Issues

Slow command execution with npx

npx routes through Node.js before reaching the Rust CLI, adding overhead. For regular use, install globally:

Large snapshots causing slowdowns

Filter snapshots to reduce output size:

iOS Simulator Issues

Appium connection failures

Ensure Appium and XCUITest driver are installed:

Simulator boot timeout

First launch takes 30-60 seconds. Subsequent commands are fast. If boot consistently times out:
  1. Manually boot simulator and verify it works:
  2. Check available devices:

Real device WebDriverAgent signing issues

For real iOS devices, WebDriverAgent must be code-signed:
  1. Open WebDriverAgent project:
  2. In Xcode:
    • Select WebDriverAgentRunner target
    • Go to Signing & Capabilities
    • Select your Team (free Apple Developer account works)
    • Let Xcode manage signing automatically

Getting Help

Enable debug output

Check browser console for errors

Report issues

If you encounter a bug, report it at: https://github.com/vercel-labs/agent-browser/issues Include:
  • Agent Browser version: agent-browser --version
  • Platform and OS version
  • Full error message
  • Steps to reproduce
  • Debug output if available