Browser CLI + Relay

Give your agents a command line to the web

OpenClaw-friendly commands for verifying relay status, reading the real page, and acting against your logged-in Chrome. Always run the published package through npx -y @vibebrowser/cli@latest.

Real browser session

Reuse your actual tabs, cookies, logins, extensions, and saved state instead of spinning up a separate browser runtime.

Local or remote relay

Start locally on the same machine or point the CLI at a remote UUID when your browser is exposed through the Vibe relay.

Same package, two surfaces

Install @vibebrowser/cli for lightweight command flows or @vibebrowser/mcp for MCP agents — both share the same relay and browser connection.

Quick start for OpenClaw-style flows

These are the direct CLI checks that prove browser control. A skill listing is not enough; verify extensionConnected and a real page snapshot.

Local commands

Verify the relay

npx -y @vibebrowser/cli@latest --remote "<my remote>" --json status --wait-for-extension --wait-timeout 20000

Read the real page

npx -y @vibebrowser/cli@latest --remote "<my remote>" --json snapshot --format aria

Open a URL

npx -y @vibebrowser/cli@latest --remote "<my remote>" open https://example.com

Click by ref after a snapshot

npx -y @vibebrowser/cli@latest --remote "<my remote>" click A12
Remote relay

If your Vibe extension is connected in remote mode, use the same CLI with a UUID or full WSS URL:

npx -y @vibebrowser/cli@latest --remote "<my remote>" --json status --wait-for-extension --wait-timeout 20000

What this page is for

Use this route when you want OpenClaw-first command workflows. If you need a broader CLI positioning for non-OpenClaw runtimes, use /cli. For JSON MCP config blocks (Claude Code, Codex, Cursor, VS Code), use Vibe Browser for Agents.

Agent setup

One-shot install prompt

Paste this block into your OpenClaw or Hermes agent. The button copies the full prompt so users do not have to select text manually.

Agent install prompt

You are setting yourself up to control my real Chrome through Vibe Browser. Work through the steps in order. Do not claim a step is done until you have proven it.

1. Install the "vibebrowser" skill for your runtime, then confirm it is listed:
   - OpenClaw:  npx -y skills add VibeTechnologies/vibe-mcp -s vibebrowser -a openclaw -g -y --copy --dangerously-accept-openclaw-risks
                then run `openclaw skills list`. You may report the vibebrowser row only if you actually checked it.
   - Hermes:    npx -y skills add VibeTechnologies/vibe-mcp -s vibebrowser -y
                Do not treat `npx -y skills list` as proof that browser control works. A listed row is only a skill listing.

2. Remember my remote so I only give it to you once. Save it to a file `vibebrowser-cli.md` in your persistent agent workspace root as a line `remote: <value>`; if your runtime can also write memory keys, additionally store it under `vibebrowser_remote`. On every later command — including the first message of a new conversation — load it back from that file and reuse it without asking me again.

3. Record these standing rules so you route correctly later:
   - Whenever I ask you to do anything in MY browser / MY Chrome / MY tabs / the page I'm on, use the vibebrowser skill to drive my REAL browser, not your built-in, headless, or in-pod browser, and not web-fetch.
   - Never run `vibebrowser` directly. Always run `npx -y @vibebrowser/cli@latest` for direct CLI verification commands.

4. Confirm you can control my Chrome, retrying on "Extension reconnecting" (wait 3s, up to 5x):
   npx -y @vibebrowser/cli@latest --remote "<my remote>" --json status --wait-for-extension --wait-timeout 20000
   npx -y @vibebrowser/cli@latest --remote "<my remote>" --json snapshot --format aria

Then report the real proof: extensionConnected is true, and the snapshot returned real page content from my browser. For OpenClaw only, also report the skill listing if you checked it. Do not claim Hermes browser control works because a skill row exists.

My remote: <PASTE YOUR UUID OR wss:// URL HERE>

Command-oriented browser control, not a disposable browser

Vibe Browser for OpenClaw does not pretend to manage a fresh isolated browser lifecycle. It gives OpenClaw-style command flows access to the same real browser session your team already uses day to day.