remote-browser
Controls an isolated Browser Use Cloud browser from a sandboxed machine with the current Browser Use CLI.
git clone --depth 1 https://github.com/browser-use/browser-use /tmp/remote-browser && cp -r /tmp/remote-browser/skills/remote-browser ~/.claude/skills/remote-browserSKILL.md
# Remote Browser
Use this skill when an agent runs on a machine without a usable local Chrome and needs an isolated browser. The current Browser Use CLI runs Python from stdin. Do not use the removed `open`, `state`, `click`, `input`, `tab`, `cloud connect`, or `--connect` commands.
## Check the CLI
```bash
browser-use --doctor
browser-use skill show
```
If setup fails, follow the current [Browser Use skill](../browser-use/SKILL.md).
## Start an isolated browser
Authenticate once:
```bash
browser-use auth login
```
Pick a short unique name. `r7k2` below is only an example.
```bash
browser-use <<'PY'
start_remote_daemon("r7k2")
PY
```
Use the same name for every command in this browser:
```bash
BU_NAME=r7k2 browser-use <<'PY'
new_tab("https://example.com")
wait_for_load()
print(page_info())
PY
```
Each remote daemon is a separate Browser Use Cloud browser. Use a different name for each parallel task. Remote browsers can bill until they stop or time out.
## Inspect and interact
Helpers are pre-imported. Keep multi-step work in one heredoc when practical.
```bash
BU_NAME=r7k2 browser-use <<'PY'
print(page_info())
print(js("document.title"))
fill_input('input[name="q"]', "browser automation")
press_key("Enter")
wait_for_load()
print(page_info())
PY
```
Useful helpers:
- Navigate: `new_tab(url)`, `goto_url(url)`, `wait_for_load()`
- Inspect: `page_info()`, `js(code)`, `cdp(method, ...)`
- Interact: `click_at_xy(x, y)`, `type_text(text)`, `fill_input(selector, text)`, `press_key(key)`, `scroll(x, y)`
- Tabs: `list_tabs()`, `switch_tab(target)`, `close_tab(target)`
- Files and proof: `capture_screenshot()`, `wait_for_element(selector)`
Prefer the accessibility tree for element discovery:
```python
nodes = cdp("Accessibility.getFullAXTree")["nodes"]
```
Use a targeted `js(...)` query when the accessibility tree lacks the element. Verify each action with `page_info()`, a focused DOM check, or a screenshot.
## Stop the browser
When the work is done, stop the exact named browser:
```bash
browser-use <<'PY'
stop_remote_daemon("r7k2")
PY
```
Do not leave an unused remote browser running.Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work.
>
>
QA-test a website or web app and return a 1-5 quality score (5 = flawless, 1 = broken) with evidence. Use when the user wants to test, QA, evaluate, score, or "check how good" a site, page, flow, or app — including a local dev server (e.g. "qa test localhost:5173", "does the checkout work?", "rate this landing page"). Drives a real Browser Use cloud browser, tunneling localhost automatically.
Set up Browser Use Cloud payments with x402 — pay per request from a crypto wallet (USDC on Base mainnet), no signup or API key. Two setups it works out up front — "just use it" (set up a wallet so you or Claude Code can run cloud browser tasks paid from the wallet — Claude writes and runs throwaway scripts, nothing touches your codebase) or "build it in" (install the SDK and write the key + code into your project). Walks through wallet setup, funding, .env, and a ~$1 test run. Use when the user asks about x402, pay-per-use, USDC payments, or wants Browser Use Cloud without an API key. For the free-tier signup (reverse-CAPTCHA → API key), use `browser-use cloud signup` or the `cloud` skill instead.