@ulpi/browse 1.1.1 → 1.3.0
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.
- package/README.md +82 -4
- package/dist/browse.cjs +5569 -3289
- package/package.json +3 -2
- package/skill/SKILL.md +21 -3
- package/skill/references/guides.md +1 -0
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ulpi/browse",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/ulpi-io/browse"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@lightpanda/browser": "^1.2.0",
|
|
10
|
+
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
10
11
|
"@ulpi/browse": "^0.3.0",
|
|
11
12
|
"better-sqlite3": "^11.0.0",
|
|
12
13
|
"diff": "^7.0.0",
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
"access": "public"
|
|
42
43
|
},
|
|
43
44
|
"scripts": {
|
|
44
|
-
"build": "esbuild src/cli.ts --bundle --format=cjs --platform=node --target=node18 --outfile=dist/browse.cjs --external:playwright --external:playwright-core --external:better-sqlite3 --external:electron --external:chromium-bidi --banner:js='#!/usr/bin/env node\nconst __import_meta_url = require(\"url\").pathToFileURL(__filename).href;' --define:import.meta.url=__import_meta_url",
|
|
45
|
+
"build": "esbuild src/cli.ts --bundle --format=cjs --platform=node --target=node18 --outfile=dist/browse.cjs --external:playwright --external:playwright-core --external:better-sqlite3 --external:electron --external:chromium-bidi --external:@modelcontextprotocol/sdk --banner:js='#!/usr/bin/env node\nconst __import_meta_url = require(\"url\").pathToFileURL(__filename).href;' --define:import.meta.url=__import_meta_url",
|
|
45
46
|
"build:all": "bash scripts/build-all.sh",
|
|
46
47
|
"dev": "tsx src/cli.ts",
|
|
47
48
|
"server": "tsx src/server.ts",
|
package/skill/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: browse
|
|
3
|
-
version: 3.
|
|
3
|
+
version: 3.5.0
|
|
4
4
|
description: |
|
|
5
5
|
Fast web browsing and web app testing for AI coding agents via persistent headless Chromium daemon.
|
|
6
6
|
Browse any URL, read page content, click elements, fill forms, run JavaScript, take screenshots,
|
|
@@ -120,6 +120,12 @@ browse cookie-import chrome --domain .site.com
|
|
|
120
120
|
|
|
121
121
|
# Persistent profiles
|
|
122
122
|
browse --profile mysite goto https://app.com
|
|
123
|
+
|
|
124
|
+
# Cloud providers (encrypted API keys, never visible to agents)
|
|
125
|
+
browse provider save browserbase <api-key>
|
|
126
|
+
browse --provider browserbase goto https://example.com
|
|
127
|
+
browse provider list
|
|
128
|
+
browse provider delete browserbase
|
|
123
129
|
```
|
|
124
130
|
|
|
125
131
|
## Command Reference
|
|
@@ -369,6 +375,7 @@ browse record stop Stop recording, keep steps for export
|
|
|
369
375
|
browse record status Recording state and step count
|
|
370
376
|
browse record export browse [path] Export as chain-compatible JSON (replay with browse chain)
|
|
371
377
|
browse record export replay [path] Export as Chrome DevTools Recorder (Playwright/Puppeteer)
|
|
378
|
+
browse record export replay --selectors css,aria [path] Filter selector types in export
|
|
372
379
|
```
|
|
373
380
|
|
|
374
381
|
### React DevTools
|
|
@@ -386,9 +393,17 @@ browse react-devtools owners <sel> Parent component chain
|
|
|
386
393
|
browse react-devtools context <sel> Context values consumed by component
|
|
387
394
|
```
|
|
388
395
|
|
|
396
|
+
### Cloud Providers
|
|
397
|
+
```
|
|
398
|
+
browse provider save <name> <key> Save provider API key (encrypted)
|
|
399
|
+
browse provider list List saved providers
|
|
400
|
+
browse provider delete <name> Delete provider key
|
|
401
|
+
```
|
|
402
|
+
|
|
389
403
|
### Handoff (human takeover)
|
|
390
404
|
```
|
|
391
|
-
browse handoff [reason] Swap to
|
|
405
|
+
browse handoff [reason] Swap to Chrome for user to solve CAPTCHA/MFA (bypasses bot detection)
|
|
406
|
+
browse handoff --chromium Force Playwright Chromium instead of Chrome
|
|
392
407
|
browse resume Swap back to headless, returns fresh snapshot
|
|
393
408
|
```
|
|
394
409
|
|
|
@@ -416,9 +431,12 @@ browse inspect Open DevTools (requires BROWSE_DEBUG_PORT)
|
|
|
416
431
|
| `--allowed-domains <d,d>` | Block navigation/resources outside allowlist |
|
|
417
432
|
| `--max-output <n>` | Truncate output to N characters |
|
|
418
433
|
| `--headed` | Run browser in headed (visible) mode |
|
|
434
|
+
| `--chrome` | Launch system Chrome (real browser, bypasses bot detection) |
|
|
419
435
|
| `--cdp <port>` | Connect to Chrome on a specific debugging port |
|
|
420
436
|
| `--connect` | Auto-discover and connect to a running Chrome instance |
|
|
421
|
-
| `--
|
|
437
|
+
| `--provider <name>` | Cloud browser provider (browserless, browserbase) |
|
|
438
|
+
| `--runtime <name>` | Browser engine: playwright (default), rebrowser (stealth), lightpanda, chrome |
|
|
439
|
+
| `--mcp` | Run as MCP server (for Cursor, Windsurf, Cline) |
|
|
422
440
|
|
|
423
441
|
## Reference Files
|
|
424
442
|
|
|
@@ -154,6 +154,7 @@ Read this section when you're unsure which command to use for a task.
|
|
|
154
154
|
| Find suspense blockers | `react-devtools enable` then `suspense` |
|
|
155
155
|
| Bypass bot detection | `--runtime rebrowser goto <url>` |
|
|
156
156
|
| Persistent login state | `--profile mysite` then browse then close then reopen (still logged in) |
|
|
157
|
+
| Cloud browser (CI/CD) | `provider save browserbase <key>` then `--provider browserbase goto <url>` |
|
|
157
158
|
|
|
158
159
|
## Architecture
|
|
159
160
|
|