mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-17 04:50:51 +00:00
Merged via squash.
Prepared head SHA: e490035a24
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Reviewed-by: @velvet-shark
107 lines
3.3 KiB
Markdown
107 lines
3.3 KiB
Markdown
---
|
||
summary: "CLI reference for `openclaw browser` (profiles, tabs, actions, Chrome MCP, and CDP)"
|
||
read_when:
|
||
- You use `openclaw browser` and want examples for common tasks
|
||
- You want to control a browser running on another machine via a node host
|
||
- You want to attach to your local signed-in Chrome via Chrome MCP
|
||
title: "browser"
|
||
---
|
||
|
||
# `openclaw browser`
|
||
|
||
Manage OpenClaw’s browser control server and run browser actions (tabs, snapshots, screenshots, navigation, clicks, typing).
|
||
|
||
Related:
|
||
|
||
- Browser tool + API: [Browser tool](/tools/browser)
|
||
|
||
## Common flags
|
||
|
||
- `--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).
|
||
|
||
## Quick start (local)
|
||
|
||
```bash
|
||
openclaw browser profiles
|
||
openclaw browser --browser-profile openclaw start
|
||
openclaw browser --browser-profile openclaw open https://example.com
|
||
openclaw browser --browser-profile openclaw snapshot
|
||
```
|
||
|
||
## Profiles
|
||
|
||
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.
|
||
|
||
```bash
|
||
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:
|
||
|
||
```bash
|
||
openclaw browser --browser-profile work tabs
|
||
```
|
||
|
||
## Tabs
|
||
|
||
```bash
|
||
openclaw browser tabs
|
||
openclaw browser open https://docs.openclaw.ai
|
||
openclaw browser focus <targetId>
|
||
openclaw browser close <targetId>
|
||
```
|
||
|
||
## Snapshot / screenshot / actions
|
||
|
||
Snapshot:
|
||
|
||
```bash
|
||
openclaw browser snapshot
|
||
```
|
||
|
||
Screenshot:
|
||
|
||
```bash
|
||
openclaw browser screenshot
|
||
```
|
||
|
||
Navigate/click/type (ref-based UI automation):
|
||
|
||
```bash
|
||
openclaw browser navigate https://example.com
|
||
openclaw browser click <ref>
|
||
openclaw browser type <ref> "hello"
|
||
```
|
||
|
||
## Existing Chrome via MCP
|
||
|
||
Use the built-in `user` profile, or create your own `existing-session` profile:
|
||
|
||
```bash
|
||
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.
|
||
|
||
## Remote browser control (node host proxy)
|
||
|
||
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](/tools/browser), [Remote access](/gateway/remote), [Tailscale](/gateway/tailscale), [Security](/gateway/security)
|