mcpField
R
remote-browser

remote-browser

github.com/browser-useAgent workflows119.4k4.8k installsUpdated 2d ago
Repository

About remote-browser

A skill for agents that need an isolated remote browser when the local machine lacks a usable Chrome installation. It uses Browser Use CLI commands to start, operate, and stop named cloud browsers.

Key features

  1. 01Start and stop named remote browsers
  2. 02Navigate and inspect pages
  3. 03Interact with page elements
  4. 04Manage tabs and capture screenshots

Use cases

  1. 01Run browser tasks on machines without local Chrome
  2. 02Keep parallel browser tasks in separate sessions
  3. 03Verify page actions with DOM checks or screenshots

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/browser-use/browser-use --skill remote-browser

After installing, type/remote-browserin Claude Code to confirm it loaded.

Details

From the project README

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

browser-use --doctor
browser-use skill show

If setup fails, follow the current Browser Use skill.

Start an isolated browser

Authenticate once:

browser-use auth login

Pick a short unique name. r7k2 below is only an example.

browser-use <<'PY'
start_remote_daemon("r7k2")
PY

Use the same name for every command in this browser:

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.

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:

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:

browser-use <<'PY'
stop_remote_daemon("r7k2")
PY

Do not leave an unused remote browser running.

Comments

Markdown supported