@vibebrowser/mcp 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: vibebrowser
3
+ description: Control the user's local browser through the Vibe Browser CLI bridge. Use this when the task must run against the user's real Vibe-connected browser session, tabs, cookies, or installed extensions.
4
+ metadata:
5
+ {
6
+ "openclaw":
7
+ {
8
+ "emoji": "🌐",
9
+ "requires":
10
+ {
11
+ "bins": ["npx"],
12
+ "env": ["VIBE_EXTENSION_UUID"],
13
+ },
14
+ },
15
+ }
16
+ ---
17
+
18
+ # Vibe Local Browser
19
+
20
+ ## Installation
21
+
22
+ 1. **Get the Extension UUID**:
23
+ - Install the Vibe extension in Chrome
24
+ - Open extension Settings → MCP External
25
+ - Enable Remote mode and copy the Extension UUID
26
+
27
+ 2. **Set environment variable**:
28
+ ```bash
29
+ export VIBE_EXTENSION_UUID="<your-extension-uuid>"
30
+ ```
31
+
32
+ 3. **Install the skill**:
33
+ Copy this file to your OpenClaw skills directory (typically `~/.openclaw/skills/` or your project's `openclaw/skills/` folder).
34
+
35
+ Use the `vibebrowser-cli` command when the user wants OpenClaw to drive their real local browser through the Vibe extension.
36
+
37
+ Prefer this skill when the task depends on:
38
+
39
+ - the user's real browser profile
40
+ - existing logged-in sessions
41
+ - local tabs already open on the user's machine
42
+ - browser extensions or stored site state
43
+
44
+ Do not use this skill for OpenClaw tenant cloud browsing.
45
+
46
+ ## Required environment
47
+
48
+ The shell running OpenClaw must have:
49
+
50
+ ```bash
51
+ export VIBE_EXTENSION_UUID="<extension-uuid>"
52
+
53
+ # Optional if you use a custom relay URL.
54
+ # export VIBE_RELAY_URL="wss://relay.api.vibebrowser.app"
55
+
56
+ # Optional compatibility label. Vibe always targets the real local browser path.
57
+ # export VIBE_BROWSER_PROFILE="user"
58
+ ```
59
+
60
+ ## Command form
61
+
62
+ Prefer this exact command pattern:
63
+
64
+ ```bash
65
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json <subcommand> ...
66
+ ```
67
+
68
+ If the package is already installed locally, you can use:
69
+
70
+ ```bash
71
+ vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json <subcommand> ...
72
+ ```
73
+
74
+ If you set `VIBE_RELAY_URL`, append:
75
+
76
+ ```bash
77
+ --relay-url "$VIBE_RELAY_URL"
78
+ ```
79
+
80
+ ## Safe operating rules
81
+
82
+ - **Never use `focus` or `tab select` unless explicitly asked.** The user may be actively working in the browser — switching their active tab is disruptive. Instead, pass `--page-id <id>` (or `--pageId <id>`) to target a specific tab without switching focus. Get the page ID from `tabs` output, then use it on any command:
83
+ ```bash
84
+ vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json --page-id 2 snapshot
85
+ vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json --page-id 2 click 7
86
+ ```
87
+ - Prefer `browser tabs` or `browser snapshot` before acting.
88
+ - `snapshot` is tool-only and maps to extension snapshot tools (`take_md_snapshot` by default, `take_a11y_snapshot` for `--format aria`).
89
+ - Use `browser open <url>` to create a fresh page when possible.
90
+ - Use `browser evaluate --fn ...` only for simple compatibility-safe expressions such as:
91
+ - `() => 21 + 21`
92
+ - `() => document.title`
93
+ - `() => location.href`
94
+ - `() => location.hostname`
95
+ - `() => location.origin`
96
+ - Avoid destructive actions unless the user explicitly asks.
97
+ - If the CLI returns a connection error, report it clearly and stop guessing.
98
+ - The OpenClaw-compatible `--browser-profile` flag is accepted by the CLI, but Vibe always targets the user's real browser path rather than an isolated managed browser.
99
+
100
+ ## Common commands
101
+
102
+ Status:
103
+
104
+ ```bash
105
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json status
106
+ ```
107
+
108
+ List pages:
109
+
110
+ ```bash
111
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json tabs
112
+ ```
113
+
114
+ Open a new page:
115
+
116
+ ```bash
117
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json open https://example.com
118
+ ```
119
+
120
+ Take the default AI snapshot:
121
+
122
+ ```bash
123
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json snapshot
124
+ ```
125
+
126
+ Take the ARIA / interactive snapshot:
127
+
128
+ ```bash
129
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json snapshot --format aria --interactive
130
+ ```
131
+
132
+ Click and type using OpenClaw-style refs:
133
+
134
+ ```bash
135
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json click 12
136
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json type 23 "hello" --submit
137
+ ```
138
+
139
+ Evaluate JavaScript:
140
+
141
+ ```bash
142
+ npx -y --package @vibebrowser/mcp vibebrowser-cli --remote "$VIBE_EXTENSION_UUID" --json evaluate --fn '() => document.title'
143
+ ```
144
+
145
+ ## Success criteria
146
+
147
+ A successful run usually looks like:
148
+
149
+ 1. confirm the relay is reachable
150
+ 2. list current tabs or create a fresh one
151
+ 3. navigate or snapshot if needed
152
+ 4. evaluate `document.title` or `location.href` to verify the result
153
+ 5. summarize what happened for the user
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@vibebrowser/mcp",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "type": "module",
5
5
  "description": "MCP server for browser automation - the only solution supporting multiple AI agents (Claude, Cursor, VS Code) simultaneously controlling your Chrome browser",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
8
8
  "bin": {
9
9
  "vibebrowser-mcp": "./dist/cli.js",
10
- "vibe-mcp": "./dist/cli.js"
10
+ "vibe-mcp": "./dist/cli.js",
11
+ "vibebrowser-cli": "./dist/browser-main.js"
11
12
  },
12
13
  "publishConfig": {
13
14
  "access": "public"
@@ -17,7 +18,13 @@
17
18
  "dev": "tsc --watch",
18
19
  "start": "node dist/cli.js",
19
20
  "prepublishOnly": "npm run build",
21
+ "test": "npm run test:e2e:relay-race && npm run test:e2e:relay-roundtrip && npm run test:e2e:cli-relay && npm run test:e2e:http && npm run test:e2e:browser-cli",
22
+ "test:e2e:browser-cli": "node scripts/e2e-browser-cli.mjs",
23
+ "test:e2e:cli-relay": "node scripts/e2e-cli-relay.mjs",
24
+ "test:e2e:http": "node scripts/e2e-http-streamable.mjs",
25
+ "test:e2e:browser-cli-live": "node scripts/e2e-browser-cli-live.mjs",
20
26
  "test:e2e:relay-race": "node scripts/e2e-relay-fake-extension-race.mjs",
27
+ "test:e2e:relay-roundtrip": "node scripts/e2e-relay-roundtrip.mjs",
21
28
  "test:e2e:agents": "node scripts/e2e-mcp-agents.mjs"
22
29
  },
23
30
  "keywords": [
@@ -67,6 +74,8 @@
67
74
  },
68
75
  "files": [
69
76
  "dist",
77
+ "openclaw",
78
+ "docs",
70
79
  "README.md",
71
80
  "LICENSE"
72
81
  ]