remote-browser
Automação de navegador em nuvem para agentes em sandbox sem acesso local a GUI. Suporta navegação, inspeção de páginas, interações, execução de JavaScript e gerenciamento de cookies por meio de mais de 30 comandos CLI. Inclui gerenciamento de sessão em nuvem para executar agentes de navegador autônomos em paralelo, com monitoramento de tarefas e opções de saída estruturada. Fornece tunelamento de servidor de desenvolvimento local via Cloudflare para expor portas da máquina remota ao navegador em nuvem. Mantém o estado da sessão entre comandos, permitindo...
npx skills add https://github.com/browser-use/browser-use --skill remote-browserRemote 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.