🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

open-browser-use

Package Overview
Dependencies
Maintainers
1
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

open-browser-use

Open Browser Use native host and CLI binary.

latest
Source
npmnpm
Version
0.1.40
Version published
Maintainers
1
Created
Source

Open Browser Use CLI

This npm package installs the open-browser-use native host and CLI binary. It also exposes the short obu command.

The CLI is useful when your agent runtime is shell-first or when you want a small action plan instead of a JavaScript/Python SDK script.

Install

npm install -g open-browser-use
obu version

The package contains prebuilt Go binaries for macOS, Linux, and Windows on amd64 and arm64.

On Windows, run setup from PowerShell or cmd after the npm install:

open-browser-use setup
open-browser-use info

Setup

Run open-browser-use with no subcommand to print the CLI version, browser extension status, extension version when available, and the next setup or upgrade command.

After installation, run setup to register the Chrome native messaging host and open the Chrome Web Store page for the matching extension:

open-browser-use setup

Install or enable Open Browser Use from that page, then restart Chrome if Chrome asks or the extension does not appear immediately.

If the Chrome Web Store item is temporarily unavailable, use the latest GitHub Release zip as an unpacked extension instead:

open-browser-use setup beta

That command opens chrome://extensions/ and reveals a keyed release ZIP so the user can drag it into Chrome with a stable fallback extension id.

Verify the browser connection:

open-browser-use ping
open-browser-use info

One-Shot Commands

Use direct subcommands for simple inspection and single browser actions:

open-browser-use tabs
open-browser-use user-tabs
open-browser-use history --query "browser use" --limit 20

open-browser-use name-session --name "Docs scan - OBU"
open-browser-use open-tab --url https://docs.browser-use.com
open-browser-use navigate --tab-id <tab-id> --url https://github.com/iFurySt/open-browser-use
open-browser-use cdp --tab-id <tab-id> --method Runtime.evaluate --params '{"expression":"document.title","returnByValue":true}'
open-browser-use finalize-tabs --keep '[]'

Use --socket <path> when a runtime gives you a specific Open Browser Use socket. Otherwise the CLI discovers /tmp/open-browser-use/active.json. Direct subcommands and run use the same default browser session, obu-cli, so a final open-browser-use finalize-tabs --keep '[]' cleans up tabs opened by either style. Pass --session-id <id> only when you intentionally want a separate tab group and cleanup scope.

Action Plans

Use run when you want CLI-level orchestration without writing JS or Python. The format is intentionally small: one action per line, optional # comments, shell-like quotes, shared session/turn, and a default tab set by open-tab or claim-tab.

open-browser-use run -c '
name-session "Docs scan - OBU"
open-tab https://docs.browser-use.com
wait-load domcontentloaded
page-info
finalize-tabs []
'

You can also load the same action plan from a file:

open-browser-use run --file ./docs-scan.obu

Supported actions:

  • Session/info: ping, info, tabs, user-tabs, turn-ended
  • Browser tabs: open-tab, claim-tab, navigate, wait-load, page-info
  • Browser methods: history, cdp, call
  • Input/files: move-mouse, wait-file-chooser, set-file-chooser-files
  • Cleanup: finalize-tabs

Example with explicit CDP and default tab reuse:

open-browser-use run -c '
name-session "GitHub issue scan - OBU"
open-tab https://github.com/iFurySt/open-browser-use/issues
wait-load domcontentloaded
cdp Runtime.evaluate "{\"expression\":\"document.body.innerText.slice(0, 1000)\",\"returnByValue\":true}"
finalize-tabs []
'

Example claiming an existing user tab:

open-browser-use run -c '
claim-tab <tab-id>
page-info
finalize-tabs [{"tabId":<tab-id>,"status":"handoff"}]
'

MCP Server

Use mcp when an agent runtime supports local MCP servers over stdio:

obu mcp

For Codex, add a server entry similar to this in ~/.codex/config.toml:

[mcp_servers.open_browser_use]
command = "obu"
args = ["mcp"]

The MCP server exposes browser tools such as user_tabs, open_tab, claim_tab, navigate, wait_load, page_info, cdp, history, run_action_plan, finalize_tabs, and unrestricted call. It uses the same socket discovery as the CLI; pass --socket <path> or --socket-dir <dir> in args only when the runtime needs an explicit socket.

Low-Level JSON-RPC

Use call when no convenience command or action exists:

open-browser-use call --method getInfo --params '{}'
open-browser-use call --method executeCdp --params '{"target":{"tabId":123},"method":"Runtime.evaluate","commandParams":{"expression":"document.title","returnByValue":true}}'

Cleanup

End browser work by finalizing tabs:

open-browser-use finalize-tabs --keep '[]'

Keep a tab only when the live tab is the deliverable or the user should continue from that state:

open-browser-use finalize-tabs --keep '[{"tabId":123,"status":"handoff"}]'

FAQs

Package last updated on 22 May 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts