
remote-browser
โ 102,956by browser-use ยท part of browser-use/browser-use
Controls a local browser from a sandboxed remote machine. Use when the agent is running in a sandbox (no GUI) and needs to navigate websites, interact with web pages, fill forms, take screenshots, or expose local dev servers via tunnels.
This is the playbook your agent receives when the skill activates โ you don't need to read it to use the skill, but it's here to audit before installing.
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 showIf setup fails, follow the current Browser Use skill.
Start an isolated browser
Authenticate once:
browser-use auth loginPick a short unique name. r7k2 below is only an example.
browser-use <<'PY'
start_remote_daemon("r7k2")
PYUse 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())
PYEach 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())
PYUseful 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")
PYDo not leave an unused remote browser running.
npx skills add browser-use/browser-use --skill "remote-browser" --full-depthRun this in your project โ your agent picks the skill up automatically.
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