Skip to content

browser

Manage OpenClaw’s browser control server and run browser actions (tabs, snapshots, screenshots, navigation, clicks, typing).

Related:

  • --url <gatewayWsUrl>: Gateway WebSocket URL (defaults to config).
  • --token <token>: Gateway token (if required).
  • --timeout <ms>: request timeout (ms).
  • --browser-profile <name>: choose a browser profile (default from config).
  • --json: machine-readable output (where supported).
Terminal window
openclaw browser profiles
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw open https://example.com
openclaw browser --browser-profile openclaw snapshot

If openclaw browser is an unknown command, check plugins.allow in ~/.openclaw/openclaw.json.

When plugins.allow is present, the bundled browser plugin must be listed explicitly:

{
plugins: {
allow: ["telegram", "browser"],
},
}

browser.enabled=true does not restore the CLI subcommand when the plugin allowlist excludes browser.

Related: Browser tool

Profiles are named browser routing configs. In practice:

  • openclaw: launches or attaches to a dedicated OpenClaw-managed Chrome instance (isolated user data dir).
  • user: controls your existing signed-in Chrome session via Chrome DevTools MCP.
  • custom CDP profiles: point at a local or remote CDP endpoint.
Terminal window
openclaw browser profiles
openclaw browser create-profile --name work --color "#FF5A36"
openclaw browser create-profile --name chrome-live --driver existing-session
openclaw browser delete-profile --name work

Use a specific profile:

Terminal window
openclaw browser --browser-profile work tabs
Terminal window
openclaw browser tabs
openclaw browser open https://docs.openclaw.ai
openclaw browser focus <targetId>
openclaw browser close <targetId>

Snapshot:

Terminal window
openclaw browser snapshot

Screenshot:

Terminal window
openclaw browser screenshot

Navigate/click/type (ref-based UI automation):

Terminal window
openclaw browser navigate https://example.com
openclaw browser click <ref>
openclaw browser type <ref> "hello"

Use the built-in user profile, or create your own existing-session profile:

Terminal window
openclaw browser --browser-profile user tabs
openclaw browser create-profile --name chrome-live --driver existing-session
openclaw browser create-profile --name brave-live --driver existing-session --user-data-dir "~/Library/Application Support/BraveSoftware/Brave-Browser"
openclaw browser --browser-profile chrome-live tabs

This path is host-only. For Docker, headless servers, Browserless, or other remote setups, use a CDP profile instead.

If the Gateway runs on a different machine than the browser, run a node host on the machine that has Chrome/Brave/Edge/Chromium. The Gateway will proxy browser actions to that node (no separate browser control server required).

Use gateway.nodes.browser.mode to control auto-routing and gateway.nodes.browser.node to pin a specific node if multiple are connected.

Security + remote setup: Browser tool, Remote access, Tailscale, Security