Skip to main content
The browser tool enables agents to navigate websites, extract content, and interact with web pages.

Overview

The browser tool supports:
  • Page navigation and content extraction
  • JavaScript rendering (optional)
  • Screenshot capture
  • Form interaction
  • Multiple backend modes

Backends

Uses Rust-native browser automation with WebDriver protocol.Requirements:
  • ChromeDriver or GeckoDriver running locally
  • Enable with --features browser-native
Capabilities:
  • Full JavaScript support
  • Screenshot capture
  • Element interaction
  • Cookie management

Parameters

url
string
required
URL to navigate to. Must use http:// or https://
action
string
Action to perform: navigate, screenshot, click, type
selector
string
CSS selector for element interaction (click/type actions)
text
string
Text to type (for type action)

Examples

{
  "url": "https://example.com",
  "action": "navigate"
}

Take Screenshot

{
  "url": "https://example.com",
  "action": "screenshot"
}

Fill Form

{
  "url": "https://example.com/search",
  "action": "type",
  "selector": "input[name='q']",
  "text": "ZeroClaw framework"
}

Response

content
string
Page content (text or base64-encoded screenshot)
title
string
Page title
url
string
Final URL after redirects

Configuration

[tools]
browser_enabled = true
browser_backend = "native"  # or "http"
webdriver_url = "http://localhost:9515"

[security]
allowed_domains = [
    "*.github.com",
    "docs.rs",
    "crates.io"
]

Security

Configure allowed_domains to restrict which websites the agent can access.
  • Domain allowlist enforcement
  • HTTPS preference
  • Request timeout (30 seconds)
  • Content size limits (5MB)
  • User agent identification

Setup

Native Backend

1

Install ChromeDriver

# macOS
brew install chromedriver

# Linux
wget https://chromedriver.storage.googleapis.com/LATEST_RELEASE
2

Start WebDriver

chromedriver --port=9515
3

Build with feature flag

cargo build --features browser-native

Source Code

Implementation: src/tools/browser.rs

Build docs developers (and LLMs) love