lasso-mcp 1.8.1 → 1.10.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.en.md +2 -0
- package/README.md +16 -1
- package/dist/channels/BrowseChannel.d.ts +8 -0
- package/dist/channels/BrowseChannel.d.ts.map +1 -1
- package/dist/channels/BrowseChannel.js +13 -0
- package/dist/channels/BrowseChannel.js.map +1 -1
- package/dist/channels/HeadlessChannel.d.ts +5 -0
- package/dist/channels/HeadlessChannel.d.ts.map +1 -1
- package/dist/channels/HeadlessChannel.js +7 -0
- package/dist/channels/HeadlessChannel.js.map +1 -1
- package/dist/channels/LoggedInChannel.d.ts +49 -1
- package/dist/channels/LoggedInChannel.d.ts.map +1 -1
- package/dist/channels/LoggedInChannel.js +107 -1
- package/dist/channels/LoggedInChannel.js.map +1 -1
- package/dist/config/config.d.ts +34 -0
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +65 -0
- package/dist/config/config.js.map +1 -1
- package/dist/doctor/doctor.d.ts +1 -1
- package/dist/doctor/doctor.d.ts.map +1 -1
- package/dist/doctor/doctor.js +1 -1
- package/dist/doctor/doctor.js.map +1 -1
- package/dist/index.js +108 -4
- package/dist/index.js.map +1 -1
- package/dist/launcher/chrome-hide.d.ts +31 -0
- package/dist/launcher/chrome-hide.d.ts.map +1 -0
- package/dist/launcher/chrome-hide.js +62 -0
- package/dist/launcher/chrome-hide.js.map +1 -0
- package/dist/launcher/chrome-idle-reaper.d.ts +67 -0
- package/dist/launcher/chrome-idle-reaper.d.ts.map +1 -0
- package/dist/launcher/chrome-idle-reaper.js +119 -0
- package/dist/launcher/chrome-idle-reaper.js.map +1 -0
- package/dist/launcher/chrome-ledger.d.ts +44 -0
- package/dist/launcher/chrome-ledger.d.ts.map +1 -0
- package/dist/launcher/chrome-ledger.js +135 -0
- package/dist/launcher/chrome-ledger.js.map +1 -0
- package/dist/launcher/chrome-stop.d.ts +48 -0
- package/dist/launcher/chrome-stop.d.ts.map +1 -0
- package/dist/launcher/chrome-stop.js +200 -0
- package/dist/launcher/chrome-stop.js.map +1 -0
- package/dist/launcher/launch-chrome.d.ts +66 -7
- package/dist/launcher/launch-chrome.d.ts.map +1 -1
- package/dist/launcher/launch-chrome.js +232 -41
- package/dist/launcher/launch-chrome.js.map +1 -1
- package/dist/logged-in/CdpClient.d.ts +21 -0
- package/dist/logged-in/CdpClient.d.ts.map +1 -1
- package/dist/logged-in/CdpClient.js +42 -0
- package/dist/logged-in/CdpClient.js.map +1 -1
- package/dist/logged-in/TabSession.d.ts +56 -0
- package/dist/logged-in/TabSession.d.ts.map +1 -0
- package/dist/logged-in/TabSession.js +201 -0
- package/dist/logged-in/TabSession.js.map +1 -0
- package/dist/runtime/runtime-types.d.ts +1 -1
- package/dist/runtime/runtime-types.d.ts.map +1 -1
- package/dist/subprocess/SubprocessManager.d.ts +33 -1
- package/dist/subprocess/SubprocessManager.d.ts.map +1 -1
- package/dist/subprocess/SubprocessManager.js +59 -33
- package/dist/subprocess/SubprocessManager.js.map +1 -1
- package/dist/tools/admin.d.ts +10 -1
- package/dist/tools/admin.d.ts.map +1 -1
- package/dist/tools/admin.js +28 -0
- package/dist/tools/admin.js.map +1 -1
- package/dist/util/kill-tree.d.ts +23 -0
- package/dist/util/kill-tree.d.ts.map +1 -0
- package/dist/util/kill-tree.js +58 -0
- package/dist/util/kill-tree.js.map +1 -0
- package/doc/17-/345/212/237/350/203/275/346/265/213/350/257/225/346/270/205/345/215/225.md +13 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v1-idle.mjs +114 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v19-v1-idle.json +31 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v19-v2-chrome-stop.json +49 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v19-v3-tab-restore.json +40 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v19-v4-shutdown.json +46 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v19-v5-perf.json +119 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v2-chrome-stop.mjs +105 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v3-tab-restore.mjs +130 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v4-shutdown.mjs +119 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19/v5-perf.mjs +99 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v19-verify.md +88 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/resource-sampling.json +19 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v1-launch.json +8 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v1-screen.png +0 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v3-idle-reap.json +79 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v3-idle-reap.mjs +61 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v3b-a5-and-stop.json +44 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v3b-a5-and-stop.mjs +52 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v5-silent-tab.json +72 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v5-silent-tab.mjs +84 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-data/v6-headless.json +2 -0
- package/doc/17-/346/211/247/350/241/214/350/256/260/345/275/225/v1x-silent-verify.md +126 -0
- package/doc/KEY-GUIDE.md +7 -0
- package/doc/TROUBLESHOOTING.md +46 -0
- package/package.json +1 -1
- package/src/channels/BrowseChannel.ts +14 -0
- package/src/channels/HeadlessChannel.ts +8 -0
- package/src/channels/LoggedInChannel.ts +105 -0
- package/src/config/config.ts +85 -0
- package/src/doctor/doctor.ts +1 -1
- package/src/index.ts +109 -3
- package/src/invariants/check-invariants.mjs +257 -2
- package/src/launcher/chrome-hide.ts +81 -0
- package/src/launcher/chrome-idle-reaper.ts +152 -0
- package/src/launcher/chrome-ledger.ts +173 -0
- package/src/launcher/chrome-stop.ts +248 -0
- package/src/launcher/launch-chrome.ts +253 -38
- package/src/logged-in/CdpClient.ts +43 -0
- package/src/logged-in/TabSession.ts +234 -0
- package/src/runtime/runtime-types.ts +4 -1
- package/src/subprocess/SubprocessManager.ts +60 -30
- package/src/tools/admin.ts +36 -0
- package/src/util/kill-tree.ts +56 -0
package/README.en.md
CHANGED
|
@@ -269,6 +269,8 @@ Key names match what's written in the table above — just fill them in. Save th
|
|
|
269
269
|
lasso launch-chrome
|
|
270
270
|
```
|
|
271
271
|
|
|
272
|
+
Since v1.10 this Chrome launches **silently by default**: zero window, no focus stealing, always muted — it works in the background while you keep typing in the foreground (the only visible trace is one extra Chrome icon in the Dock / taskbar). Want to watch it work? Use `lasso launch-chrome --mode visible`. While the Lasso server is running, this Chrome also **closes itself ~60s after its last use** ("done-when-used-up", tunable via `LASSO_LAUNCH_IDLE_MS`; set `300000` to restore the 5-minute behavior, `0` to disable). You can always close it manually with `lasso chrome-stop` — it only kills Chromes Lasso itself launched (pid ownership verified), never yours.
|
|
273
|
+
|
|
272
274
|
After that, say "open my logged-in Jira" to Claude and it'll connect automatically.
|
|
273
275
|
|
|
274
276
|
> 🔴 **Red line**: 2FA / SMS codes / CAPTCHA / magic links — Lasso never solves these for you. You must manually pass them once in your local Chrome.
|
package/README.md
CHANGED
|
@@ -190,7 +190,7 @@ macOS 上能控 Finder / Mail / Safari / Notes / 系统设置等任何原生 app
|
|
|
190
190
|
|
|
191
191
|
## 安装
|
|
192
192
|
|
|
193
|
-
**当前版本 v1.
|
|
193
|
+
**当前版本 v1.10.0**(v1.10 浏览器默认静默 + 用完即关:`launch-chrome` 默认零窗口零打扰启动(macOS/Windows 适配,`--mode visible` 可回退)、恒带后台反节流与静音、server 运行期最后使用后 ~60 秒自动关闭(`LASSO_LAUNCH_IDLE_MS` 可调,5 分钟语义配 300000 保留);v1.9 补上浏览器生命周期收尾:无头浏览器空闲 5 分钟自动回收、`lasso chrome-stop` 按台账关闭 Lasso 起的 Chrome、`tab_restore` 恢复你原来的 tab 列表——见上文「用完怎么收尾」;v1.8 修复了 wave1 全量实测暴露的 24 条缺陷:上游 chrome-devtools-mcp@0.3.0 契约适配、截图真实落盘、launch-chrome 探活、caller-tier 配额接线、`read_text` 续页工具等——完整清单见 [doc/17-功能测试清单.md](doc/17-功能测试清单.md) 的「v1.8 修复记录」)。
|
|
194
194
|
|
|
195
195
|
**前提**:Node.js ≥ 20;Claude Code(或任何支持 MCP 的客户端)。
|
|
196
196
|
|
|
@@ -278,10 +278,23 @@ lasso launch-chrome
|
|
|
278
278
|
|
|
279
279
|
启动后 Lasso 会自动探活调试端口(`curl /json/version` 级验证):Chrome 没起来 / 端口被占会**明确报错**,不再「返回成功但其实连不上」。想复用某个已有 profile 目录可以 `lasso launch-chrome --profile <目录>`。
|
|
280
280
|
|
|
281
|
+
**v1.10 起默认「静默干活」**:这个 Chrome **零窗口启动、不抢你的键盘/窗口焦点、永远静音**——你在前台写代码,它在后台抓页面,互不打扰(唯一可感知的残留是 Dock / 任务栏多一个 Chrome 图标,这是操作系统层面去不掉的)。想看着它干活用 `lasso launch-chrome --mode visible`(或在 `~/.lasso/config.json` 配 `"LASSO_LAUNCH_MODE": "visible"`)。
|
|
282
|
+
|
|
281
283
|
之后对 Claude 说「打开我已登录的 Jira」就会自动连上。
|
|
282
284
|
|
|
283
285
|
> 🔴 **红线**:2FA / 短信验证码 / CAPTCHA / 邮件魔法链接——Lasso 不替你解,必须你在本机 Chrome 里手动过一次。
|
|
284
286
|
|
|
287
|
+
**用完怎么收尾(v1.10 起基本不用你管)**:server 运行期间,这个 Chrome **最后一次被使用后约 60 秒内自动关闭**(用完即关,不用等、不用记着关)。想调阈值:`LASSO_LAUNCH_IDLE_MS=300000` 回退 5 分钟、`=1000` 逼近瞬时(代价是间隔稍长的操作要付 ~11 秒重冷启动)、`=0` 禁用自动关。单次长任务放行用 `lasso launch-chrome --idle-ms 3600000`。任何时候也可以手动关(只关 Lasso 自己起的、验证过归属的那个,不会误伤你手动开的浏览器):
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
lasso chrome-stop # 关台账里所有 Lasso 起的 Chrome
|
|
291
|
+
lasso chrome-stop --port 9222 # 只关指定端口的那个
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
> 诚实边界:单独跑 `lasso launch-chrome`(不经 server)时没有 idle 自动关,出口仍是 `chrome-stop`;`browse_logged_in` 连**你自己开的可见 Chrome** 是「低打扰,非零打扰」(macOS 上游平台级限制,个别操作可能抢一次焦点)——要纯静默就用 lasso 自己起的 hidden 档或 `browse_headless`;`desktop` 通道模拟真人键鼠,**设计上就占用物理键鼠**,没有静默形态。
|
|
295
|
+
|
|
296
|
+
`browse_logged_in` 在你的 Chrome 里新开的 tab,任务结束后说一句 `admin {action:"tab_restore", reason:"任务完成"}` 就会关掉 Lasso 开的 tab、恢复你原来的 tab 列表(server 退出时也会自动做)。无头浏览器则默认 **5 分钟没人用就自动回收**,不再常驻占内存——高频连用想省冷启动,配 `LASSO_HEADLESS_IDLE_MS=3600000`(1 小时);配 `0` 完全禁用。
|
|
297
|
+
|
|
285
298
|
**详见** → [Key 配置指南 · 登录态浏览](./doc/KEY-GUIDE.md#b-登录态浏览命令行配置无-key)。
|
|
286
299
|
|
|
287
300
|
### 三、控桌面(✅ 免费 · 不用 key,系统授权一次)
|
|
@@ -350,6 +363,8 @@ Steel 用 Docker 一行启动:`docker run -p 3000:3000 -p 9223:9223 ghcr.io/st
|
|
|
350
363
|
- 放行公司内网 / 特殊代理网段
|
|
351
364
|
- 给登录 cookie 加一个自己的加密口令(不设则走 macOS 钥匙串)
|
|
352
365
|
- 落盘搜索结果快照(做回归测试用)
|
|
366
|
+
- 调无头浏览器空闲自动回收时间(`LASSO_HEADLESS_IDLE_MS`,默认 5 分钟;配 `0` 禁用)
|
|
367
|
+
- 调 launch-chrome 起的 Chrome「用完即关」时间(`LASSO_LAUNCH_IDLE_MS`,默认 60 秒;配 `300000` 回退 5 分钟、`0` 禁用)或切回可见启动(`LASSO_LAUNCH_MODE=visible`)
|
|
353
368
|
- 设 Steel 自托管云浏览器端点(`STEEL_ENDPOINT`,如 `http://localhost:3000`;需同时开 `LASSO_ALLOW_CLOUD_BROWSER=true` 才启用)
|
|
354
369
|
|
|
355
370
|
完整变量清单和默认值见 [Key 配置指南 · 高级调优](./doc/KEY-GUIDE.md#e-高级调优可选全不配)。**Surge / Clash 等 TUN 代理网络(fake-ip,`198.18.0.0/15`)与 `127.0.0.1`(本机 Chrome CDP 调试端口用)都已内置放行**,无需额外配置——这是设计行为,不是漏配。
|
|
@@ -14,6 +14,14 @@ export declare abstract class BrowseChannel extends UiChannel {
|
|
|
14
14
|
abstract readonly name: string;
|
|
15
15
|
/** 子类提供 McpClient(headless 子进程 / logged_in 子进程 各自拿)。 */
|
|
16
16
|
protected abstract getMcpClient(): Promise<McpClient>;
|
|
17
|
+
/**
|
|
18
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后的保活 touch。
|
|
19
|
+
*
|
|
20
|
+
* 默认 no-op(cloud 通道无本地子进程);HeadlessChannel / LoggedInChannel
|
|
21
|
+
* override 成 subproc.touch(specName)——长 browse(多步导航 + ExpectPoll 轮询)
|
|
22
|
+
* 进行中持续刷新 lastUsedAt,防 idle watchdog(默认 5min)误杀 in-flight 浏览器。
|
|
23
|
+
*/
|
|
24
|
+
protected touchKeepalive(): void;
|
|
17
25
|
/**
|
|
18
26
|
* Lasso action → handler 的注册表。
|
|
19
27
|
* 这是 INV-6 的核心:所有新 action 加这里一行,不写 if-else 链。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowseChannel.d.ts","sourceRoot":"","sources":["../../src/channels/BrowseChannel.ts"],"names":[],"mappings":"AAmCA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,MAAM,EACN,cAAc,EAEf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAgB5E;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,aAAa,KAChB,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;AAQpC,8BAAsB,aAAc,SAAQ,SAAS;IACnD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B,wDAAwD;IACxD,SAAS,CAAC,QAAQ,CAAC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"BrowseChannel.d.ts","sourceRoot":"","sources":["../../src/channels/BrowseChannel.ts"],"names":[],"mappings":"AAmCA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,MAAM,EACN,cAAc,EAEf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAgB5E;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,aAAa,KAChB,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;AAQpC,8BAAsB,aAAc,SAAQ,SAAS;IACnD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B,wDAAwD;IACxD,SAAS,CAAC,QAAQ,CAAC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAErD;;;;;;OAMG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAOhC;;;;;;;;OAQG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,6BAiB9B;IAEH;;;;;;;;OAQG;cACa,cAAc,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjE;;;;;;OAMG;cACa,aAAa,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhE;;;OAGG;IACH,OAAO,CAAC,YAAY;IAUpB;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,MAAM;IAInC,qDAAqD;IAC/C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAS/B,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;IAWhC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAOpC;;;;;;;;;OASG;IACG,MAAM,CACV,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;IA+CxC;;OAEG;YACW,YAAY;IA4E1B;;;;;;OAMG;IACG,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IAOhF;;;OAGG;IACH,SAAS,CAAC,kBAAkB,IAAI,gBAAgB,GAAG,IAAI;IAIvD;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAmEvB;;;OAGG;IACG,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;IAsDhE;;;OAGG;IACG,SAAS,CACb,IAAI,EAAE,eAAe,EACrB,GAAG,CAAC,EAAE,iBAAiB,EACvB,IAAI,CAAC,EAAE,iBAAiB,GACvB,OAAO,CAAC,UAAU,GAAG,aAAa,GAAG,QAAQ,CAAC;IAMjD;;;;;OAKG;YACW,aAAa;IAwC3B;;;;;;;;;;;;;OAaG;IACG,SAAS,IAAI,OAAO,CACxB,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAC1D;IAkBD;;;;OAIG;YACW,YAAY;CAa3B"}
|
|
@@ -51,6 +51,16 @@ const PREVIEW_MAX_CHARS = 4000;
|
|
|
51
51
|
// BrowseChannel 抽象
|
|
52
52
|
// ============================================================
|
|
53
53
|
export class BrowseChannel extends UiChannel {
|
|
54
|
+
/**
|
|
55
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后的保活 touch。
|
|
56
|
+
*
|
|
57
|
+
* 默认 no-op(cloud 通道无本地子进程);HeadlessChannel / LoggedInChannel
|
|
58
|
+
* override 成 subproc.touch(specName)——长 browse(多步导航 + ExpectPoll 轮询)
|
|
59
|
+
* 进行中持续刷新 lastUsedAt,防 idle watchdog(默认 5min)误杀 in-flight 浏览器。
|
|
60
|
+
*/
|
|
61
|
+
touchKeepalive() {
|
|
62
|
+
// 默认 no-op
|
|
63
|
+
}
|
|
54
64
|
// ============================================================
|
|
55
65
|
// INV-6: dispatch 走 Map
|
|
56
66
|
// ============================================================
|
|
@@ -222,6 +232,7 @@ export class BrowseChannel extends UiChannel {
|
|
|
222
232
|
}
|
|
223
233
|
try {
|
|
224
234
|
const c = await this.getMcpClient();
|
|
235
|
+
this.touchKeepalive(); // v1.9:action dispatch 后保活(防 idle watchdog 误杀)
|
|
225
236
|
// W2-DEF-N1(v1.8.1):URL 驱动的采集类 action 先导航到目标页——
|
|
226
237
|
// 此前 doNetwork/doScreenshot/doPdf 直接在当前页(首会话 = about:blank)执行,
|
|
227
238
|
// network 恒 0 entries(wave2 实证)。navigate 失败(404/DNS/...)由下方
|
|
@@ -373,6 +384,7 @@ export class BrowseChannel extends UiChannel {
|
|
|
373
384
|
throw new Error(`unknown_action:${step.action}`);
|
|
374
385
|
}
|
|
375
386
|
const c = await this.getMcpClient();
|
|
387
|
+
this.touchKeepalive(); // v1.9:step dispatch 后保活(StepEngine 每 step 调)
|
|
376
388
|
// 1. act 前 quickSnapshot(仅 step.expect 存在时)
|
|
377
389
|
// 失败时(页面未就绪 / evaluate 不可用)→ undefined,跳过 preexisting 判定
|
|
378
390
|
const preSnapshot = step.expect
|
|
@@ -423,6 +435,7 @@ export class BrowseChannel extends UiChannel {
|
|
|
423
435
|
*/
|
|
424
436
|
async runExpect(cond, pre, opts) {
|
|
425
437
|
const c = await this.getMcpClient();
|
|
438
|
+
this.touchKeepalive(); // v1.9:expect 轮询前保活(ExpectPoll 可能持续数十秒)
|
|
426
439
|
return expectPoll(c, cond, pre, opts);
|
|
427
440
|
}
|
|
428
441
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowseChannel.js","sourceRoot":"","sources":["../../src/channels/BrowseChannel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BrowseChannel.js","sourceRoot":"","sources":["../../src/channels/BrowseChannel.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,11 @@ export declare class HeadlessChannel extends BrowseChannel {
|
|
|
30
30
|
private readonly profileName;
|
|
31
31
|
constructor(subproc: SubprocessManager, stealth?: StealthEngine, profileName?: StealthProfileName);
|
|
32
32
|
protected getMcpClient(): Promise<McpClient>;
|
|
33
|
+
/**
|
|
34
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后刷新 lastUsedAt,
|
|
35
|
+
* 防 idle watchdog(默认 5min)误杀 in-flight 长 browse。默认 no-op 见基类。
|
|
36
|
+
*/
|
|
37
|
+
protected touchKeepalive(): void;
|
|
33
38
|
/**
|
|
34
39
|
* override beforeNavigate hook(parse13 §3.4 P0 核心修复):navigate 前注入 stealth。
|
|
35
40
|
* 调用时机由 BrowseChannel.wrapNavigate 保障(actionDispatch Map navigate 入口已包一层)。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeadlessChannel.d.ts","sourceRoot":"","sources":["../../src/channels/HeadlessChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,qBAAa,eAAgB,SAAQ,aAAa;IAO9C,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,QAAQ,CAAC,IAAI,qBAAqB;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;gBAG9B,OAAO,EAAE,iBAAiB,EAC3C,OAAO,CAAC,EAAE,aAAa,EACvB,WAAW,GAAE,kBAAyC;cA+BxC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAIlD;;;;;;;;;;OAUG;cAIsB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAWzE"}
|
|
1
|
+
{"version":3,"file":"HeadlessChannel.d.ts","sourceRoot":"","sources":["../../src/channels/HeadlessChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,qBAAa,eAAgB,SAAQ,aAAa;IAO9C,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,QAAQ,CAAC,IAAI,qBAAqB;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;gBAG9B,OAAO,EAAE,iBAAiB,EAC3C,OAAO,CAAC,EAAE,aAAa,EACvB,WAAW,GAAE,kBAAyC;cA+BxC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAIlD;;;OAGG;cACgB,cAAc,IAAI,IAAI;IAIzC;;;;;;;;;;OAUG;cAIsB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAWzE"}
|
|
@@ -60,6 +60,13 @@ export class HeadlessChannel extends BrowseChannel {
|
|
|
60
60
|
async getMcpClient() {
|
|
61
61
|
return this.subproc.ensureRunning("headless");
|
|
62
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后刷新 lastUsedAt,
|
|
65
|
+
* 防 idle watchdog(默认 5min)误杀 in-flight 长 browse。默认 no-op 见基类。
|
|
66
|
+
*/
|
|
67
|
+
touchKeepalive() {
|
|
68
|
+
this.subproc.touch("headless");
|
|
69
|
+
}
|
|
63
70
|
/**
|
|
64
71
|
* override beforeNavigate hook(parse13 §3.4 P0 核心修复):navigate 前注入 stealth。
|
|
65
72
|
* 调用时机由 BrowseChannel.wrapNavigate 保障(actionDispatch Map navigate 入口已包一层)。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeadlessChannel.js","sourceRoot":"","sources":["../../src/channels/HeadlessChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAO7B;IANV,IAAI,GAAG,iBAAiB,CAAC;IAEjB,OAAO,CAAgB;IACvB,WAAW,CAAqB;IAEjD,YACmB,OAA0B,EAC3C,OAAuB,EACvB,cAAkC,oBAAoB;QAEtD,KAAK,EAAE,CAAC;QAJS,YAAO,GAAP,OAAO,CAAmB;QAK3C,mEAAmE;QACnE,4BAA4B;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,aAAa,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,sFAAsF;QACtF,sFAAsF;QACtF,EAAE;QACF,8EAA8E;QAC9E,qFAAqF;QACrF,wFAAwF;QACxF,6BAA6B;QAC7B,4EAA4E;QAC5E,yEAAyE;QACzE,+EAA+E;QAC/E,8CAA8C;QAC9C,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE;YAC/B,OAAO,EAAE,KAAK;YACd,IAAI,EAAE;gBACJ,IAAI;gBACJ,uBAAuB,sBAAsB,EAAE;gBAC/C,YAAY;gBACZ,YAAY;gBACZ,+CAA+C;aAChD;YACD,aAAa,EAAE,uBAAuB;SACvC,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,YAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;OAUG;IACH,6DAA6D;IAC7D,yDAAyD;IACzD,8CAA8C;IAC3B,KAAK,CAAC,aAAa,CAAC,MAAiB;QACtD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,EAAE,gCAAgC;gBACrC,OAAO,EAAE,IAAI,CAAC,WAAW;gBACzB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"HeadlessChannel.js","sourceRoot":"","sources":["../../src/channels/HeadlessChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAO7B;IANV,IAAI,GAAG,iBAAiB,CAAC;IAEjB,OAAO,CAAgB;IACvB,WAAW,CAAqB;IAEjD,YACmB,OAA0B,EAC3C,OAAuB,EACvB,cAAkC,oBAAoB;QAEtD,KAAK,EAAE,CAAC;QAJS,YAAO,GAAP,OAAO,CAAmB;QAK3C,mEAAmE;QACnE,4BAA4B;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,aAAa,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,sFAAsF;QACtF,sFAAsF;QACtF,EAAE;QACF,8EAA8E;QAC9E,qFAAqF;QACrF,wFAAwF;QACxF,6BAA6B;QAC7B,4EAA4E;QAC5E,yEAAyE;QACzE,+EAA+E;QAC/E,8CAA8C;QAC9C,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE;YAC/B,OAAO,EAAE,KAAK;YACd,IAAI,EAAE;gBACJ,IAAI;gBACJ,uBAAuB,sBAAsB,EAAE;gBAC/C,YAAY;gBACZ,YAAY;gBACZ,+CAA+C;aAChD;YACD,aAAa,EAAE,uBAAuB;SACvC,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,YAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACgB,cAAc;QAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;;;OAUG;IACH,6DAA6D;IAC7D,yDAAyD;IACzD,8CAA8C;IAC3B,KAAK,CAAC,aAAa,CAAC,MAAiB;QACtD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,EAAE,gCAAgC;gBACrC,OAAO,EAAE,IAAI,CAAC,WAAW;gBACzB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
|
|
@@ -29,6 +29,7 @@ import type { SubprocessManager } from "../subprocess/SubprocessManager.js";
|
|
|
29
29
|
import type { HighRiskGateLike } from "../browse/StepEngine.js";
|
|
30
30
|
import type { IProfileRegistry } from "../logged-in/ProfileRegistry.js";
|
|
31
31
|
import type { CookieStore } from "../logged-in/CookieStore.js";
|
|
32
|
+
import { type TabRestoreResult } from "../logged-in/TabSession.js";
|
|
32
33
|
export declare class LoggedInChannel extends BrowseChannel {
|
|
33
34
|
private readonly subproc;
|
|
34
35
|
private readonly cdpPort;
|
|
@@ -49,6 +50,16 @@ export declare class LoggedInChannel extends BrowseChannel {
|
|
|
49
50
|
private lastSpecName;
|
|
50
51
|
/** v0.8:TabRegistry(INV-50:≤10 hard cap;getMcpClient 末尾 reconcile)。 */
|
|
51
52
|
private readonly tabs;
|
|
53
|
+
/**
|
|
54
|
+
* v1.9(parse17 §4.3 机制三):TabSession(首附着 tab 快照 + diff 恢复)。
|
|
55
|
+
*
|
|
56
|
+
* 与 TabRegistry 的分工:LRU 是运行中防爆语义,TabSession 是会话收尾语义
|
|
57
|
+
* (「恢复用户原 tab 列表」)。键于 cdpPort 而非 profile——同一用户 Chrome 的
|
|
58
|
+
* tab 基线跨 profile 有效(forgetSpec 只杀 mcp 子进程,不动用户 Chrome)。
|
|
59
|
+
* 触发口:admin action tab_restore(显式)/ server 停机 / idle 回收 logged_in
|
|
60
|
+
* spec 时(SubprocessManager reap hook,index.ts 装配段接线)。
|
|
61
|
+
*/
|
|
62
|
+
private readonly tabSession;
|
|
52
63
|
/**
|
|
53
64
|
* v0.8:CookieStore 工厂(按 profile 名新建实例;多 profile 隔离用)。
|
|
54
65
|
*
|
|
@@ -56,6 +67,12 @@ export declare class LoggedInChannel extends BrowseChannel {
|
|
|
56
67
|
* exportCookies / importCookies(admin opt-in 入口)经手 CookieStore。
|
|
57
68
|
*/
|
|
58
69
|
private readonly cookieStoreFactory;
|
|
70
|
+
/**
|
|
71
|
+
* v1.10(parse18 §2.6 机制一):browse 活动回调(index.ts 注入 reaper touch)。
|
|
72
|
+
* 每次 getMcpClient 成功路径调用——活动源与 browse 频度天然同步;
|
|
73
|
+
* 台账 Chrome 的 idle 回收因此不误杀 in-flight 会话。
|
|
74
|
+
*/
|
|
75
|
+
private readonly onChromeUse?;
|
|
59
76
|
constructor(subproc: SubprocessManager, cdpPort: number | undefined,
|
|
60
77
|
/**
|
|
61
78
|
* v0.8 新增(parse9 §3.2):多 profile 注册表。
|
|
@@ -65,7 +82,9 @@ export declare class LoggedInChannel extends BrowseChannel {
|
|
|
65
82
|
/** v0.8:CookieStore 工厂(admin.ts export/import 经手)。 */
|
|
66
83
|
cookieStoreFactory: (profileName: string) => CookieStore,
|
|
67
84
|
/** v0.8:tab LRU cap(生产默认 10;测试可传更小值)。 */
|
|
68
|
-
tabCap?: number
|
|
85
|
+
tabCap?: number,
|
|
86
|
+
/** v1.10(parse18 §2.6):browse 活动回调(chrome-idle-reaper touch 注入点)。 */
|
|
87
|
+
onChromeUse?: () => void);
|
|
69
88
|
/**
|
|
70
89
|
* v0.8:按当前 profile 注册/切换 spec(parse9 §3.2 接口签名)。
|
|
71
90
|
*
|
|
@@ -81,6 +100,27 @@ export declare class LoggedInChannel extends BrowseChannel {
|
|
|
81
100
|
*/
|
|
82
101
|
private ensureProfileSpec;
|
|
83
102
|
protected getMcpClient(): Promise<McpClient>;
|
|
103
|
+
/**
|
|
104
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后刷新 lastUsedAt,
|
|
105
|
+
* 防 idle watchdog(默认 5min)误杀 in-flight 长 browse。spec 名取当前 profile。
|
|
106
|
+
*/
|
|
107
|
+
protected touchKeepalive(): void;
|
|
108
|
+
/**
|
|
109
|
+
* v1.10(parse18 §4.3 机制三):hidden 台账 Chrome 预建首 background tab。
|
|
110
|
+
*
|
|
111
|
+
* 背景:`--no-startup-window` 起的 Chrome **没有任何 page target**(E7:/json/list
|
|
112
|
+
* 只有扩展 background_page/service_worker)——chrome-devtools-mcp connect 后无页
|
|
113
|
+
* 可操作,其自建页路径(context.newPage → Target.createTarget 默认档)**会激活
|
|
114
|
+
* Chrome**(V4b/V8-I)。本方法在零 page 时经 CdpClient.createBackgroundTarget
|
|
115
|
+
* (WS `Target.createTarget {background:true}`,锁定的 0.3.0 上游没有此参数)
|
|
116
|
+
* 预建一个 about:blank tab——tab 级零打扰唯一钥匙(E7 两次复测)。
|
|
117
|
+
*
|
|
118
|
+
* 判定门:只对本 channel 绑定端口(cdpPort)且台账 launchMode==="hidden" 的
|
|
119
|
+
* Chrome 生效——复用用户可见 Chrome(无台账记录)零行为变化。
|
|
120
|
+
* 失败(CDP 不可达 / createTarget reject)→ warn 放弃(永不阻断 browse)。
|
|
121
|
+
* 永不 throw(红线,与 restoreTabs 同纪律)。
|
|
122
|
+
*/
|
|
123
|
+
private precreateBackgroundTabIfHidden;
|
|
84
124
|
/**
|
|
85
125
|
* 简化版 2FA 探测(v0.1):
|
|
86
126
|
* - 拿当前 tab 的 snapshot 文本,grep TWOFA_KEYWORDS。
|
|
@@ -92,6 +132,14 @@ export declare class LoggedInChannel extends BrowseChannel {
|
|
|
92
132
|
private _detect2FA;
|
|
93
133
|
/** 重载 status:附加 NEEDS_MANUAL_2FA 标记。 */
|
|
94
134
|
status(): Promise<import("../types.js").ChannelStatus>;
|
|
135
|
+
/**
|
|
136
|
+
* v1.9(parse17 §4.3 机制三):恢复原 tab 列表(薄委托 TabSession.restore)。
|
|
137
|
+
*
|
|
138
|
+
* INV-52 合规:本方法与 cookie action 同为 admin opt-in 入口;TabSession 只读
|
|
139
|
+
* /json/list + 关闭 diff tab,**不触碰任何 cookie 路径**(自动路径永不调
|
|
140
|
+
* cookie export/import 不受影响)。永不 throw。
|
|
141
|
+
*/
|
|
142
|
+
restoreTabs(): Promise<TabRestoreResult>;
|
|
95
143
|
/**
|
|
96
144
|
* 仅 logged_in 启用 HighRiskGate(携带身份 → 风险高,parse3 §3.5)。
|
|
97
145
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggedInChannel.d.ts","sourceRoot":"","sources":["../../src/channels/LoggedInChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAI5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"LoggedInChannel.d.ts","sourceRoot":"","sources":["../../src/channels/LoggedInChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAI5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAe/E,qBAAa,eAAgB,SAAQ,aAAa;IA2C9C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAhD3B,QAAQ,CAAC,IAAI,sBAAsB;IACnC,4DAA4D;IAC5D,OAAO,CAAC,YAAY,CAAS;IAE7B;;;;;OAKG;IACH,OAAO,CAAC,YAAY,CAAuB;IAE3C,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IAEnC;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IAExC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAuC;IAE1E;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;gBAGvB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,MAAM,YAAO;IACvC;;;OAGG;IACc,QAAQ,EAAE,gBAAgB;IAC3C,sDAAsD;IACtD,kBAAkB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,WAAW;IACxD,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM;IACf,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,IAAI;IAS1B;;;;;;;;;;;;OAYG;YACW,iBAAiB;cA2Bf,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IA+BlD;;;OAGG;cACgB,cAAc,IAAI,IAAI;IAIzC;;;;;;;;;;;;;;OAcG;YACW,8BAA8B;IAgC5C;;;;;;;OAOG;YACW,UAAU;IAgCxB,wCAAwC;IACzB,MAAM;IAQrB;;;;;;OAMG;IACG,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAO9C;;;;;;;;;;;OAWG;cACgB,kBAAkB,IAAI,gBAAgB,GAAG,IAAI;IAOhE;;;;;;;;;;;;;OAaG;IACG,aAAa,IAAI,OAAO,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAmBF;;;;;;;;;;;;OAYG;IACG,aAAa,IAAI,OAAO,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAiCF,kDAAkD;IAClD,kBAAkB,IAAI,gBAAgB;CAGvC"}
|
|
@@ -29,6 +29,9 @@ import { logger } from "../util/logger.js";
|
|
|
29
29
|
import { HighRiskGate } from "../browse/HighRiskGate.js";
|
|
30
30
|
import { CdpClient } from "../logged-in/CdpClient.js";
|
|
31
31
|
import { TabRegistry } from "../logged-in/TabRegistry.js";
|
|
32
|
+
import { TabSession } from "../logged-in/TabSession.js";
|
|
33
|
+
// v1.10(parse18 §4.3 机制三):台账读取(判定本 port 绑定的 Chrome 是否 hidden 档)
|
|
34
|
+
import { readLedgerSync } from "../launcher/chrome-ledger.js";
|
|
32
35
|
/** 2FA / 登录表单关键词集(粗筛,v0.3 升级 selector-based 探测)。 */
|
|
33
36
|
const TWOFA_KEYWORDS = [
|
|
34
37
|
"two-factor",
|
|
@@ -55,6 +58,16 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
55
58
|
lastSpecName = null;
|
|
56
59
|
/** v0.8:TabRegistry(INV-50:≤10 hard cap;getMcpClient 末尾 reconcile)。 */
|
|
57
60
|
tabs;
|
|
61
|
+
/**
|
|
62
|
+
* v1.9(parse17 §4.3 机制三):TabSession(首附着 tab 快照 + diff 恢复)。
|
|
63
|
+
*
|
|
64
|
+
* 与 TabRegistry 的分工:LRU 是运行中防爆语义,TabSession 是会话收尾语义
|
|
65
|
+
* (「恢复用户原 tab 列表」)。键于 cdpPort 而非 profile——同一用户 Chrome 的
|
|
66
|
+
* tab 基线跨 profile 有效(forgetSpec 只杀 mcp 子进程,不动用户 Chrome)。
|
|
67
|
+
* 触发口:admin action tab_restore(显式)/ server 停机 / idle 回收 logged_in
|
|
68
|
+
* spec 时(SubprocessManager reap hook,index.ts 装配段接线)。
|
|
69
|
+
*/
|
|
70
|
+
tabSession;
|
|
58
71
|
/**
|
|
59
72
|
* v0.8:CookieStore 工厂(按 profile 名新建实例;多 profile 隔离用)。
|
|
60
73
|
*
|
|
@@ -62,6 +75,12 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
62
75
|
* exportCookies / importCookies(admin opt-in 入口)经手 CookieStore。
|
|
63
76
|
*/
|
|
64
77
|
cookieStoreFactory;
|
|
78
|
+
/**
|
|
79
|
+
* v1.10(parse18 §2.6 机制一):browse 活动回调(index.ts 注入 reaper touch)。
|
|
80
|
+
* 每次 getMcpClient 成功路径调用——活动源与 browse 频度天然同步;
|
|
81
|
+
* 台账 Chrome 的 idle 回收因此不误杀 in-flight 会话。
|
|
82
|
+
*/
|
|
83
|
+
onChromeUse;
|
|
65
84
|
constructor(subproc, cdpPort = 9222,
|
|
66
85
|
/**
|
|
67
86
|
* v0.8 新增(parse9 §3.2):多 profile 注册表。
|
|
@@ -71,13 +90,17 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
71
90
|
/** v0.8:CookieStore 工厂(admin.ts export/import 经手)。 */
|
|
72
91
|
cookieStoreFactory,
|
|
73
92
|
/** v0.8:tab LRU cap(生产默认 10;测试可传更小值)。 */
|
|
74
|
-
tabCap
|
|
93
|
+
tabCap,
|
|
94
|
+
/** v1.10(parse18 §2.6):browse 活动回调(chrome-idle-reaper touch 注入点)。 */
|
|
95
|
+
onChromeUse) {
|
|
75
96
|
super();
|
|
76
97
|
this.subproc = subproc;
|
|
77
98
|
this.cdpPort = cdpPort;
|
|
78
99
|
this.profiles = profiles;
|
|
79
100
|
this.cookieStoreFactory = cookieStoreFactory;
|
|
80
101
|
this.tabs = new TabRegistry(tabCap);
|
|
102
|
+
this.tabSession = new TabSession(cdpPort);
|
|
103
|
+
this.onChromeUse = onChromeUse;
|
|
81
104
|
}
|
|
82
105
|
/**
|
|
83
106
|
* v0.8:按当前 profile 注册/切换 spec(parse9 §3.2 接口签名)。
|
|
@@ -124,6 +147,21 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
124
147
|
// v0.8:按当前 profile 注册/切 spec(parse9 §3.2)
|
|
125
148
|
await this.ensureProfileSpec();
|
|
126
149
|
const c = await this.subproc.ensureRunning(this.lastSpecName);
|
|
150
|
+
// v1.10(parse18 §2.6 机制一):browse 活动打点(reaper touch;先于快照/预建——
|
|
151
|
+
// touch 是回收判定输入,必须最先落)。
|
|
152
|
+
this.onChromeUse?.();
|
|
153
|
+
// v1.10(parse18 §4.3 机制三):hidden 台账 Chrome 零 page target 时预建一个
|
|
154
|
+
// background tab(绕开 chrome-devtools-mcp 0.3.0 new_page 的默认激活路径;
|
|
155
|
+
// 失败 warn 降级——MCP 走自建页并如实承担激活,parse18 §4.2)。
|
|
156
|
+
await this.precreateBackgroundTabIfHidden();
|
|
157
|
+
// v1.9(parse17 §4.3 机制三):首附着快照用户 tab 基线(后续调用 no-op;
|
|
158
|
+
// 失败 warn 放弃不阻断 browse——下次 getMcpClient 重试)。
|
|
159
|
+
try {
|
|
160
|
+
await this.tabSession.takeSnapshotIfAbsent();
|
|
161
|
+
}
|
|
162
|
+
catch (e) {
|
|
163
|
+
logger.warn({ evt: "tab_snapshot_error", error: String(e) });
|
|
164
|
+
}
|
|
127
165
|
// 首次拿到 client 后探一次 2FA(不阻塞太久;失败不影响 browse,只影响 status)。
|
|
128
166
|
await this._detect2FA(c);
|
|
129
167
|
// v0.8:tab LRU reconcile(parse9 §3.3 + INV-50)。
|
|
@@ -137,6 +175,64 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
137
175
|
}
|
|
138
176
|
return c;
|
|
139
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* v1.9(parse17 §2.2 (d) 机制一):action/step dispatch 后刷新 lastUsedAt,
|
|
180
|
+
* 防 idle watchdog(默认 5min)误杀 in-flight 长 browse。spec 名取当前 profile。
|
|
181
|
+
*/
|
|
182
|
+
touchKeepalive() {
|
|
183
|
+
if (this.lastSpecName)
|
|
184
|
+
this.subproc.touch(this.lastSpecName);
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* v1.10(parse18 §4.3 机制三):hidden 台账 Chrome 预建首 background tab。
|
|
188
|
+
*
|
|
189
|
+
* 背景:`--no-startup-window` 起的 Chrome **没有任何 page target**(E7:/json/list
|
|
190
|
+
* 只有扩展 background_page/service_worker)——chrome-devtools-mcp connect 后无页
|
|
191
|
+
* 可操作,其自建页路径(context.newPage → Target.createTarget 默认档)**会激活
|
|
192
|
+
* Chrome**(V4b/V8-I)。本方法在零 page 时经 CdpClient.createBackgroundTarget
|
|
193
|
+
* (WS `Target.createTarget {background:true}`,锁定的 0.3.0 上游没有此参数)
|
|
194
|
+
* 预建一个 about:blank tab——tab 级零打扰唯一钥匙(E7 两次复测)。
|
|
195
|
+
*
|
|
196
|
+
* 判定门:只对本 channel 绑定端口(cdpPort)且台账 launchMode==="hidden" 的
|
|
197
|
+
* Chrome 生效——复用用户可见 Chrome(无台账记录)零行为变化。
|
|
198
|
+
* 失败(CDP 不可达 / createTarget reject)→ warn 放弃(永不阻断 browse)。
|
|
199
|
+
* 永不 throw(红线,与 restoreTabs 同纪律)。
|
|
200
|
+
*/
|
|
201
|
+
async precreateBackgroundTabIfHidden() {
|
|
202
|
+
try {
|
|
203
|
+
// 1. 台账判定:本 port 绑定的 Chrome 是否 lasso 起的 hidden 档
|
|
204
|
+
const rec = readLedgerSync().find((r) => r.port === this.cdpPort);
|
|
205
|
+
if (!rec || rec.launchMode !== "hidden")
|
|
206
|
+
return;
|
|
207
|
+
// 2. 零 page target 判定(复用 TabSession /json/list 探针)
|
|
208
|
+
const pages = await this.tabSession.listPageTargets();
|
|
209
|
+
if (pages === null || pages.length > 0)
|
|
210
|
+
return;
|
|
211
|
+
// 3. 预建 background tab(失败返 null 走降级)
|
|
212
|
+
const cdp = new CdpClient(this.cdpPort);
|
|
213
|
+
try {
|
|
214
|
+
const targetId = await cdp.createBackgroundTarget("about:blank");
|
|
215
|
+
if (targetId) {
|
|
216
|
+
logger.info({
|
|
217
|
+
evt: "chrome_bg_tab_precreated",
|
|
218
|
+
port: this.cdpPort,
|
|
219
|
+
targetId,
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
finally {
|
|
224
|
+
await cdp.close();
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
catch (e) {
|
|
228
|
+
// CDP 不可达等任何异常 → warn 放弃(下次 getMcpClient 重试)
|
|
229
|
+
logger.warn({
|
|
230
|
+
evt: "chrome_bg_tab_precreate_failed",
|
|
231
|
+
error: String(e),
|
|
232
|
+
cdp_port: this.cdpPort,
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
}
|
|
140
236
|
/**
|
|
141
237
|
* 简化版 2FA 探测(v0.1):
|
|
142
238
|
* - 拿当前 tab 的 snapshot 文本,grep TWOFA_KEYWORDS。
|
|
@@ -185,6 +281,16 @@ export class LoggedInChannel extends BrowseChannel {
|
|
|
185
281
|
}
|
|
186
282
|
return s;
|
|
187
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* v1.9(parse17 §4.3 机制三):恢复原 tab 列表(薄委托 TabSession.restore)。
|
|
286
|
+
*
|
|
287
|
+
* INV-52 合规:本方法与 cookie action 同为 admin opt-in 入口;TabSession 只读
|
|
288
|
+
* /json/list + 关闭 diff tab,**不触碰任何 cookie 路径**(自动路径永不调
|
|
289
|
+
* cookie export/import 不受影响)。永不 throw。
|
|
290
|
+
*/
|
|
291
|
+
async restoreTabs() {
|
|
292
|
+
return this.tabSession.restore();
|
|
293
|
+
}
|
|
188
294
|
// ============================================================
|
|
189
295
|
// v0.3 Phase D(parse3 §3.5):high-risk pattern gate 注入点
|
|
190
296
|
// ============================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggedInChannel.js","sourceRoot":"","sources":["../../src/channels/LoggedInChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAKzD,OAAO,EAAE,SAAS,EAAkB,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"LoggedInChannel.js","sourceRoot":"","sources":["../../src/channels/LoggedInChannel.ts"],"names":[],"mappings":"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"}
|
package/dist/config/config.d.ts
CHANGED
|
@@ -13,11 +13,45 @@ export interface LassoConfig {
|
|
|
13
13
|
searchCacheDir: string;
|
|
14
14
|
/** free_only 全局默认(env LASSO_SEARCH_FREE_ONLY,默认 L4=全部允许) */
|
|
15
15
|
searchFreeOnly: FreeTierLevel;
|
|
16
|
+
/**
|
|
17
|
+
* v1.9(parse17 §2.2 (a) 机制一):MCP 浏览器子进程空闲回收阈值(ms)。
|
|
18
|
+
* env LASSO_HEADLESS_IDLE_MS(默认 300_000 = 5min;0 = 禁用 idle watchdog)。
|
|
19
|
+
* 到期由 zombie reaper(60s 周期)树杀整棵 shim→node→Chromium 树。
|
|
20
|
+
*/
|
|
21
|
+
headlessIdleMs: number;
|
|
22
|
+
/**
|
|
23
|
+
* v1.10(parse18 §2.4 机制一):launch-chrome 起的台账 Chrome「用完即关」
|
|
24
|
+
* idle 阈值(ms)。env LASSO_LAUNCH_IDLE_MS(默认 60_000;0 = 禁用 reaper)。
|
|
25
|
+
* 到期由 chrome-idle-reaper(15s 周期)经 chrome-stop 验证归属后回收。
|
|
26
|
+
* **与 headlessIdleMs 分工勿混**:LAUNCH=台账 detached Chrome;
|
|
27
|
+
* HEADLESS=MCP spec 子进程树(白盒 §6.1)。
|
|
28
|
+
*/
|
|
29
|
+
launchIdleMs: number;
|
|
30
|
+
/**
|
|
31
|
+
* v1.10(parse18 §3 机制二):launch-chrome 启动档。
|
|
32
|
+
* env LASSO_LAUNCH_MODE(默认 "hidden" = 0 窗口零打扰;"visible" = v1.9 可见行为)。
|
|
33
|
+
*/
|
|
34
|
+
launchMode: "hidden" | "visible";
|
|
16
35
|
}
|
|
17
36
|
export interface LoadConfigOptions {
|
|
18
37
|
runId: string;
|
|
19
38
|
env?: NodeJS.ProcessEnv;
|
|
20
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* v1.9(parse17 §2.2 (a)):LASSO_HEADLESS_IDLE_MS 默认 5min。
|
|
42
|
+
* parse17 §1.2 折中:高频连续 browse 复用浏览器(懒复用设计),5min 无人用即回收
|
|
43
|
+
* (52 进程积留的对症)。要回退 v1.8.1 常驻行为配 3600000。
|
|
44
|
+
*/
|
|
45
|
+
export declare const DEFAULT_HEADLESS_IDLE_MS = 300000;
|
|
46
|
+
/**
|
|
47
|
+
* v1.10(parse18 §2.2 裁决):LASSO_LAUNCH_IDLE_MS 默认 60s(用户需求①「用完即关,
|
|
48
|
+
* 不等 5 分钟」)。四条依据:调用间隔统计(会话内秒级);重开成本不对称(30s 会频繁
|
|
49
|
+
* 触发 11s 重冷启);比 5min 短是显式要求;15s 周期 → 关窗最坏延迟 ≤75s。
|
|
50
|
+
* 配 300000 即回退「5min 才关」语义(5min 保留给用户,parse18 §2.4)。
|
|
51
|
+
*/
|
|
52
|
+
export declare const DEFAULT_LAUNCH_IDLE_MS = 60000;
|
|
53
|
+
/** v1.10(parse18 §3.1):launch 档默认 hidden(保守默认 = 用户要的不打扰)。 */
|
|
54
|
+
export declare const DEFAULT_LAUNCH_MODE: "hidden" | "visible";
|
|
21
55
|
/**
|
|
22
56
|
* 默认 config 文件路径:~/.lasso/config.json。
|
|
23
57
|
* 可用 env LASSO_CONFIG_PATH 覆盖(绝对路径,便于测试 + 多实例隔离)。
|