unbrowse 9.10.0 → 9.11.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/SKILL.md CHANGED
@@ -21,10 +21,10 @@ store sanitized route metadata, replay it on later calls. A replay is about
21
21
  The entire surface is exactly three top-level verbs, each taking a capability:
22
22
 
23
23
  - **`unbrowse eval <cap>`** - observe. Resolve a route, read a page, check status, list skills.
24
- - **`unbrowse act <cap>`** - actuate. Execute a route, drive the browser, fetch, run, capture.
24
+ - **`unbrowse breath <cap>`** - actuate. Execute a route, drive the browser, fetch, run, capture.
25
25
  - **`unbrowse build <cap>`** - declare. Index, publish, review, set up, register.
26
26
 
27
- There are no flat top-level commands. Every invocation is `unbrowse build|act|eval <cap> [flags]`.
27
+ There are no flat top-level commands. Every invocation is `unbrowse build|breath|eval <cap> [flags]`.
28
28
 
29
29
  ## The flow (load-bearing): ONE call by default. Resolve+execute for control. One capture on a miss.
30
30
 
@@ -33,7 +33,7 @@ call. Let the runtime resolve the route, fill the holes, escalate if needed, and
33
33
  structured result. Do NOT hand-run resolve, then fetch, then parse the page yourself.
34
34
 
35
35
  unbrowse "<what you want>" --url "<site>" # bare natural-language: the one-hole front door
36
- unbrowse act get "<what you want>" --url "<site>" # identical, explicit verb form
36
+ unbrowse breath get "<what you want>" --url "<site>" # identical, explicit verb form
37
37
 
38
38
  Worked example, "homemade food on Carousell" (ONE call returns priced listings):
39
39
 
