@joohw/boss-cli 0.2.2 → 0.3.1
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/dist/browser/browser_session.d.ts.map +1 -1
- package/dist/browser/browser_session.js +6 -0
- package/dist/browser/browser_session.js.map +1 -1
- package/dist/browser/cdp_browser.d.ts +8 -1
- package/dist/browser/cdp_browser.d.ts.map +1 -1
- package/dist/browser/cdp_browser.js +54 -66
- package/dist/browser/cdp_browser.js.map +1 -1
- package/dist/cli/cliRouter.d.ts.map +1 -1
- package/dist/cli/cliRouter.js +7 -1
- package/dist/cli/cliRouter.js.map +1 -1
- package/dist/common/boss_page_guards.d.ts +4 -0
- package/dist/common/boss_page_guards.d.ts.map +1 -0
- package/dist/common/boss_page_guards.js +499 -0
- package/dist/common/boss_page_guards.js.map +1 -0
- package/dist/common/boss_session_page.d.ts +1 -1
- package/dist/common/boss_session_page.d.ts.map +1 -1
- package/dist/common/boss_session_page.js +10 -11
- package/dist/common/boss_session_page.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser_session.d.ts","sourceRoot":"","sources":["../../src/browser/browser_session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"browser_session.d.ts","sourceRoot":"","sources":["../../src/browser/browser_session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAwHpD;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAGnE;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAwC1D;AAED,wBAAgB,aAAa,IAAI,OAAO,GAAG,IAAI,CAE9C;AAED,wBAAgB,UAAU,IAAI,IAAI,GAAG,IAAI,CAIxC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAS/C;AAED,0BAA0B;AAC1B,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAY9D;AAWD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuB1D"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { clearSpawnedChromeProcessRef, connectBrowser } from './cdp_browser.js';
|
|
2
|
+
import { installBossBrowserPageGuards, installBossPageGuards } from '../common/boss_page_guards.js';
|
|
2
3
|
let browserRef = null;
|
|
3
4
|
let pageRef = null;
|
|
4
5
|
let connectPromise = null;
|
|
@@ -98,7 +99,9 @@ async function establishSession() {
|
|
|
98
99
|
const b = await connectBrowser();
|
|
99
100
|
browserRef = b;
|
|
100
101
|
attachDisconnectedHandler(b);
|
|
102
|
+
await installBossBrowserPageGuards(b);
|
|
101
103
|
pageRef = await pickOrCreatePage(b);
|
|
104
|
+
await installBossPageGuards(pageRef);
|
|
102
105
|
await closeRedundantBlankPages(b, pageRef);
|
|
103
106
|
}
|
|
104
107
|
/**
|
|
@@ -111,6 +114,7 @@ export async function ensureAndGetBrowser() {
|
|
|
111
114
|
}
|
|
112
115
|
export async function ensureBrowserSession() {
|
|
113
116
|
if (browserRef?.connected) {
|
|
117
|
+
await installBossBrowserPageGuards(browserRef);
|
|
114
118
|
if (pageRef && !pageRef.isClosed()) {
|
|
115
119
|
try {
|
|
116
120
|
const u = pageRef.url();
|
|
@@ -125,9 +129,11 @@ export async function ensureBrowserSession() {
|
|
|
125
129
|
catch {
|
|
126
130
|
/* ignore */
|
|
127
131
|
}
|
|
132
|
+
await installBossPageGuards(pageRef);
|
|
128
133
|
return;
|
|
129
134
|
}
|
|
130
135
|
pageRef = await pickOrCreatePage(browserRef);
|
|
136
|
+
await installBossPageGuards(pageRef);
|
|
131
137
|
await closeRedundantBlankPages(browserRef, pageRef);
|
|
132
138
|
return;
|
|
133
139
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser_session.js","sourceRoot":"","sources":["../../src/browser/browser_session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser_session.js","sourceRoot":"","sources":["../../src/browser/browser_session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import { type Browser, type CDPSession, type Page } from 'puppeteer-core';
|
|
2
|
+
/**
|
|
3
|
+
* 固定的远程调试端口:boss-cli 使用独立的 user-data-dir,因此可以稳定占用一个端口,
|
|
4
|
+
* 让多个命令直接通过 `http://127.0.0.1:<port>/json/version` 复用同一只浏览器。
|
|
5
|
+
* 可用 `BOSS_BROWSER_REMOTE_DEBUGGING_PORT` 覆盖。
|
|
6
|
+
*/
|
|
7
|
+
export declare const REMOTE_DEBUGGING_PORT: number;
|
|
2
8
|
export declare function clearSpawnedChromeProcessRef(): void;
|
|
3
9
|
/** 最近一次启动是否为无头(仅本进程内、与当前会话一致时有效)。 */
|
|
4
10
|
export declare function wasLastChromeLaunchHeadless(): boolean;
|
|
5
11
|
/** 减轻「正受到自动测试软件的控制」提示与常见自动化特征(非万能,站点仍可能用其它方式检测)。手动开 Chrome 并接 CDP 时可复用。 */
|
|
6
|
-
export declare const LAUNCH_ARGS_LESS_AUTOMATION: readonly ["--disable-
|
|
12
|
+
export declare const LAUNCH_ARGS_LESS_AUTOMATION: readonly ["--disable-infobars"];
|
|
7
13
|
/** 仅用于本地调试:尽量放宽同源/CORS 限制,便于跨域 iframe/canvas 处理。 */
|
|
8
14
|
export declare const LAUNCH_ARGS_ALLOW_ALL_CORS: readonly ["--disable-web-security", "--allow-running-insecure-content"];
|
|
9
15
|
export type ConnectBrowserOptions = {
|
|
@@ -25,6 +31,7 @@ export type ConnectBrowserOptions = {
|
|
|
25
31
|
* - `CHROME_PATH` / `PUPPETEER_EXECUTABLE_PATH` — 启动本机浏览器可执行文件路径(高于自动探测)
|
|
26
32
|
* - `BOSS_BROWSER_USER_DATA_DIR` — 启动浏览器时复用的用户数据目录;未设置时默认 `~/.boss-cli/.cache/browser-data`
|
|
27
33
|
* - `BOSS_BROWSER_PROFILE_DIRECTORY` — 启动浏览器时指定 profile(如 `Default`)
|
|
34
|
+
* - `BOSS_BROWSER_REMOTE_DEBUGGING_PORT` — 远程调试端口(默认 53470);同一 user-data-dir 跨命令复用该端口
|
|
28
35
|
* - `BOSS_BROWSER_ALLOW_ALL_CORS` — 设为 `true` 时附加放宽同源/CORS 的启动参数(仅调试)
|
|
29
36
|
* - `BOSS_BROWSER_DISABLE_GPU` — 设为 `true` 时附加 `--disable-gpu`
|
|
30
37
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp_browser.d.ts","sourceRoot":"","sources":["../../src/browser/cdp_browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cdp_browser.d.ts","sourceRoot":"","sources":["../../src/browser/cdp_browser.ts"],"names":[],"mappings":"AAIA,OAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAQrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAOhC,CAAC;AAML,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAED,qCAAqC;AACrC,wBAAgB,2BAA2B,IAAI,OAAO,CAErD;AAwJD,2EAA2E;AAC3E,eAAO,MAAM,2BAA2B,iCAE9B,CAAC;AAEX,oDAAoD;AACpD,eAAO,MAAM,0BAA0B,yEAG7B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG;IAClC,yBAAyB;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,6DAA6D;AAC7D,wBAAgB,sBAAsB,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAO1E;AAYD,wBAAsB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,OAAO,CAAC,CA2H1F;AAED,8DAA8D;AAC9D,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAE1E"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
|
-
import { readFile } from 'node:fs/promises';
|
|
4
3
|
import readline from 'node:readline';
|
|
5
4
|
import path from 'node:path';
|
|
6
5
|
import puppeteer from 'puppeteer-core';
|
|
@@ -8,6 +7,20 @@ import { BROWSER_USER_DATA_DIR, ensureAppDataLayout } from '../config.js';
|
|
|
8
7
|
/** 与 @puppeteer/browsers 一致,解析 Chrome 启动日志中的 CDP WebSocket URL(可能在 stdout 或 stderr)。 */
|
|
9
8
|
const CDP_WEBSOCKET_ENDPOINT_REGEX = /^DevTools listening on (ws:\/\/.*)$/;
|
|
10
9
|
const LAUNCH_READY_MS = 30_000;
|
|
10
|
+
/**
|
|
11
|
+
* 固定的远程调试端口:boss-cli 使用独立的 user-data-dir,因此可以稳定占用一个端口,
|
|
12
|
+
* 让多个命令直接通过 `http://127.0.0.1:<port>/json/version` 复用同一只浏览器。
|
|
13
|
+
* 可用 `BOSS_BROWSER_REMOTE_DEBUGGING_PORT` 覆盖。
|
|
14
|
+
*/
|
|
15
|
+
export const REMOTE_DEBUGGING_PORT = (() => {
|
|
16
|
+
const raw = process.env.BOSS_BROWSER_REMOTE_DEBUGGING_PORT?.trim();
|
|
17
|
+
if (raw) {
|
|
18
|
+
const n = Number.parseInt(raw, 10);
|
|
19
|
+
if (Number.isFinite(n) && n > 0 && n <= 65535)
|
|
20
|
+
return n;
|
|
21
|
+
}
|
|
22
|
+
return 53470;
|
|
23
|
+
})();
|
|
11
24
|
let spawnedChromeChild = null;
|
|
12
25
|
/** 最近一次 `connectBrowser` 是否以无头方式启动(`browser.process()` 在 connect 模式下不可用,供 login 等逻辑判断)。 */
|
|
13
26
|
let lastChromeLaunchHeadless = false;
|
|
@@ -19,39 +32,29 @@ export function wasLastChromeLaunchHeadless() {
|
|
|
19
32
|
return lastChromeLaunchHeadless;
|
|
20
33
|
}
|
|
21
34
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
35
|
+
* 探测固定调试端口上是否已有在跑的 Chrome:直接命中 `/json/version` 拿当前
|
|
36
|
+
* `webSocketDebuggerUrl`,避免依赖 `DevToolsActivePort` 这种二级状态文件
|
|
37
|
+
* (可能被陈旧/清理/路径 UUID 漂移影响)。命中即可复用,未命中表示需要 spawn。
|
|
25
38
|
*/
|
|
26
|
-
async function
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
catch {
|
|
48
|
-
/* 文件可能尚未写完,重试 */
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
await new Promise((r) => setTimeout(r, delay));
|
|
52
|
-
delay = Math.min(delay + 40, 200);
|
|
39
|
+
async function probeRemoteDebuggingWsEndpoint(port, timeoutMs) {
|
|
40
|
+
const ctrl = new AbortController();
|
|
41
|
+
const timer = setTimeout(() => ctrl.abort(), timeoutMs);
|
|
42
|
+
try {
|
|
43
|
+
const res = await fetch(`http://127.0.0.1:${port}/json/version`, {
|
|
44
|
+
signal: ctrl.signal,
|
|
45
|
+
});
|
|
46
|
+
if (!res.ok)
|
|
47
|
+
return undefined;
|
|
48
|
+
const data = (await res.json());
|
|
49
|
+
const ws = data.webSocketDebuggerUrl;
|
|
50
|
+
return typeof ws === 'string' && ws.length > 0 ? ws : undefined;
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
finally {
|
|
56
|
+
clearTimeout(timer);
|
|
53
57
|
}
|
|
54
|
-
return undefined;
|
|
55
58
|
}
|
|
56
59
|
function waitForDevToolsWebSocketUrl(proc, userDataDir, timeoutMs) {
|
|
57
60
|
const streams = [proc.stdout, proc.stderr].filter((s) => s != null);
|
|
@@ -92,26 +95,11 @@ function waitForDevToolsWebSocketUrl(proc, userDataDir, timeoutMs) {
|
|
|
92
95
|
});
|
|
93
96
|
}, timeoutMs);
|
|
94
97
|
const onExit = (code) => {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (code === 0) {
|
|
101
|
-
const fromFile = await readDevToolsEndpointFromUserDataDir(userDataDir, 4000);
|
|
102
|
-
if (fromFile) {
|
|
103
|
-
finish(() => {
|
|
104
|
-
resolve(fromFile);
|
|
105
|
-
});
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
finish(() => {
|
|
110
|
-
reject(new Error(code === 0
|
|
111
|
-
? '无法连接浏览器:新进程已退出(代码 0)且未在本地用户数据目录发现 DevTools 调试端口。若该配置正被「手动打开」的 Chrome 占用(无远程调试),请先关闭该窗口;或结束仍由上次 boss-cli 留下的浏览器后再试。'
|
|
112
|
-
: `浏览器进程在就绪前退出(代码 ${code ?? 'unknown'})`));
|
|
113
|
-
});
|
|
114
|
-
})();
|
|
98
|
+
finish(() => {
|
|
99
|
+
reject(new Error(code === 0
|
|
100
|
+
? `浏览器进程立即以代码 0 退出:user-data-dir「${userDataDir}」可能正被另一只「无远程调试端口」的 Chrome 持有(Chrome 单例锁会让我们 spawn 的新进程把命令行交还给它后立刻退出)。请关闭占用该目录的 Chrome 窗口后重试。`
|
|
101
|
+
: `浏览器进程在就绪前退出(代码 ${code ?? 'unknown'})`));
|
|
102
|
+
});
|
|
115
103
|
};
|
|
116
104
|
const onProcError = (err) => {
|
|
117
105
|
finish(() => {
|
|
@@ -168,7 +156,6 @@ function findLocalChromiumExecutable() {
|
|
|
168
156
|
}
|
|
169
157
|
/** 减轻「正受到自动测试软件的控制」提示与常见自动化特征(非万能,站点仍可能用其它方式检测)。手动开 Chrome 并接 CDP 时可复用。 */
|
|
170
158
|
export const LAUNCH_ARGS_LESS_AUTOMATION = [
|
|
171
|
-
'--disable-blink-features=AutomationControlled',
|
|
172
159
|
'--disable-infobars',
|
|
173
160
|
];
|
|
174
161
|
/** 仅用于本地调试:尽量放宽同源/CORS 限制,便于跨域 iframe/canvas 处理。 */
|
|
@@ -183,6 +170,7 @@ export const LAUNCH_ARGS_ALLOW_ALL_CORS = [
|
|
|
183
170
|
* - `CHROME_PATH` / `PUPPETEER_EXECUTABLE_PATH` — 启动本机浏览器可执行文件路径(高于自动探测)
|
|
184
171
|
* - `BOSS_BROWSER_USER_DATA_DIR` — 启动浏览器时复用的用户数据目录;未设置时默认 `~/.boss-cli/.cache/browser-data`
|
|
185
172
|
* - `BOSS_BROWSER_PROFILE_DIRECTORY` — 启动浏览器时指定 profile(如 `Default`)
|
|
173
|
+
* - `BOSS_BROWSER_REMOTE_DEBUGGING_PORT` — 远程调试端口(默认 53470);同一 user-data-dir 跨命令复用该端口
|
|
186
174
|
* - `BOSS_BROWSER_ALLOW_ALL_CORS` — 设为 `true` 时附加放宽同源/CORS 的启动参数(仅调试)
|
|
187
175
|
* - `BOSS_BROWSER_DISABLE_GPU` — 设为 `true` 时附加 `--disable-gpu`
|
|
188
176
|
*
|
|
@@ -228,24 +216,24 @@ export async function connectBrowser(options = {}) {
|
|
|
228
216
|
clearSpawnedChromeProcessRef();
|
|
229
217
|
lastChromeLaunchHeadless = !!headless;
|
|
230
218
|
/**
|
|
231
|
-
*
|
|
232
|
-
*
|
|
219
|
+
* 优先直连固定调试端口上的已有实例:boss-cli 使用独立 user-data-dir,
|
|
220
|
+
* 端口稳定可期,命中即跨命令复用同一只浏览器(同一登录态、同一标签)。
|
|
233
221
|
*/
|
|
234
|
-
const existingWsUrl = await
|
|
222
|
+
const existingWsUrl = await probeRemoteDebuggingWsEndpoint(REMOTE_DEBUGGING_PORT, 800);
|
|
235
223
|
if (existingWsUrl) {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
});
|
|
241
|
-
}
|
|
242
|
-
catch {
|
|
243
|
-
// 端口文件可能陈旧或实例刚退出,回退到 spawn + connect。
|
|
244
|
-
}
|
|
224
|
+
return await puppeteer.connect({
|
|
225
|
+
browserWSEndpoint: existingWsUrl,
|
|
226
|
+
defaultViewport: launchViewportFromEnv(),
|
|
227
|
+
});
|
|
245
228
|
}
|
|
229
|
+
// 默认保留 WebAssembly:`typeof WebAssembly === 'undefined'` 本身就是强自动化指纹。
|
|
230
|
+
// aegis_bg.wasm 已在 CDP `Fetch.enable` 层被阻断,不需要再禁用 WASM 引擎。
|
|
231
|
+
// 仅当显式设置 BOSS_BROWSER_DISABLE_WASM=true/1 时才追加 --noexpose_wasm。
|
|
232
|
+
const disableWasm = process.env.BOSS_BROWSER_DISABLE_WASM === 'true' || process.env.BOSS_BROWSER_DISABLE_WASM === '1';
|
|
246
233
|
const userArgs = [
|
|
247
234
|
...LAUNCH_ARGS_LESS_AUTOMATION,
|
|
248
235
|
...(disableGpu ? ['--disable-gpu'] : []),
|
|
236
|
+
...(disableWasm ? ['--js-flags=--noexpose_wasm'] : []),
|
|
249
237
|
...(allowAllCors ? LAUNCH_ARGS_ALLOW_ALL_CORS : []),
|
|
250
238
|
...(profileDirectory ? [`--profile-directory=${profileDirectory}`] : []),
|
|
251
239
|
];
|
|
@@ -258,7 +246,7 @@ export async function connectBrowser(options = {}) {
|
|
|
258
246
|
})
|
|
259
247
|
.filter((a) => a !== '--enable-automation' && a !== 'about:blank' && a !== 'data:,');
|
|
260
248
|
if (!chromeArgs.some((a) => a.startsWith('--remote-debugging-'))) {
|
|
261
|
-
chromeArgs.push(
|
|
249
|
+
chromeArgs.push(`--remote-debugging-port=${REMOTE_DEBUGGING_PORT}`);
|
|
262
250
|
}
|
|
263
251
|
/**
|
|
264
252
|
* 不使用 `puppeteer.launch()`:其依赖的 `@puppeteer/browsers` 会在 **Node 进程 `exit` 时 kill 浏览器子进程**,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp_browser.js","sourceRoot":"","sources":["../../src/browser/cdp_browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,
|
|
1
|
+
{"version":3,"file":"cdp_browser.js","sourceRoot":"","sources":["../../src/browser/cdp_browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliRouter.d.ts","sourceRoot":"","sources":["../../src/cli/cliRouter.ts"],"names":[],"mappings":"AAkEA,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAMxD;AA2KD;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAwKpE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAWjE;AAiDD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"cliRouter.d.ts","sourceRoot":"","sources":["../../src/cli/cliRouter.ts"],"names":[],"mappings":"AAkEA,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAMxD;AA2KD;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAwKpE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAWjE;AAiDD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B1D"}
|
package/dist/cli/cliRouter.js
CHANGED
|
@@ -427,7 +427,13 @@ async function runInteractiveLoop() {
|
|
|
427
427
|
}
|
|
428
428
|
export async function runCli(argv) {
|
|
429
429
|
if (argv.length === 0) {
|
|
430
|
-
|
|
430
|
+
if (process.env.npm_lifecycle_event === 'dev') {
|
|
431
|
+
await runInteractiveLoop();
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
console.error('❌ 生产环境不支持交互模式。请使用 boss --help 查看可用命令。');
|
|
435
|
+
process.exit(1);
|
|
436
|
+
}
|
|
431
437
|
return;
|
|
432
438
|
}
|
|
433
439
|
if (argv[0] === 'version' ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliRouter.js","sourceRoot":"","sources":["../../src/cli/cliRouter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cliRouter.js","sourceRoot":"","sources":["../../src/cli/cliRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boss_page_guards.d.ts","sourceRoot":"","sources":["../../src/common/boss_page_guards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAc,IAAI,EAAU,MAAM,gBAAgB,CAAC;AAifxE,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAKrE;AASD,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAelF"}
|
|
@@ -0,0 +1,499 @@
|
|
|
1
|
+
import { BOSS_CHAT_INDEX_URL } from './auth.js';
|
|
2
|
+
const SHOULD_ALLOW_CONSOLE_CLEAR = process.env.BOSS_BROWSER_ALLOW_CONSOLE_CLEAR === 'true' ||
|
|
3
|
+
process.env.BOSS_BROWSER_ALLOW_CONSOLE_CLEAR === '1';
|
|
4
|
+
/**
|
|
5
|
+
* 主包用 `console.log` / `console.table` 重复打印大对象,比对耗时差判断 DevTools 是否打开。
|
|
6
|
+
* 默认开启对抗:把传入对象参数全部归一化为 `[object Type]` 字符串再交给原生方法,
|
|
7
|
+
* V8 inspector 序列化路径只看到短字符串,耗时不再随 DevTools 状态变化。
|
|
8
|
+
*
|
|
9
|
+
* 设为 `true` 可恢复完整 console 形态(保留对象树展开 UX,但会重新被时间差检测命中)。
|
|
10
|
+
*/
|
|
11
|
+
const SHOULD_ALLOW_VERBOSE_CONSOLE = process.env.BOSS_BROWSER_ALLOW_VERBOSE_CONSOLE === 'true' ||
|
|
12
|
+
process.env.BOSS_BROWSER_ALLOW_VERBOSE_CONSOLE === '1';
|
|
13
|
+
const BLOCKED_SECURITY_SCRIPT_PATTERNS = [
|
|
14
|
+
{ urlPattern: '*zhipin-security/web/boss/*', requestStage: 'Request' },
|
|
15
|
+
{ urlPattern: '*zhipin-boss*risk-detection*', requestStage: 'Request' },
|
|
16
|
+
{ urlPattern: '*bosszhipin.com/static/zhipin/geek/sdk/*', requestStage: 'Request' },
|
|
17
|
+
];
|
|
18
|
+
const REPORT_REQUEST_PATTERNS = [
|
|
19
|
+
{ urlPattern: '*logapi.zhipin.com/dap/api/json*', requestStage: 'Request' },
|
|
20
|
+
{ urlPattern: '*logapi-dev.weizhipin.com/dap/api/json*', requestStage: 'Request' },
|
|
21
|
+
{ urlPattern: '*apm-fe.zhipin.com/wapi/zpApm/*', requestStage: 'Request' },
|
|
22
|
+
{ urlPattern: '*apm-fe-qa.weizhipin.com/wapi/zpApm/*', requestStage: 'Request' },
|
|
23
|
+
{ urlPattern: '*warlock.zhipin.com/wapi/warlock/*', requestStage: 'Request' },
|
|
24
|
+
{ urlPattern: '*shink.zhipin.com/wapi/dapCommon/json*', requestStage: 'Request' },
|
|
25
|
+
];
|
|
26
|
+
/**
|
|
27
|
+
* `about:blank` 是浏览器内置 URL,不会进入 CDP 网络拦截,因此不放在 Fetch.enable 模式里;
|
|
28
|
+
* 该路径只能靠页面内 Location 守卫与 framenavigated 兜底处理。
|
|
29
|
+
*/
|
|
30
|
+
const RISK_NAVIGATION_PATTERNS = [
|
|
31
|
+
{ urlPattern: '*/web/common/403.html*', requestStage: 'Request' },
|
|
32
|
+
{ urlPattern: '*/web/common/nonsupport.html*', requestStage: 'Request' },
|
|
33
|
+
{ urlPattern: '*/web/user/safe/verify*', requestStage: 'Request' },
|
|
34
|
+
{ urlPattern: '*/web/passport/zp/403.html*', requestStage: 'Request' },
|
|
35
|
+
{ urlPattern: '*/web/passport/zp/verify.html*', requestStage: 'Request' },
|
|
36
|
+
{ urlPattern: '*/web/passport/zp/security.html*', requestStage: 'Request' },
|
|
37
|
+
{ urlPattern: '*/web/passport/cm/403.html*', requestStage: 'Request' },
|
|
38
|
+
{ urlPattern: '*/web/passport/cm/verify.html*', requestStage: 'Request' },
|
|
39
|
+
{ urlPattern: '*/web/passport/cm/security-check.html*', requestStage: 'Request' },
|
|
40
|
+
];
|
|
41
|
+
const REPORT_REQUEST_RE = /(?:logapi(?:-dev)?\.(?:zhipin|weizhipin)\.com\/dap\/api\/json|apm-fe(?:-qa)?\.(?:zhipin|weizhipin)\.com\/wapi\/zpApm\/|warlock\.zhipin\.com\/wapi\/warlock\/|shink\.zhipin\.com\/wapi\/dapCommon\/json)/i;
|
|
42
|
+
const RISK_NAVIGATION_RE = /about:blank|\/web\/common\/(?:403|nonsupport)\.html|\/web\/user\/safe\/verify|\/web\/passport\/(?:zp\/(?:403|verify|security)\.html|cm\/(?:403|verify|security-check)\.html)/i;
|
|
43
|
+
const PAUSED_LABEL = {
|
|
44
|
+
report: 'report:204',
|
|
45
|
+
security_script: 'block:script',
|
|
46
|
+
risk_navigation: 'block:nav',
|
|
47
|
+
};
|
|
48
|
+
const POST_DATA_PREVIEW_LIMIT = 200;
|
|
49
|
+
function isReportRequestUrl(url) {
|
|
50
|
+
return REPORT_REQUEST_RE.test(url);
|
|
51
|
+
}
|
|
52
|
+
function isRiskNavigationUrl(url) {
|
|
53
|
+
return RISK_NAVIGATION_RE.test(url);
|
|
54
|
+
}
|
|
55
|
+
function classifyPausedRequest(url) {
|
|
56
|
+
if (REPORT_REQUEST_RE.test(url))
|
|
57
|
+
return 'report';
|
|
58
|
+
if (RISK_NAVIGATION_RE.test(url))
|
|
59
|
+
return 'risk_navigation';
|
|
60
|
+
// 落到这里的都是命中 BLOCKED_SECURITY_SCRIPT_PATTERNS 的请求;不再做 fallback 判定,
|
|
61
|
+
// 一旦后续新增 patterns 但忘记同步分类正则,调用方能立刻发现而不是被静默归错类。
|
|
62
|
+
return 'security_script';
|
|
63
|
+
}
|
|
64
|
+
function previewPostData(raw) {
|
|
65
|
+
if (!raw)
|
|
66
|
+
return '';
|
|
67
|
+
const compact = raw.replace(/\s+/g, ' ').trim();
|
|
68
|
+
if (!compact)
|
|
69
|
+
return '';
|
|
70
|
+
return compact.length > POST_DATA_PREVIEW_LIMIT
|
|
71
|
+
? `${compact.slice(0, POST_DATA_PREVIEW_LIMIT)}…`
|
|
72
|
+
: compact;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* 把一行诊断信息打到 **页面 DevTools Console**(不进 Node stderr / stdout)。
|
|
76
|
+
*
|
|
77
|
+
* 走 CDP `Runtime.evaluate` 直接在页面默认执行上下文调 `console.info`:
|
|
78
|
+
* - 终端输出完全保持干净,对非交互命令(list / recommend / chat 管道)无副作用。
|
|
79
|
+
* - 只有用户主动打开 DevTools Console 才能看到,匹配 "排查时才需要" 的语义。
|
|
80
|
+
* - 极早期请求(Runtime 上下文尚未创建)会失败,silently 忽略——拦截动作本身不依赖此日志。
|
|
81
|
+
*
|
|
82
|
+
* 注意:本函数会经过页面里 §5 的 `console.info` 包装(字符串参数原样通过),
|
|
83
|
+
* 不会触发 V8 inspector 的对象序列化慢路径,对 DevTools 时间差检测无影响。
|
|
84
|
+
*/
|
|
85
|
+
function logToPageConsole(cdp, message) {
|
|
86
|
+
void cdp
|
|
87
|
+
.send('Runtime.evaluate', {
|
|
88
|
+
expression: `console.info(${JSON.stringify(message)})`,
|
|
89
|
+
awaitPromise: false,
|
|
90
|
+
returnByValue: true,
|
|
91
|
+
})
|
|
92
|
+
.catch(() => {
|
|
93
|
+
/* 页面无可用执行上下文(极早期 / 卸载中)时丢弃此条日志即可 */
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function readRequestHeader(headers, name) {
|
|
97
|
+
const lowerName = name.toLowerCase();
|
|
98
|
+
const entry = Object.entries(headers).find(([key]) => key.toLowerCase() === lowerName);
|
|
99
|
+
return entry?.[1];
|
|
100
|
+
}
|
|
101
|
+
function buildNoContentResponseHeaders(headers) {
|
|
102
|
+
const origin = readRequestHeader(headers, 'origin') ?? 'https://www.zhipin.com';
|
|
103
|
+
const requestedHeaders = readRequestHeader(headers, 'access-control-request-headers') ??
|
|
104
|
+
'content-type,x-requested-with,traceid,zp_token,__zp_stoken__';
|
|
105
|
+
return [
|
|
106
|
+
{ name: 'access-control-allow-origin', value: origin },
|
|
107
|
+
{ name: 'access-control-allow-credentials', value: 'true' },
|
|
108
|
+
{ name: 'access-control-allow-methods', value: 'GET,POST,PUT,PATCH,DELETE,OPTIONS' },
|
|
109
|
+
{ name: 'access-control-allow-headers', value: requestedHeaders },
|
|
110
|
+
{ name: 'cache-control', value: 'no-store' },
|
|
111
|
+
];
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* 守卫脚本设计要点:
|
|
115
|
+
* - 不在 `window` 上挂任何 Symbol/字符串自描述属性,避免成为指纹。
|
|
116
|
+
* - 替换的方法保留 `name`,并通过包装后的 `Function.prototype.toString` 让 `fn.toString()` 返回原生形态。
|
|
117
|
+
* - 改写的 accessor / 方法尽量落在 prototype 上,descriptor 形态对齐原生(`configurable: true`)。
|
|
118
|
+
* - 对 `Location.prototype.href` 的 setter 也加拦截,覆盖 `location.href = ...` 直接赋值场景。
|
|
119
|
+
* - 不再伪造 `navigator.plugins` 与 `window.chrome.*`:现代 Chrome 默认值已经合理,伪造反而会被
|
|
120
|
+
* `instanceof PluginArray`、对象形态比对等检测一眼分辨。
|
|
121
|
+
* - 不再覆盖 `window.closed`:`close()` 已经被改写为 noop,`closed` 自然保持原生默认值。
|
|
122
|
+
*/
|
|
123
|
+
const BOSS_PAGE_GUARD_SCRIPT_TEMPLATE = `(function() {
|
|
124
|
+
'use strict';
|
|
125
|
+
|
|
126
|
+
var _Object = Object;
|
|
127
|
+
var _defineProperty = _Object.defineProperty;
|
|
128
|
+
var _getOwnPropertyDescriptor = _Object.getOwnPropertyDescriptor;
|
|
129
|
+
var _Function = Function;
|
|
130
|
+
var _origFunctionToString = _Function.prototype.toString;
|
|
131
|
+
var _String = String;
|
|
132
|
+
var _Map = Map;
|
|
133
|
+
|
|
134
|
+
/** 让我们包装的函数对 fn.toString() 返回 "function NAME() { [native code] }"。 */
|
|
135
|
+
var nativeSourceMap = new _Map();
|
|
136
|
+
var fakeToString = function toString() {
|
|
137
|
+
if (this != null) {
|
|
138
|
+
var mapped = nativeSourceMap.get(this);
|
|
139
|
+
if (typeof mapped === 'string') return mapped;
|
|
140
|
+
}
|
|
141
|
+
return _origFunctionToString.call(this);
|
|
142
|
+
};
|
|
143
|
+
nativeSourceMap.set(fakeToString, 'function toString() { [native code] }');
|
|
144
|
+
try {
|
|
145
|
+
_defineProperty(_Function.prototype, 'toString', {
|
|
146
|
+
value: fakeToString,
|
|
147
|
+
writable: true,
|
|
148
|
+
configurable: true,
|
|
149
|
+
enumerable: false,
|
|
150
|
+
});
|
|
151
|
+
} catch (e) {}
|
|
152
|
+
|
|
153
|
+
/** 包装替身函数:把它伪装成 "function NAME() { [native code] }"。 */
|
|
154
|
+
var asNative = function(replacement, nativeName) {
|
|
155
|
+
var src = 'function ' + nativeName + '() { [native code] }';
|
|
156
|
+
nativeSourceMap.set(replacement, src);
|
|
157
|
+
try {
|
|
158
|
+
_defineProperty(replacement, 'name', {
|
|
159
|
+
value: nativeName,
|
|
160
|
+
writable: false,
|
|
161
|
+
configurable: true,
|
|
162
|
+
enumerable: false,
|
|
163
|
+
});
|
|
164
|
+
} catch (e) {}
|
|
165
|
+
return replacement;
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
/** 替换 prototype 上的方法(保持原 descriptor 形态:默认 configurable+writable)。 */
|
|
169
|
+
var replaceProtoMethod = function(proto, key, replacement) {
|
|
170
|
+
try {
|
|
171
|
+
var desc = _getOwnPropertyDescriptor(proto, key);
|
|
172
|
+
if (!desc) return null;
|
|
173
|
+
if (!desc.configurable) return null;
|
|
174
|
+
_defineProperty(proto, key, {
|
|
175
|
+
value: replacement,
|
|
176
|
+
writable: 'writable' in desc ? !!desc.writable : true,
|
|
177
|
+
configurable: true,
|
|
178
|
+
enumerable: !!desc.enumerable,
|
|
179
|
+
});
|
|
180
|
+
return desc.value;
|
|
181
|
+
} catch (e) {
|
|
182
|
+
return null;
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
/** 改写 prototype 上的 accessor:仅替换 getter/setter,保留 configurable/enumerable 形态。 */
|
|
187
|
+
var replaceProtoAccessor = function(proto, key, options) {
|
|
188
|
+
try {
|
|
189
|
+
var desc = _getOwnPropertyDescriptor(proto, key);
|
|
190
|
+
if (!desc || !desc.configurable) return null;
|
|
191
|
+
var nextDesc = {
|
|
192
|
+
configurable: true,
|
|
193
|
+
enumerable: !!desc.enumerable,
|
|
194
|
+
};
|
|
195
|
+
if (options.get || desc.get) nextDesc.get = options.get || desc.get;
|
|
196
|
+
if (options.set || desc.set) nextDesc.set = options.set || desc.set;
|
|
197
|
+
_defineProperty(proto, key, nextDesc);
|
|
198
|
+
return desc;
|
|
199
|
+
} catch (e) {
|
|
200
|
+
return null;
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
// ===== navigator.webdriver:在 Navigator.prototype 上覆盖 getter,保持 accessor 形态 =====
|
|
205
|
+
try {
|
|
206
|
+
var navProto = Object.getPrototypeOf(navigator);
|
|
207
|
+
if (navProto) {
|
|
208
|
+
replaceProtoAccessor(navProto, 'webdriver', {
|
|
209
|
+
get: asNative(function() { return false; }, 'get webdriver'),
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
} catch (e) {}
|
|
213
|
+
|
|
214
|
+
// ===== navigator.languages:仅在为空时回填,使用 prototype getter =====
|
|
215
|
+
try {
|
|
216
|
+
if (!navigator.languages || navigator.languages.length === 0) {
|
|
217
|
+
var navProto2 = Object.getPrototypeOf(navigator);
|
|
218
|
+
if (navProto2) {
|
|
219
|
+
var langs = ['zh-CN', 'zh', 'en'];
|
|
220
|
+
replaceProtoAccessor(navProto2, 'languages', {
|
|
221
|
+
get: asNative(function() { return langs; }, 'get languages'),
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
} catch (e) {}
|
|
226
|
+
|
|
227
|
+
// ===== window.close:改为空函数(保留 native 形态)=====
|
|
228
|
+
try {
|
|
229
|
+
var winProto = Object.getPrototypeOf(window);
|
|
230
|
+
if (winProto) {
|
|
231
|
+
replaceProtoMethod(winProto, 'close', asNative(function close() {}, 'close'));
|
|
232
|
+
}
|
|
233
|
+
} catch (e) {}
|
|
234
|
+
|
|
235
|
+
// ===== history.back / forward / go =====
|
|
236
|
+
try {
|
|
237
|
+
var historyProto = Object.getPrototypeOf(history);
|
|
238
|
+
if (historyProto) {
|
|
239
|
+
var origGo = historyProto.go;
|
|
240
|
+
replaceProtoMethod(historyProto, 'back', asNative(function back() {}, 'back'));
|
|
241
|
+
replaceProtoMethod(historyProto, 'forward', asNative(function forward() {}, 'forward'));
|
|
242
|
+
replaceProtoMethod(historyProto, 'go', asNative(function go(n) {
|
|
243
|
+
if (typeof n === 'number' && n < 0) return undefined;
|
|
244
|
+
return origGo.call(this, n);
|
|
245
|
+
}, 'go'));
|
|
246
|
+
}
|
|
247
|
+
} catch (e) {}
|
|
248
|
+
|
|
249
|
+
// ===== Location.assign / replace / href setter =====
|
|
250
|
+
var BLOCK_PATH = /\\/web\\/common\\/(?:403|nonsupport)\\.html|\\/web\\/user\\/safe\\/verify|\\/web\\/passport\\/(?:zp\\/(?:403|verify|security)\\.html|cm\\/(?:403|verify|security-check)\\.html)/i;
|
|
251
|
+
var isBlockedTarget = function(value) {
|
|
252
|
+
var s = _String(value);
|
|
253
|
+
if (s === 'about:blank') return true;
|
|
254
|
+
return BLOCK_PATH.test(s);
|
|
255
|
+
};
|
|
256
|
+
try {
|
|
257
|
+
var locProto = Location.prototype;
|
|
258
|
+
var origAssign = locProto.assign;
|
|
259
|
+
var origReplace = locProto.replace;
|
|
260
|
+
replaceProtoMethod(locProto, 'assign', asNative(function assign(url) {
|
|
261
|
+
if (isBlockedTarget(url)) return undefined;
|
|
262
|
+
return origAssign.call(this, url);
|
|
263
|
+
}, 'assign'));
|
|
264
|
+
replaceProtoMethod(locProto, 'replace', asNative(function replace(url) {
|
|
265
|
+
if (isBlockedTarget(url)) return undefined;
|
|
266
|
+
return origReplace.call(this, url);
|
|
267
|
+
}, 'replace'));
|
|
268
|
+
|
|
269
|
+
var hrefDesc = _getOwnPropertyDescriptor(locProto, 'href');
|
|
270
|
+
if (hrefDesc && hrefDesc.configurable && hrefDesc.set) {
|
|
271
|
+
var origHrefSet = hrefDesc.set;
|
|
272
|
+
_defineProperty(locProto, 'href', {
|
|
273
|
+
get: hrefDesc.get,
|
|
274
|
+
set: asNative(function(value) {
|
|
275
|
+
if (isBlockedTarget(value)) return undefined;
|
|
276
|
+
return origHrefSet.call(this, value);
|
|
277
|
+
}, 'set href'),
|
|
278
|
+
configurable: true,
|
|
279
|
+
enumerable: !!hrefDesc.enumerable,
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
} catch (e) {}
|
|
283
|
+
|
|
284
|
+
// ===== beforeunload / unload:阻止破坏性卸载 =====
|
|
285
|
+
try {
|
|
286
|
+
var stopUnload = function(e) {
|
|
287
|
+
if (!e) return;
|
|
288
|
+
try { e.preventDefault(); } catch (_) {}
|
|
289
|
+
try { e.returnValue = ''; } catch (_) {}
|
|
290
|
+
};
|
|
291
|
+
window.addEventListener('beforeunload', stopUnload);
|
|
292
|
+
window.addEventListener('unload', stopUnload, true);
|
|
293
|
+
} catch (e) {}
|
|
294
|
+
|
|
295
|
+
// ===== console.clear:可选替身,原生形态空函数 =====
|
|
296
|
+
if (!__SHOULD_ALLOW_CONSOLE_CLEAR__) {
|
|
297
|
+
try {
|
|
298
|
+
var consoleProtoForClear = Object.getPrototypeOf(console);
|
|
299
|
+
var ownClearDesc = Object.getOwnPropertyDescriptor(console, 'clear');
|
|
300
|
+
var protoClearDesc = consoleProtoForClear
|
|
301
|
+
? _getOwnPropertyDescriptor(consoleProtoForClear, 'clear')
|
|
302
|
+
: null;
|
|
303
|
+
var clearSrcDesc = ownClearDesc || protoClearDesc;
|
|
304
|
+
if (clearSrcDesc && typeof clearSrcDesc.value === 'function') {
|
|
305
|
+
try {
|
|
306
|
+
_defineProperty(console, 'clear', {
|
|
307
|
+
value: asNative(function clear() {}, 'clear'),
|
|
308
|
+
writable: 'writable' in clearSrcDesc ? clearSrcDesc.writable !== false : true,
|
|
309
|
+
configurable: true,
|
|
310
|
+
enumerable: !!clearSrcDesc.enumerable,
|
|
311
|
+
});
|
|
312
|
+
} catch (_) {}
|
|
313
|
+
}
|
|
314
|
+
} catch (e) {}
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
// ===== console 时间差探测对抗 =====
|
|
318
|
+
// 主包用 \`console.log\` / \`console.table\` 重复打印大对象(典型:50 次 × 0..500 数组),
|
|
319
|
+
// 比较前后 \`performance.now()\`,DevTools 打开时 V8 inspector 会把对象逐一序列化送去,
|
|
320
|
+
// 耗时显著上升即判定 DevTools 打开。对抗手段:把所有对象参数在我们这层先归一化为
|
|
321
|
+
// \`[object Type]\` 这种 O(1) 字符串再交给原生方法,inspector 序列化路径只看到短字符串,
|
|
322
|
+
// 耗时不再随 DevTools 状态变化。代价:DevTools 控制台中对象会显示成 \`[object Type]\`,
|
|
323
|
+
// 失去对象树展开 UX;断点 / Watch / Sources / 调用栈不受影响。
|
|
324
|
+
if (!__SHOULD_ALLOW_VERBOSE_CONSOLE__) {
|
|
325
|
+
try {
|
|
326
|
+
var _objToString = Object.prototype.toString;
|
|
327
|
+
var sanitizeArgs = function(rawArgs) {
|
|
328
|
+
var len = rawArgs.length;
|
|
329
|
+
var out = new Array(len);
|
|
330
|
+
for (var i = 0; i < len; i++) {
|
|
331
|
+
var a = rawArgs[i];
|
|
332
|
+
if (a !== null && typeof a === 'object') {
|
|
333
|
+
try {
|
|
334
|
+
out[i] = _objToString.call(a);
|
|
335
|
+
} catch (_) {
|
|
336
|
+
out[i] = '[object Object]';
|
|
337
|
+
}
|
|
338
|
+
} else if (typeof a === 'function') {
|
|
339
|
+
// 函数也别交给 inspector,避免 toString 串走慢路径
|
|
340
|
+
out[i] = '[Function: ' + (a.name || 'anonymous') + ']';
|
|
341
|
+
} else {
|
|
342
|
+
out[i] = a;
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
return out;
|
|
346
|
+
};
|
|
347
|
+
var consoleProtoForLog = Object.getPrototypeOf(console);
|
|
348
|
+
var consoleMethodNames = [
|
|
349
|
+
'log', 'info', 'debug', 'warn', 'error',
|
|
350
|
+
'table', 'dir', 'dirxml', 'trace',
|
|
351
|
+
'group', 'groupCollapsed',
|
|
352
|
+
];
|
|
353
|
+
for (var ci = 0; ci < consoleMethodNames.length; ci++) {
|
|
354
|
+
(function(method) {
|
|
355
|
+
// Chrome 把这些方法挂在 console 实例的 own property 上;
|
|
356
|
+
// 部分浏览器(含历史 Firefox)会挂在 Console.prototype 上。
|
|
357
|
+
// 优先取 own,否则退回 prototype;patch 一律 define 到实例上,
|
|
358
|
+
// 这样既能覆盖 own 写法,又能在 prototype 形态下 shadow 掉原方法。
|
|
359
|
+
var ownDesc = Object.getOwnPropertyDescriptor(console, method);
|
|
360
|
+
var protoDesc = consoleProtoForLog
|
|
361
|
+
? _getOwnPropertyDescriptor(consoleProtoForLog, method)
|
|
362
|
+
: null;
|
|
363
|
+
var srcDesc = ownDesc || protoDesc;
|
|
364
|
+
if (!srcDesc || typeof srcDesc.value !== 'function') return;
|
|
365
|
+
var orig = srcDesc.value;
|
|
366
|
+
var wrapped = asNative(function() {
|
|
367
|
+
return orig.apply(this, sanitizeArgs(arguments));
|
|
368
|
+
}, method);
|
|
369
|
+
try {
|
|
370
|
+
_defineProperty(console, method, {
|
|
371
|
+
value: wrapped,
|
|
372
|
+
writable: 'writable' in srcDesc ? srcDesc.writable !== false : true,
|
|
373
|
+
configurable: true,
|
|
374
|
+
enumerable: !!srcDesc.enumerable,
|
|
375
|
+
});
|
|
376
|
+
} catch (_) {}
|
|
377
|
+
})(consoleMethodNames[ci]);
|
|
378
|
+
}
|
|
379
|
+
} catch (e) {}
|
|
380
|
+
}
|
|
381
|
+
})();`;
|
|
382
|
+
function buildPageGuardScript() {
|
|
383
|
+
return BOSS_PAGE_GUARD_SCRIPT_TEMPLATE
|
|
384
|
+
.replace('__SHOULD_ALLOW_CONSOLE_CLEAR__', SHOULD_ALLOW_CONSOLE_CLEAR ? 'true' : 'false')
|
|
385
|
+
.replace('__SHOULD_ALLOW_VERBOSE_CONSOLE__', SHOULD_ALLOW_VERBOSE_CONSOLE ? 'true' : 'false');
|
|
386
|
+
}
|
|
387
|
+
const browsersWithTargetGuard = new WeakSet();
|
|
388
|
+
const pagesWithInitGuard = new WeakSet();
|
|
389
|
+
const pagesWithNavigationGuard = new WeakSet();
|
|
390
|
+
const pagesWithRequestGuard = new WeakSet();
|
|
391
|
+
async function ensurePageInitGuard(page) {
|
|
392
|
+
if (pagesWithInitGuard.has(page))
|
|
393
|
+
return;
|
|
394
|
+
const script = buildPageGuardScript();
|
|
395
|
+
// 走 puppeteer 的 evaluateOnNewDocument:内部会把脚本同步注册到主 frame CDP session,
|
|
396
|
+
// 并在 OOPIF/iframe target 通过 `onAttachedToTarget` attach 时再次 addScript,
|
|
397
|
+
// 因此可以覆盖隐藏 iframe 反检测对照场景。
|
|
398
|
+
await page.evaluateOnNewDocument(script);
|
|
399
|
+
// 当前文档已在加载中或已加载完成时,evaluateOnNewDocument 不会回溯执行;
|
|
400
|
+
// 这里对当前主 frame 直接注入一次,让幂等的 try/catch 守卫立即生效。
|
|
401
|
+
await page.evaluate(script).catch(() => {
|
|
402
|
+
/* 当前文档可能还没创建执行上下文,由后续 navigation 触发 evaluateOnNewDocument 即可 */
|
|
403
|
+
});
|
|
404
|
+
pagesWithInitGuard.add(page);
|
|
405
|
+
}
|
|
406
|
+
function ensurePageNavigationGuard(page) {
|
|
407
|
+
if (pagesWithNavigationGuard.has(page))
|
|
408
|
+
return;
|
|
409
|
+
page.on('framenavigated', (frame) => {
|
|
410
|
+
if (frame !== page.mainFrame())
|
|
411
|
+
return;
|
|
412
|
+
const url = frame.url();
|
|
413
|
+
if (!isRiskNavigationUrl(url))
|
|
414
|
+
return;
|
|
415
|
+
void page.goto(BOSS_CHAT_INDEX_URL, { waitUntil: 'load', timeout: 60_000 }).catch(() => {
|
|
416
|
+
console.error(`[boss-cli] 风险页导航恢复失败:${url}`);
|
|
417
|
+
});
|
|
418
|
+
});
|
|
419
|
+
pagesWithNavigationGuard.add(page);
|
|
420
|
+
}
|
|
421
|
+
async function ensurePageRequestGuard(page) {
|
|
422
|
+
if (pagesWithRequestGuard.has(page))
|
|
423
|
+
return;
|
|
424
|
+
const cdp = await page.createCDPSession();
|
|
425
|
+
await cdp.send('Network.setCacheDisabled', { cacheDisabled: true });
|
|
426
|
+
await cdp.send('Fetch.enable', {
|
|
427
|
+
patterns: [
|
|
428
|
+
...BLOCKED_SECURITY_SCRIPT_PATTERNS,
|
|
429
|
+
...REPORT_REQUEST_PATTERNS,
|
|
430
|
+
...RISK_NAVIGATION_PATTERNS,
|
|
431
|
+
],
|
|
432
|
+
});
|
|
433
|
+
cdp.on('Fetch.requestPaused', (params) => {
|
|
434
|
+
const url = params.request.url;
|
|
435
|
+
const method = params.request.method;
|
|
436
|
+
const kind = classifyPausedRequest(url);
|
|
437
|
+
const label = PAUSED_LABEL[kind];
|
|
438
|
+
// 命中即记录到 **页面 DevTools Console**(不污染终端输出)。
|
|
439
|
+
if (kind === 'report') {
|
|
440
|
+
const body = previewPostData(params.request.postData);
|
|
441
|
+
logToPageConsole(cdp, body
|
|
442
|
+
? `[boss-cli][${label}] ${method} ${url} body=${body}`
|
|
443
|
+
: `[boss-cli][${label}] ${method} ${url}`);
|
|
444
|
+
void cdp
|
|
445
|
+
.send('Fetch.fulfillRequest', {
|
|
446
|
+
requestId: params.requestId,
|
|
447
|
+
responseCode: 204,
|
|
448
|
+
responsePhrase: 'No Content',
|
|
449
|
+
responseHeaders: buildNoContentResponseHeaders(params.request.headers),
|
|
450
|
+
})
|
|
451
|
+
.catch(() => {
|
|
452
|
+
// CDP send 本身失败属于真实 ops 异常,仍然报到 Node stderr,方便外层定位。
|
|
453
|
+
console.error(`[boss-cli] 日志上报请求拦截响应失败:${url}`);
|
|
454
|
+
});
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
457
|
+
logToPageConsole(cdp, `[boss-cli][${label}] ${method} ${url}`);
|
|
458
|
+
void cdp
|
|
459
|
+
.send('Fetch.failRequest', {
|
|
460
|
+
requestId: params.requestId,
|
|
461
|
+
errorReason: 'BlockedByClient',
|
|
462
|
+
})
|
|
463
|
+
.catch(() => {
|
|
464
|
+
console.error(`[boss-cli] 风险请求阻断失败:${url}`);
|
|
465
|
+
});
|
|
466
|
+
});
|
|
467
|
+
pagesWithRequestGuard.add(page);
|
|
468
|
+
}
|
|
469
|
+
export async function installBossPageGuards(page) {
|
|
470
|
+
if (page.isClosed())
|
|
471
|
+
return;
|
|
472
|
+
await ensurePageInitGuard(page);
|
|
473
|
+
ensurePageNavigationGuard(page);
|
|
474
|
+
await ensurePageRequestGuard(page);
|
|
475
|
+
}
|
|
476
|
+
async function installTargetPageGuards(target) {
|
|
477
|
+
if (target.type() !== 'page')
|
|
478
|
+
return;
|
|
479
|
+
const page = await target.page();
|
|
480
|
+
if (!page || page.isClosed())
|
|
481
|
+
return;
|
|
482
|
+
await installBossPageGuards(page);
|
|
483
|
+
}
|
|
484
|
+
export async function installBossBrowserPageGuards(browser) {
|
|
485
|
+
if (!browsersWithTargetGuard.has(browser)) {
|
|
486
|
+
browser.on('targetcreated', (target) => {
|
|
487
|
+
void installTargetPageGuards(target).catch((e) => {
|
|
488
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
489
|
+
console.error(`[boss-cli] 新页面防护安装失败:${msg}`);
|
|
490
|
+
});
|
|
491
|
+
});
|
|
492
|
+
browsersWithTargetGuard.add(browser);
|
|
493
|
+
}
|
|
494
|
+
const pages = (await browser.pages()).filter((p) => !p.isClosed());
|
|
495
|
+
for (const page of pages) {
|
|
496
|
+
await installBossPageGuards(page);
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
//# sourceMappingURL=boss_page_guards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boss_page_guards.js","sourceRoot":"","sources":["../../src/common/boss_page_guards.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { Page } from 'puppeteer-core';
|
|
6
6
|
/**
|
|
7
7
|
* 在已连接浏览器、且当前页为 Boss 已登录主壳(含侧栏 `.menu-list` 稳定)的前提下执行回调。
|
|
8
|
-
*
|
|
8
|
+
* 会先按 URL 确保落在沟通页 `/web/chat/index`,再校验侧栏;回调内可再导航到职位/推荐等业务路由。
|
|
9
9
|
*/
|
|
10
10
|
export declare function withBossSessionPage<T>(callback: (page: Page) => Promise<T>): Promise<T>;
|
|
11
11
|
//# sourceMappingURL=boss_session_page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boss_session_page.d.ts","sourceRoot":"","sources":["../../src/common/boss_session_page.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"boss_session_page.d.ts","sourceRoot":"","sources":["../../src/common/boss_session_page.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAsIpD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA0D7F"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { BOSS_CHAT_INDEX_URL,
|
|
1
|
+
import { BOSS_CHAT_INDEX_URL, isBossChatIndexUrl } from './auth.js';
|
|
2
2
|
import { hideAgentOperatingIndicator, showAgentOperatingIndicator, } from '../browser/agent_operating_indicator.js';
|
|
3
3
|
import { ensureBrowserSession, getBrowserRef, getPageRef, setSessionPage, } from '../browser/browser_session.js';
|
|
4
4
|
import { CONTEXT_DESTROY_RETRY_MS } from '../browser/human_delay.js';
|
|
5
5
|
import { sleepRandom } from '../browser/timing.js';
|
|
6
|
+
import { installBossPageGuards } from './boss_page_guards.js';
|
|
6
7
|
const SHOULD_DISABLE_JS = process.env.BOSS_BROWSER_DISABLE_JS === 'true' || process.env.BOSS_BROWSER_DISABLE_JS === '1';
|
|
7
8
|
/** 设为 `1` / `true` 时不注入顶栏滚动提示(调试或截图对比用)。 */
|
|
8
9
|
const SKIP_AGENT_OPERATING_OVERLAY = process.env.BOSS_CLI_NO_AGENT_OVERLAY === '1' ||
|
|
@@ -53,9 +54,9 @@ async function readMenuListSnapshot(page) {
|
|
|
53
54
|
return { exists: true, signature: entries.join("|") };
|
|
54
55
|
})()`));
|
|
55
56
|
}
|
|
56
|
-
/**
|
|
57
|
-
async function
|
|
58
|
-
if (
|
|
57
|
+
/** 先按 URL 判断:非 `/web/chat/index` 则进入沟通页,再交由 {@link ensureMenuListStableAfterLoad} 查 `.menu-list` */
|
|
58
|
+
async function ensureBossChatIndexUrlBeforeMenuList(page) {
|
|
59
|
+
if (isBossChatIndexUrl(page.url())) {
|
|
59
60
|
return;
|
|
60
61
|
}
|
|
61
62
|
await page.goto(BOSS_CHAT_INDEX_URL, { waitUntil: 'load', timeout: 60_000 });
|
|
@@ -87,17 +88,14 @@ async function ensureMenuListStableAfterLoad(page) {
|
|
|
87
88
|
while (Date.now() < deadline) {
|
|
88
89
|
await sleepRandom(pollMs, pollMs);
|
|
89
90
|
const snap = await readMenuListSnapshot(page);
|
|
90
|
-
if (!snap.exists) {
|
|
91
|
-
throw new Error('
|
|
92
|
-
}
|
|
93
|
-
if (snap.signature !== expected) {
|
|
94
|
-
throw new Error('页面中的 .menu-list 在 3 秒稳定检测内发生变化,疑似页面仍在重定向或刷新。');
|
|
91
|
+
if (!snap.exists || snap.signature !== expected) {
|
|
92
|
+
throw new Error('登录状态校验失败,页面可能还未登录,请登录后再试');
|
|
95
93
|
}
|
|
96
94
|
}
|
|
97
95
|
}
|
|
98
96
|
/**
|
|
99
97
|
* 在已连接浏览器、且当前页为 Boss 已登录主壳(含侧栏 `.menu-list` 稳定)的前提下执行回调。
|
|
100
|
-
*
|
|
98
|
+
* 会先按 URL 确保落在沟通页 `/web/chat/index`,再校验侧栏;回调内可再导航到职位/推荐等业务路由。
|
|
101
99
|
*/
|
|
102
100
|
export async function withBossSessionPage(callback) {
|
|
103
101
|
const isContextDestroyed = (e) => {
|
|
@@ -121,7 +119,8 @@ export async function withBossSessionPage(callback) {
|
|
|
121
119
|
}
|
|
122
120
|
setSessionPage(page);
|
|
123
121
|
await page.bringToFront();
|
|
124
|
-
await
|
|
122
|
+
await installBossPageGuards(page);
|
|
123
|
+
await ensureBossChatIndexUrlBeforeMenuList(page);
|
|
125
124
|
if (SHOULD_DISABLE_JS) {
|
|
126
125
|
await page.setJavaScriptEnabled(false);
|
|
127
126
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boss_session_page.js","sourceRoot":"","sources":["../../src/common/boss_session_page.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"boss_session_page.js","sourceRoot":"","sources":["../../src/common/boss_session_page.ts"],"names":[],"mappings":"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"}
|