@@ -49,11 +49,11 @@ When you must PICK a specific endpoint (several routes, a mutation, explicit par
49
49
  two-call explicit path:
50
50
 
51
51
  1. `unbrowse eval resolve --intent "<what you want>" --url "<site>"` -> ranked shortlist.
52
- 2. `unbrowse act execute --skill <id> --endpoint <id> [--param k=v ...]` -> replay it.
52
+ 2. `unbrowse breath execute --skill <id> --endpoint <id> [--param k=v ...]` -> replay it.
53
53
 
54
54
  On a genuine MISS (no indexed route, a first visit, an anti-bot site), do ONE escalation:
55
55
 
56
- unbrowse act capture --url "<site>" --intent "<what you want>"
56
+ unbrowse breath capture --url "<site>" --intent "<what you want>"
57
57
 
58
58
  That drives the browser once and INDEXES the route. First visit to an uncached site pays a
59
59
  capture tax (seconds); every visit after is a route-cache hit (<200ms). `eval resolve` on an
@@ -160,13 +160,13 @@ add the line, with the user's confirmation.
160
160
  Use when the site is not published, the flow is JS-heavy, or you need proof of a workflow.
161
161
 
162
162
  ```bash
163
- unbrowse act go https://example.com
163
+ unbrowse breath go https://example.com
164
164
  unbrowse eval snap --filter interactive # live @eN refs
165
- unbrowse act click e2
166
- unbrowse act fill e5 "hello world"
167
- unbrowse act submit --wait-for "/next-page.html"
168
- unbrowse act sync # mid-flow checkpoint
169
- unbrowse act close # final checkpoint + queue index/publish
165
+ unbrowse breath click e2
166
+ unbrowse breath fill e5 "hello world"
167
+ unbrowse breath submit --wait-for "/next-page.html"
168
+ unbrowse breath sync # mid-flow checkpoint
169
+ unbrowse breath close # final checkpoint + queue index/publish
170
170
  ```
171
171
 
172
172
  Rules while browsing: browser-native by default (no hidden same-origin replay); a
@@ -213,7 +213,7 @@ capture - inspect that with `eval skill` / `build review` / `build publish` firs
213
213
  ```bash
214
214
  unbrowse eval resolve --intent "get my X timeline" --url "https://x.com/home" --pretty
215
215
 
216
- unbrowse act execute --skill {skill_id} --endpoint {endpoint_id} \
216
+ unbrowse breath execute --skill {skill_id} --endpoint {endpoint_id} \
217
217
  --path "data.items[]" --extract "name,url,created_at" --limit 10 --pretty
218
218
  ```
219
219
 
@@ -240,11 +240,15 @@ After domain convergence a single skill can have 40+ endpoints; filter by intent
240
240
 
241
241
  ## Authentication
242
242
 
243
- Automatic: Unbrowse reads cookies from your Chrome/Firefox profile, so if you are logged in
244
- there it just works. If a response is `auth_required`:
243
+ Automatic: Unbrowse reuses your existing logged-in browser session. It reads (a copy of) the
244
+ cookies for the target domain from your daily-driver browser — Chrome, Firefox, Arc, Dia,
245
+ Brave, Edge, Vivaldi, Opera, or Chromium — and attaches them to the fetch, including on the
246
+ fast `resolve` path. So if you are signed in there, a cookie-gated page returns its real
247
+ authenticated content instead of the public/logged-out shell — no browser relaunch, your
248
+ session is left untouched. If a response is still `auth_required`:
245
249
 
246
250
  ```bash
247
- unbrowse act auth-capture --url "https://example.com" # sign in once; cookies persist
251
+ unbrowse breath auth-capture --url "https://example.com" # sign in once; cookies persist
248
252
  ```
249
253
 
250
254
  ## Mutations
@@ -252,8 +256,8 @@ unbrowse act auth-capture --url "https://example.com" # sign in once; cookies
252
256
  Always `--dry-run` first; ask the user before `--confirm-unsafe`:
253
257
 
254
258
  ```bash
255
- unbrowse act execute --skill {id} --endpoint {id} --dry-run
256
- unbrowse act execute --skill {id} --endpoint {id} --confirm-unsafe
259
+ unbrowse breath execute --skill {id} --endpoint {id} --dry-run
260
+ unbrowse breath execute --skill {id} --endpoint {id} --confirm-unsafe
257
261
  ```
258
262
 
259
263
  Policy-sensitive site mutations can require an extra opt-in
@@ -289,7 +293,7 @@ Global flags: `--pretty` (indented JSON), `--raw` (skip server projection), `--n
289
293
  ```bash
290
294
  # Resolve then execute a known route
291
295
  unbrowse eval resolve --intent "get my X timeline" --url "https://x.com/home" --pretty
292
- unbrowse act execute --skill {skill_id} --endpoint {endpoint_id} --pretty
296
+ unbrowse breath execute --skill {skill_id} --endpoint {endpoint_id} --pretty
293
297
 
294
298
  # Submit feedback AFTER presenting results to the user
295
299
  unbrowse eval feedback --skill {skill_id} --endpoint {endpoint_id} --rating 5 --outcome success
@@ -306,12 +310,12 @@ reflects current API reality, not stale docs.
306
310
 
307
311
  ## Payments
308
312
 
309
- Capture, indexing, and reverse-engineering are free. You pay only to use the shared graph
313
+ Capture and indexing are free. You pay only to use the shared graph
310
314
  to skip discovery.
311
315
 
312
316
  | Tier | What | When | Cost |
313
317
  |---|---|---|---|
314
- | Free | Capture, reverse-engineer, execute from local cache | Always | $0 |
318
+ | Free | Capture, index, execute from local cache | Always | $0 |
315
319
  | Tier 1 | One-time skill install from the marketplace | First use of a shared route | $0.005-0.02 |
316
320
  | Tier 2 | Per-execution site-owner fee (opt-in sites only) | Each call to an opted-in site | $0.001-0.01 |
317
321
  | Tier 3 | Search/routing fee | Each marketplace graph lookup | $0.001-0.005 |
@@ -358,7 +362,7 @@ revenue. Check earnings via `unbrowse eval stats` or `unbrowse eval earnings`.
358
362
  ## Reporting issues
359
363
 
360
364
  When Unbrowse fails on a site (empty data after browse+index+resolve+execute, auth fails
361
- after cookie injection, repeated resolve misses, wrong/stale execute data, a regression),
365
+ after sign-in, repeated resolve misses, wrong/stale execute data, a regression),
362
366
  file a GitHub issue so it can be fixed:
363
367
 
364
368
  ```bash
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unbrowse",
3
- "version": "9.10.0",
3
+ "version": "9.11.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/unbrowse-ai/unbrowse.git"
@@ -60,7 +60,7 @@
60
60
  "postinstall": "node scripts/postinstall.mjs",
61
61
  "build:sdk": "tsc -p tsconfig.sdk.json",
62
62
  "prepack": "bun ../../scripts/build-release-manifest.ts && npm run build:runtime && npm run build:sdk && node scripts/prepare-pack.mjs && node scripts/assert-kuri-vendor.mjs && node scripts/assert-utls-vendor.mjs",
63
- "prepublishOnly": "node scripts/assert-release-flow.mjs && node scripts/verify-release-assets.mjs",
63
+ "prepublishOnly": "node scripts/assert-release-flow.mjs",
64
64
  "start": "bun src/index.ts",
65
65
  "dev": "bun --watch src/index.ts",
66
66
  "build:runtime": "bash ../../scripts/build-runtime-scrubbed.sh packages/skill/runtime"