@viyzhu/boss-cli-fork 0.7.2 → 0.8.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/AGENTS.md +55 -0
- package/README.md +64 -2
- package/dist/browser/cdp_browser.d.ts +56 -0
- package/dist/browser/cdp_browser.d.ts.map +1 -1
- package/dist/browser/cdp_browser.js +198 -3
- package/dist/browser/cdp_browser.js.map +1 -1
- package/dist/cli/cliRouter.d.ts.map +1 -1
- package/dist/cli/cliRouter.js +61 -9
- package/dist/cli/cliRouter.js.map +1 -1
- package/dist/toolset/index.d.ts +4 -1
- package/dist/toolset/index.d.ts.map +1 -1
- package/dist/toolset/index.js +3 -2
- package/dist/toolset/index.js.map +1 -1
- package/dist/toolset/normal-search.d.ts +167 -1
- package/dist/toolset/normal-search.d.ts.map +1 -1
- package/dist/toolset/normal-search.js +1122 -11
- package/dist/toolset/normal-search.js.map +1 -1
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -12,6 +12,35 @@
|
|
|
12
12
|
- 错误信息必须清晰、可定位,日志应包含关键上下文。
|
|
13
13
|
- 发现问题优先修复根因,不通过绕路方案规避。
|
|
14
14
|
|
|
15
|
+
### 已登记的例外(只有这一处,别再扩)
|
|
16
|
+
|
|
17
|
+
**`cdp_browser.ts` 的 `warnBreakawayUnavailable()`:WMI 拉不起浏览器时,刷屏级告警后退回普通
|
|
18
|
+
`spawn`。** 这是上面「禁止回退逻辑 / 不做静默兜底」的一处**有意例外**,删它之前先读完这段。
|
|
19
|
+
|
|
20
|
+
- **禁的是「静默」**。这里的告警是 72 字符分隔线的整块输出,含原因、影响、自查命令、缓解办法,
|
|
21
|
+
用户不可能看不见,不属于「掩盖根因」。
|
|
22
|
+
- **硬失败比退回更糟**——这是**设计论证,不依赖任何一台机器的观测**:`spawnViaWmi` 一旦硬失败,
|
|
23
|
+
`search` / `recommend` / `list` 全部不可用,用户唯一的出路是自己翻到 `BOSS_SPAWN_BREAKAWAY=false`;
|
|
24
|
+
而那个开关 = 根本不试 WMI = 必然退回普通 spawn = 把 #43 原样装回去,**还绕过了本该提醒他的告警**。
|
|
25
|
+
即:硬失败把用户推向一个比退回更坏、且更难察觉的状态。
|
|
26
|
+
权衡:退回 = 浏览器可能被连带杀掉(可恢复,重扫一次码,且有告警);硬失败 = CLI 完全不能用
|
|
27
|
+
(不可恢复,除非用户自己翻到那个环境变量,然后掉进更坏的状态)。
|
|
28
|
+
- **退回的边界很窄**:只覆盖「WMI 创建进程」这一步。进程已创建但调试端口没起来仍然硬失败——
|
|
29
|
+
那时端口上可能已有一只正在启动的 Chrome,再 spawn 一只会撞车。
|
|
30
|
+
- **回归保护**:本路径在 WMI 正常的机器上**跑不到**,所以靠 stub 测(把 powershell 换成必定失败的
|
|
31
|
+
可执行文件),见 `tests/breakaway-fallback.test.mjs`。别指望真实环境验收能覆盖它。
|
|
32
|
+
|
|
33
|
+
> **史料更正(2026-09-21)**:本节最初写的立论依据是 recruiting-copilot#43 报告人「那台机器
|
|
34
|
+
> `Invoke-CimMethod Win32_Process Create` 返回 `ReturnValue=2`」。**该观测已被报告人当日撤回**——
|
|
35
|
+
> 那是他独立探测脚本的行为,不是 boss 实际调用路径的行为;boss 自己调用 WMI 在他那台是通的
|
|
36
|
+
> (Chrome 父进程 `WmiPrvSE.exe`,活过调用边界,登录态保住)。他上午观测到的「Chrome 每次被杀」
|
|
37
|
+
> 也有一半来自他为绕开硬失败而设的 `BOSS_SPAWN_BREAKAWAY=false`。
|
|
38
|
+
> **例外本身保留**:上面那条权衡不依赖这个观测,换任何 WMI 创建被拒的环境都成立。
|
|
39
|
+
> 留这段是因为——引用一条已撤回的事实,会让整条例外在下一个人核对时失去可信度。
|
|
40
|
+
|
|
41
|
+
新增别的回退前,先确认它同时满足「告警足够响」「硬失败的代价明显更大」「退回边界能说清楚」
|
|
42
|
+
三条,并登记到本节;说不清就别加。
|
|
43
|
+
|
|
15
44
|
## 变更约束
|
|
16
45
|
|
|
17
46
|
- 小步修改,保持最小必要改动。
|
|
@@ -54,3 +83,29 @@ RECRUIT_BROWSER_HIDDEN=false boss <cmd> # 或 BOSS_BROWSER_HEADLESS=false
|
|
|
54
83
|
- 在工具代码中,避免使用 `page.evaluate(() => { ... })` / `page.waitForFunction(() => { ... })` 的函数写法。
|
|
55
84
|
- 统一改为字符串脚本写法(如 `page.evaluate("(() => { ... })()")`),避免构建后注入辅助符号导致浏览器上下文报错 `__name is not defined`。
|
|
56
85
|
- 出现 `__name is not defined` 时,优先检查最近新增的 evaluate / waitForFunction 回调并改成字符串脚本,不要加兜底掩盖问题。
|
|
86
|
+
|
|
87
|
+
### ⚠️ 字符串脚本**收不到入参**(2026-09-21 实测)
|
|
88
|
+
|
|
89
|
+
上面这条约束有个配套陷阱:**`evaluate(字符串, 入参)` 的入参会被静默丢弃**。puppeteer 对字符串形式的
|
|
90
|
+
pageFunction 是直接 `Runtime.evaluate` 当表达式求值的,压根不走 `callFunctionOn`,后面的参数无处可去。
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
await frame.evaluate(`((x) => ({ got: x }))`, 'HELLO'); // → {} ,不是 { got: 'HELLO' }
|
|
94
|
+
await frame.waitForFunction(`((x) => x === "NEVER")`, { timeout: 3000 }, 'NO'); // → 6ms 就通过
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
两种后果都很阴:`evaluate` 拿到的是**函数对象**(`{}`,所有 `r.ok` 判断恒假);`waitForFunction`
|
|
98
|
+
的判据是**函数对象**(恒真,等待变空转)。两者都不报错。
|
|
99
|
+
|
|
100
|
+
**唯一正确写法:把值 `JSON.stringify` 内联进脚本字符串。**
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
await frame.evaluate(`(() => ({ got: ${JSON.stringify(value)} }))()`);
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
`normal-search.ts` 的三处已按此修正(关键词回填校验、岗位切换校验、城市选项匹配——城市那处
|
|
107
|
+
是功能性坏掉:`picked` 恒为 `{}`,每次都报「查无此项」)。
|
|
108
|
+
|
|
109
|
+
**以下位置仍是旧写法,还没修**(都在本次改动范围外,动它们前要在真实页面上重新验收,因为把空转的
|
|
110
|
+
等待改成真等待可能暴露出新的超时):`common/boss_sidebar_nav.ts:46`、`toolset/action.ts:392`、
|
|
111
|
+
`toolset/deep-search.ts:1271` 与 `:1283`、`toolset/recommend.ts:123` 与 `:135`。
|
package/README.md
CHANGED
|
@@ -90,7 +90,7 @@ npm install -g https://github.com/Viy1204/boss-cli/archive/refs/heads/main.tar.g
|
|
|
90
90
|
| `boss send [--text <内容>]` | 向当前会话发送消息 |
|
|
91
91
|
| `boss action <操作>` | 索要简历 / 不合适 / 备注 / 交换微信等 |
|
|
92
92
|
| `boss recommend [岗位关键字]` | 读取推荐候选人列表 |
|
|
93
|
-
| `boss search [关键词]` |
|
|
93
|
+
| `boss search [关键词] [--job] [--city] [--degree(-range)] [--school] [--exp(-range)] [--age(-range)] [--status] [--job-hop] [--major]` | 常规搜索牛人列表,可带城市 / 学历 / 院校 / 经验 / 年龄 / 求职状态 / 跳槽频率 / 专业筛选(见下方「搜索筛选条件」) |
|
|
94
94
|
| `boss greet <姓名> [--job <岗位>]` | 在当前推荐/深度搜索页对候选人打招呼(不会自动跳转) |
|
|
95
95
|
| `boss preview <姓名>` | 在线简历预览(每日次数有限) |
|
|
96
96
|
| `boss deep-search [岗位关键字] [--core <要求>] [--bonus <加分项>] [--clear-core] [--clear-bonus] [--match]` | 深度搜索表单状态;`--core` / `--bonus` 可重复,并按传入列表同步分组;`--clear-*` 清空分组;默认不输出候选列表,`--match` 输出最新 20 条 |
|
|
@@ -122,8 +122,11 @@ boss chat 张三 --index 2 --unread --strict
|
|
|
122
122
|
boss recommend 前端工程师
|
|
123
123
|
boss greet 张三 --job 前端工程师
|
|
124
124
|
|
|
125
|
-
# 5.
|
|
125
|
+
# 5. 常规搜索牛人(可带筛选)
|
|
126
126
|
boss search "langgraph"
|
|
127
|
+
boss search "短视频" --city 深圳 --school 统招本科
|
|
128
|
+
boss search "投放" --job 数字广告 --degree 本科及以上
|
|
129
|
+
boss search "剪辑" --status 离职-随时到岗 --major 计算机科学与技术
|
|
127
130
|
|
|
128
131
|
# 6. 深度搜索:按传入列表同步分组条件,但不消耗匹配次数
|
|
129
132
|
boss deep-search --core "AI产品经理" --core "做过 RAG 或 Agent 产品落地" --bonus "有 ToB 平台经验"
|
|
@@ -134,6 +137,65 @@ boss deep-search --match
|
|
|
134
137
|
|
|
135
138
|
---
|
|
136
139
|
|
|
140
|
+
## 搜索筛选条件
|
|
141
|
+
|
|
142
|
+
`boss search` 可以把平台自带的筛选条件一起设好再搜,省掉「搜出一大堆再人工剔」。
|
|
143
|
+
|
|
144
|
+
**每次 `boss search` 都会先点一次「清空筛选」**,再按本次参数重设。也就是说:这一轮生效的条件
|
|
145
|
+
只有你这条命令里写的,上一条命令设过的不会粘下来。
|
|
146
|
+
|
|
147
|
+
| 参数 | 说明 |
|
|
148
|
+
|---|---|
|
|
149
|
+
| `--job <岗位关键字>` | 岗位下拉里模糊匹配并切换。**不传则切「不限职位」** |
|
|
150
|
+
| `--city <城市>` | 如 `--city 深圳`。不传则读 `BOSS_SEARCH_CITY`,仍为空就不碰城市控件 |
|
|
151
|
+
| `--degree <学历>` | 不限 / 本科及以上 / 硕士及以上 / 博士 |
|
|
152
|
+
| `--school <院校要求>` | 统招本科 / 双一流院校 / 211院校 / 985院校 / 留学生 / QS 100 / QS 500 / 只看第一学历。多选用逗号分隔,中英文逗号都认 |
|
|
153
|
+
| `--degree-range <下限-上限>` | 自定义学历区间(拖滑块),如 `大专-本科`。两端取值:初中及以下 / 中专/中技 / 高中 / 大专 / 本科 / 硕士 / 博士。与 `--degree` 互斥 |
|
|
154
|
+
| `--exp <经验要求>` | 在校/应届 / 25年毕业 / 26年毕业 / 26年后毕业 / 1-3年 / 3-5年 / 5-10年。单选 |
|
|
155
|
+
| `--exp-range <下限-上限>` | 自定义经验区间(拖页面上那个滑块),如 `3-8`。两端收 `应届`、1-10 的整数年、`10+`。与 `--exp` 互斥 |
|
|
156
|
+
| `--age <年龄要求>` | 20-25 / 25-30 / 30-35 / 35-40 / 40-50 / 50以上。单选 |
|
|
157
|
+
| `--age-range <下限-上限>` | 自定义年龄区间,如 `23-27`。两端收 16-46 的整数、`46+`。与 `--age` 互斥 |
|
|
158
|
+
| `--status <求职状态>` | 离职-随时到岗 / 在职-暂不考虑 / 在职-考虑机会 / 在职-月内到岗。可多选 |
|
|
159
|
+
| `--job-hop <跳槽频率>` | 5年少于3份 / 时间≥1年。单选;`≥` 可以写成 `>=` |
|
|
160
|
+
| `--major <专业>` | 只认完全匹配的专业名(如「计算机科学与技术」)。可多选,最多 10 个 |
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
export BOSS_SEARCH_CITY=深圳 # 每次都从深圳搜,不用每条命令都带 --city
|
|
164
|
+
boss search "短视频" --school 统招本科,985院校
|
|
165
|
+
boss search "剪辑" --status 离职-随时到岗 --major 计算机科学与技术
|
|
166
|
+
boss search "剪辑" --degree-range 大专-本科 --exp-range 3-8 --age-range 24-32
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
生效的条件会回显在结果标题里,便于确认这一轮到底按什么口径搜的:
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
常规搜索结果(关键词:剪辑;当前岗位:不限职位;城市:深圳;院校:统招本科;在职-考虑机会/离职-随时到岗;专业:软件工程/计算机科学与技术)
|
|
173
|
+
共 15 人
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
几个要注意的点:
|
|
177
|
+
|
|
178
|
+
- **不传 `--job` 会切「不限职位」**,而不是沿用上次的岗位。以前跨命令沿用平台上的残留状态,
|
|
179
|
+
同一条命令跑两次可能搜的是两个池子。**这是相对 0.7.x 的行为变更。**
|
|
180
|
+
- **城市只认完全匹配**。`--city 深圳市` 匹配不到就直接报错并列出候选,不会替你猜——
|
|
181
|
+
猜错的代价是整轮搜索白跑且你不知道。`--major` 同理。
|
|
182
|
+
- **城市不在「清空筛选」的范围内**,它会跨命令留着(换 `--job` 时平台会自己把它清掉)。
|
|
183
|
+
但城市一直在标题里实时回显,所以不会出现「悄悄挂着」的情况。
|
|
184
|
+
- **`只看第一学历`** 这一项页面提示写的是「第一学历为全日制本科」,卡非全日制学历时用它,
|
|
185
|
+
比事后按「年龄减年限」推算可靠。
|
|
186
|
+
- 标题里的每一项都是**从页面实时读出来的**,不是把你传的参数原样打印——所以标题里没写的条件
|
|
187
|
+
就是真没生效,写了的就是真生效了。
|
|
188
|
+
- `--major` 传多个时会**一个一个开弹层选**(平台的搜索框选中一项后就不再出联想,只能关掉重开),
|
|
189
|
+
所以专业越多,这条命令越慢。
|
|
190
|
+
- 学历 / 经验 / 年龄的**自定义区间**用 `--degree-range` / `--exp-range` / `--age-range`,和对应的预设参数互斥
|
|
191
|
+
(页面上本来就是二选一,选了自定义,预设那排的「不限」会自动取消)。
|
|
192
|
+
`--degree-range` / `--exp-range` 是真的去拖那个滑块,比点选项慢几秒,而且拖完会按滑块的真实档位校验、
|
|
193
|
+
不对就重拖——**拖偏一格就是搜错人群,且标题上看不出来**,所以宁可慢也不赌。
|
|
194
|
+
- 平台自带的「性别」「薪资区间」「牛人活跃度」「牛人职位要求」「资格证书」也没做
|
|
195
|
+
(资格证书那一项平台本身就是隐藏的)。
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
137
199
|
## 与 AI Agent 集成
|
|
138
200
|
|
|
139
201
|
boss-cli 每条命令输出纯文本,适合 LLM 通过子进程编排:
|
|
@@ -46,6 +46,62 @@ export declare function probeRemoteHeadless(port?: number, timeoutMs?: number):
|
|
|
46
46
|
* 登录态在 user-data-dir 里,不会因此丢失。
|
|
47
47
|
*/
|
|
48
48
|
export declare function closeRemoteBrowser(port?: number): Promise<boolean>;
|
|
49
|
+
/**
|
|
50
|
+
* 把 exe + argv 拼成一条 Windows 命令行(`CreateProcess` 的 `lpCommandLine` 语义):
|
|
51
|
+
* 含空白或引号的参数整体加双引号,内部 `"` 前补反斜杠,结尾反斜杠成对翻倍。
|
|
52
|
+
*
|
|
53
|
+
* `--screen-info={0,0 1920x1080 workAreaBottom=40}` 这类带空格的参数不加引号会被拆成多个
|
|
54
|
+
* 参数,Chrome 直接启动失败。`spawn()` 在 Windows 上由 libuv 做同样的拼接,走 WMI 就得自己做。
|
|
55
|
+
*/
|
|
56
|
+
export declare function toWindowsCommandLine(exe: string, args: readonly string[]): string;
|
|
57
|
+
/**
|
|
58
|
+
* Windows 上是否让浏览器脱离调用方的 Job Object(默认开;`BOSS_SPAWN_BREAKAWAY=false` 关)。
|
|
59
|
+
*
|
|
60
|
+
* recruiting-copilot#43(与 liepin-cli#21 同因):从 AI Agent 宿主调用 CLI 时,宿主会把整棵
|
|
61
|
+
* 进程树放进一个 `KILL_ON_JOB_CLOSE` 的 Job Object。`spawn({ detached: true })` 在 Windows 上
|
|
62
|
+
* 只是新建进程组,**逃不出 Job**,于是 CLI 进程一结束 Chrome 就被连带 `TerminateProcess`:
|
|
63
|
+
* profile 留下 `exit_type: Crashed`,会话级 cookie 随进程消失,只能反复重新扫码——而高频
|
|
64
|
+
* 重登本身就是平台风控信号。
|
|
65
|
+
*/
|
|
66
|
+
export declare function shouldBreakawayFromJob(): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* 经 WMI `Win32_Process.Create` 拉起浏览器:进程由系统服务 `WmiPrvSE.exe` 创建,因此不在
|
|
69
|
+
* 调用方的 Job Object 里,但仍属于当前交互登录会话(有头窗口照常可见)。
|
|
70
|
+
* 命令行经环境变量交给 PowerShell,省掉再套一层引号转义。
|
|
71
|
+
*
|
|
72
|
+
* 抛错由调用方接住并**显著告警后退回 `spawn`**,理由见 `warnBreakawayUnavailable`。
|
|
73
|
+
*
|
|
74
|
+
* **WMI 被策略拒时的备选(备查,未实现)**:`explorer.exe <临时 .cmd>` 借 shell 重新 parent,
|
|
75
|
+
* 同样能脱离调用方的 Job。recruiting-copilot#43 实测有效——心跳文件跨两次调用边界活了 33 秒,
|
|
76
|
+
* 同批对照组的普通 detached spawn 立即被杀。参数转义不要让 explorer 直接携带 chrome 的参数,
|
|
77
|
+
* 全写进 .cmd 内部;PID 靠调试端口回探,或让 .cmd 自己把子进程 pid 写进临时文件。
|
|
78
|
+
* **没实现是权衡后的结果**:留临时文件、拿不到可靠 pid、多一层 shell,而真正需要它的环境
|
|
79
|
+
* 恰恰是 WMI 起不来的那种——不值得为此把主路径复杂化。要用再说。
|
|
80
|
+
*
|
|
81
|
+
* 另两条已排除:`CREATE_BREAKAWAY_FROM_JOB` 死路(#43 实测 WinError 5,对照组只带
|
|
82
|
+
* `DETACHED_PROCESS` 成功 ⇒ 外层 Job 没设 `JOB_OBJECT_LIMIT_BREAKAWAY_OK`);`schtasks`
|
|
83
|
+
* **未得出结论**(报告人宿主的程序黑名单把它拦在启动前,不是 Windows 拒的,别当成不可行的证据)。
|
|
84
|
+
*/
|
|
85
|
+
export declare function spawnViaWmi(commandLine: string,
|
|
86
|
+
/** 仅供测试注入必定失败的 stub;生产路径永远用默认值。 */
|
|
87
|
+
powershellExe?: string): Promise<number>;
|
|
88
|
+
/**
|
|
89
|
+
* WMI 拉不起来时的显著告警。打完这条就退回普通 `spawn`。
|
|
90
|
+
*
|
|
91
|
+
* **这是 AGENTS.md「禁止回退逻辑 / 失败直接暴露」的一处有意例外,别顺手删掉。**
|
|
92
|
+
* 那条规则禁的是**静默**兜底;这里告警是刷屏级的,用户不可能看不见,不属于「掩盖根因」。
|
|
93
|
+
*
|
|
94
|
+
* 为什么必须退回(recruiting-copilot#43 验收反馈,2026-09-21):报告人那台 Windows 上
|
|
95
|
+
* `Invoke-CimMethod Win32_Process Create` 返回 `ReturnValue=2`(拒绝访问)——读操作正常,
|
|
96
|
+
* 单单「创建进程」被策略拒了。硬失败的结果是 `search` / `recommend` / `list` 全部不可用,
|
|
97
|
+
* 他只能设 `BOSS_SPAWN_BREAKAWAY=false` 兜住,而那恰好把 #43 原样装回去,还绕过了这条告警。
|
|
98
|
+
* 权衡很清楚:**退回后是「浏览器可能被连带杀掉」(可恢复,重扫码),硬失败是「CLI 完全不能用」**
|
|
99
|
+
* (不可恢复,除非用户自己找到那个环境变量)。前者更轻,且带告警时用户知道自己在什么状态。
|
|
100
|
+
*
|
|
101
|
+
* 退回**只覆盖「WMI 创建进程失败」这一步**。进程已创建但调试端口没起来,仍然硬失败——
|
|
102
|
+
* 那时候端口上可能已经有一只正在启动的 Chrome,再 spawn 一只会撞车。
|
|
103
|
+
*/
|
|
104
|
+
export declare function warnBreakawayUnavailable(cause: unknown): void;
|
|
49
105
|
/** 减轻「正受到自动测试软件的控制」提示与常见自动化特征(非万能,站点仍可能用其它方式检测)。手动开 Chrome 并接 CDP 时可复用。 */
|
|
50
106
|
export declare const LAUNCH_ARGS_LESS_AUTOMATION: readonly ["--disable-infobars"];
|
|
51
107
|
/** 仅用于本地调试:尽量放宽同源/CORS 限制,便于跨域 iframe/canvas 处理。 */
|
|
@@ -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":"AAKA,OAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAQrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAOhC,CAAC;AAIL,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAQhD;AAaD;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,GAAE,MAA8B,EACpC,SAAS,SAAM,GACd,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAczB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,GAAE,MAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,CAU/F;AAiHD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAqBjF;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAIhD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM;AACnB,mCAAmC;AACnC,aAAa,SAAmB,GAC/B,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAyB7D;AA8ED,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;;;;;;;;;;;;;;;GAeG;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,CA6J1F;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,IAAI,OAAO,CAGpD;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,aAAa,GAAG,mBAAmB,CAAC;AAEjF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,EAAE,OAAO,GAAG,mBAAmB,CAI9G;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAc1F;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BvF;AAED,8DAA8D;AAC9D,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAE1E"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { spawn } from 'node:child_process';
|
|
1
|
+
import { execFile, spawn } from 'node:child_process';
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
3
|
import readline from 'node:readline';
|
|
4
4
|
import path from 'node:path';
|
|
5
|
+
import { promisify } from 'node:util';
|
|
5
6
|
import puppeteer from 'puppeteer-core';
|
|
6
7
|
import { BROWSER_USER_DATA_DIR, ensureAppDataLayout } from '../config.js';
|
|
7
8
|
/** 与 @puppeteer/browsers 一致,解析 Chrome 启动日志中的 CDP WebSocket URL(可能在 stdout 或 stderr)。 */
|
|
@@ -208,6 +209,166 @@ function waitForDevToolsWebSocketUrl(proc, userDataDir, timeoutMs) {
|
|
|
208
209
|
}
|
|
209
210
|
});
|
|
210
211
|
}
|
|
212
|
+
const execFileAsync = promisify(execFile);
|
|
213
|
+
/**
|
|
214
|
+
* 把 exe + argv 拼成一条 Windows 命令行(`CreateProcess` 的 `lpCommandLine` 语义):
|
|
215
|
+
* 含空白或引号的参数整体加双引号,内部 `"` 前补反斜杠,结尾反斜杠成对翻倍。
|
|
216
|
+
*
|
|
217
|
+
* `--screen-info={0,0 1920x1080 workAreaBottom=40}` 这类带空格的参数不加引号会被拆成多个
|
|
218
|
+
* 参数,Chrome 直接启动失败。`spawn()` 在 Windows 上由 libuv 做同样的拼接,走 WMI 就得自己做。
|
|
219
|
+
*/
|
|
220
|
+
export function toWindowsCommandLine(exe, args) {
|
|
221
|
+
const quote = (s) => {
|
|
222
|
+
if (s.length > 0 && !/[\s"]/.test(s))
|
|
223
|
+
return s;
|
|
224
|
+
let out = '"';
|
|
225
|
+
let pendingBackslashes = 0;
|
|
226
|
+
for (const ch of s) {
|
|
227
|
+
if (ch === '\\') {
|
|
228
|
+
pendingBackslashes++;
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
if (ch === '"') {
|
|
232
|
+
out += '\\'.repeat(pendingBackslashes * 2 + 1) + '"';
|
|
233
|
+
pendingBackslashes = 0;
|
|
234
|
+
continue;
|
|
235
|
+
}
|
|
236
|
+
out += '\\'.repeat(pendingBackslashes) + ch;
|
|
237
|
+
pendingBackslashes = 0;
|
|
238
|
+
}
|
|
239
|
+
return out + '\\'.repeat(pendingBackslashes * 2) + '"';
|
|
240
|
+
};
|
|
241
|
+
return [exe, ...args].map(quote).join(' ');
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Windows 上是否让浏览器脱离调用方的 Job Object(默认开;`BOSS_SPAWN_BREAKAWAY=false` 关)。
|
|
245
|
+
*
|
|
246
|
+
* recruiting-copilot#43(与 liepin-cli#21 同因):从 AI Agent 宿主调用 CLI 时,宿主会把整棵
|
|
247
|
+
* 进程树放进一个 `KILL_ON_JOB_CLOSE` 的 Job Object。`spawn({ detached: true })` 在 Windows 上
|
|
248
|
+
* 只是新建进程组,**逃不出 Job**,于是 CLI 进程一结束 Chrome 就被连带 `TerminateProcess`:
|
|
249
|
+
* profile 留下 `exit_type: Crashed`,会话级 cookie 随进程消失,只能反复重新扫码——而高频
|
|
250
|
+
* 重登本身就是平台风控信号。
|
|
251
|
+
*/
|
|
252
|
+
export function shouldBreakawayFromJob() {
|
|
253
|
+
if (process.platform !== 'win32')
|
|
254
|
+
return false;
|
|
255
|
+
const v = process.env.BOSS_SPAWN_BREAKAWAY?.trim().toLowerCase();
|
|
256
|
+
return !(v === 'false' || v === '0' || v === 'no' || v === 'n');
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* 经 WMI `Win32_Process.Create` 拉起浏览器:进程由系统服务 `WmiPrvSE.exe` 创建,因此不在
|
|
260
|
+
* 调用方的 Job Object 里,但仍属于当前交互登录会话(有头窗口照常可见)。
|
|
261
|
+
* 命令行经环境变量交给 PowerShell,省掉再套一层引号转义。
|
|
262
|
+
*
|
|
263
|
+
* 抛错由调用方接住并**显著告警后退回 `spawn`**,理由见 `warnBreakawayUnavailable`。
|
|
264
|
+
*
|
|
265
|
+
* **WMI 被策略拒时的备选(备查,未实现)**:`explorer.exe <临时 .cmd>` 借 shell 重新 parent,
|
|
266
|
+
* 同样能脱离调用方的 Job。recruiting-copilot#43 实测有效——心跳文件跨两次调用边界活了 33 秒,
|
|
267
|
+
* 同批对照组的普通 detached spawn 立即被杀。参数转义不要让 explorer 直接携带 chrome 的参数,
|
|
268
|
+
* 全写进 .cmd 内部;PID 靠调试端口回探,或让 .cmd 自己把子进程 pid 写进临时文件。
|
|
269
|
+
* **没实现是权衡后的结果**:留临时文件、拿不到可靠 pid、多一层 shell,而真正需要它的环境
|
|
270
|
+
* 恰恰是 WMI 起不来的那种——不值得为此把主路径复杂化。要用再说。
|
|
271
|
+
*
|
|
272
|
+
* 另两条已排除:`CREATE_BREAKAWAY_FROM_JOB` 死路(#43 实测 WinError 5,对照组只带
|
|
273
|
+
* `DETACHED_PROCESS` 成功 ⇒ 外层 Job 没设 `JOB_OBJECT_LIMIT_BREAKAWAY_OK`);`schtasks`
|
|
274
|
+
* **未得出结论**(报告人宿主的程序黑名单把它拦在启动前,不是 Windows 拒的,别当成不可行的证据)。
|
|
275
|
+
*/
|
|
276
|
+
export async function spawnViaWmi(commandLine,
|
|
277
|
+
/** 仅供测试注入必定失败的 stub;生产路径永远用默认值。 */
|
|
278
|
+
powershellExe = 'powershell.exe') {
|
|
279
|
+
let stdout;
|
|
280
|
+
try {
|
|
281
|
+
({ stdout } = await execFileAsync(powershellExe, [
|
|
282
|
+
'-NoProfile',
|
|
283
|
+
'-NonInteractive',
|
|
284
|
+
'-Command',
|
|
285
|
+
'$r = Invoke-CimMethod -ClassName Win32_Process -MethodName Create ' +
|
|
286
|
+
'-Arguments @{CommandLine=$env:BOSS_SPAWN_CMDLINE}; ' +
|
|
287
|
+
'if ($r.ReturnValue -ne 0) { exit 1 }; $r.ProcessId',
|
|
288
|
+
], {
|
|
289
|
+
env: { ...process.env, BOSS_SPAWN_CMDLINE: commandLine },
|
|
290
|
+
timeout: 15_000,
|
|
291
|
+
windowsHide: true,
|
|
292
|
+
}));
|
|
293
|
+
}
|
|
294
|
+
catch (e) {
|
|
295
|
+
throw new Error(`经 WMI 启动浏览器失败(${e instanceof Error ? e.message : String(e)})。` +
|
|
296
|
+
'WMI 用于让浏览器脱离调用方的 Job Object,否则 CLI 一退出 Chrome 就被连带杀掉、登录态丢失。' +
|
|
297
|
+
'若本机禁用了 WMI/PowerShell,可显式设 BOSS_SPAWN_BREAKAWAY=false 退回普通启动(届时 #43 会复现)。');
|
|
298
|
+
}
|
|
299
|
+
const pid = Number.parseInt(stdout.trim(), 10);
|
|
300
|
+
if (!Number.isFinite(pid) || pid <= 0) {
|
|
301
|
+
throw new Error(`WMI 已受理启动请求但未返回有效 PID(stdout: ${JSON.stringify(stdout)})。`);
|
|
302
|
+
}
|
|
303
|
+
return pid;
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* WMI 拉不起来时的显著告警。打完这条就退回普通 `spawn`。
|
|
307
|
+
*
|
|
308
|
+
* **这是 AGENTS.md「禁止回退逻辑 / 失败直接暴露」的一处有意例外,别顺手删掉。**
|
|
309
|
+
* 那条规则禁的是**静默**兜底;这里告警是刷屏级的,用户不可能看不见,不属于「掩盖根因」。
|
|
310
|
+
*
|
|
311
|
+
* 为什么必须退回(recruiting-copilot#43 验收反馈,2026-09-21):报告人那台 Windows 上
|
|
312
|
+
* `Invoke-CimMethod Win32_Process Create` 返回 `ReturnValue=2`(拒绝访问)——读操作正常,
|
|
313
|
+
* 单单「创建进程」被策略拒了。硬失败的结果是 `search` / `recommend` / `list` 全部不可用,
|
|
314
|
+
* 他只能设 `BOSS_SPAWN_BREAKAWAY=false` 兜住,而那恰好把 #43 原样装回去,还绕过了这条告警。
|
|
315
|
+
* 权衡很清楚:**退回后是「浏览器可能被连带杀掉」(可恢复,重扫码),硬失败是「CLI 完全不能用」**
|
|
316
|
+
* (不可恢复,除非用户自己找到那个环境变量)。前者更轻,且带告警时用户知道自己在什么状态。
|
|
317
|
+
*
|
|
318
|
+
* 退回**只覆盖「WMI 创建进程失败」这一步**。进程已创建但调试端口没起来,仍然硬失败——
|
|
319
|
+
* 那时候端口上可能已经有一只正在启动的 Chrome,再 spawn 一只会撞车。
|
|
320
|
+
*/
|
|
321
|
+
export function warnBreakawayUnavailable(cause) {
|
|
322
|
+
const reason = cause instanceof Error ? cause.message : String(cause);
|
|
323
|
+
console.error([
|
|
324
|
+
'',
|
|
325
|
+
'='.repeat(72),
|
|
326
|
+
'⚠️ 浏览器无法脱离调用方的 Job Object —— 已退回普通启动方式',
|
|
327
|
+
'='.repeat(72),
|
|
328
|
+
`原因:${reason}`,
|
|
329
|
+
'',
|
|
330
|
+
'影响:从 AI Agent 宿主调用时,本条命令结束后 Chrome 可能被连带杀掉,',
|
|
331
|
+
' profile 会留下 exit_type: Crashed,会话级登录态丢失、需要重新扫码。',
|
|
332
|
+
' 高频重登本身就是平台风控信号(见 recruiting-copilot#43)。',
|
|
333
|
+
'',
|
|
334
|
+
'常见成因:本机策略拒绝了 WMI 创建进程(Invoke-CimMethod Win32_Process Create',
|
|
335
|
+
' 返回 ReturnValue=2),或 PowerShell 被禁用。自查:',
|
|
336
|
+
` powershell -NoProfile -Command "(Invoke-CimMethod -ClassName Win32_Process -MethodName Create -Arguments @{CommandLine='cmd.exe /c exit'}).ReturnValue"`,
|
|
337
|
+
' 返回 0 表示可用;2 表示被拒。',
|
|
338
|
+
'',
|
|
339
|
+
'缓解:把 login / 业务动作 / shutdown 放进同一次调用,收尾用 boss shutdown 干净退出。',
|
|
340
|
+
' 确认本机就是起不来、不想再看这条告警:设 BOSS_SPAWN_BREAKAWAY=false。',
|
|
341
|
+
'='.repeat(72),
|
|
342
|
+
'',
|
|
343
|
+
].join('\n'));
|
|
344
|
+
}
|
|
345
|
+
/** 进程是否还活着(signal 0 只做存在性探测,不投递信号)。 */
|
|
346
|
+
function isProcessAlive(pid) {
|
|
347
|
+
try {
|
|
348
|
+
process.kill(pid, 0);
|
|
349
|
+
return true;
|
|
350
|
+
}
|
|
351
|
+
catch {
|
|
352
|
+
return false;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* WMI 路径下没有子进程的 stdout/stderr 可读,改为轮询固定调试端口等待就绪。
|
|
357
|
+
* 端口本来就是固定的(见 `REMOTE_DEBUGGING_PORT`),不需要解析 Chrome 启动日志。
|
|
358
|
+
*/
|
|
359
|
+
async function waitForRemoteDebuggingWsEndpoint(pid, userDataDir, timeoutMs) {
|
|
360
|
+
const deadline = Date.now() + timeoutMs;
|
|
361
|
+
while (Date.now() < deadline) {
|
|
362
|
+
const wsUrl = await probeRemoteDebuggingWsEndpoint(REMOTE_DEBUGGING_PORT, 800);
|
|
363
|
+
if (wsUrl)
|
|
364
|
+
return wsUrl;
|
|
365
|
+
if (!isProcessAlive(pid)) {
|
|
366
|
+
throw new Error(`浏览器进程在就绪前退出:user-data-dir「${userDataDir}」可能正被另一只「无远程调试端口」的 Chrome 持有(Chrome 单例锁会让新进程把命令行交还给它后立刻退出)。请关闭占用该目录的 Chrome 窗口后重试。`);
|
|
367
|
+
}
|
|
368
|
+
await new Promise((r) => setTimeout(r, 300));
|
|
369
|
+
}
|
|
370
|
+
throw new Error(`等待浏览器在端口 ${REMOTE_DEBUGGING_PORT} 就绪超时(${timeoutMs}ms,PID ${pid})。`);
|
|
371
|
+
}
|
|
211
372
|
/** 在未配置路径时,尝试常见安装位置(Chrome / Edge / Chromium)。 */
|
|
212
373
|
function findLocalChromiumExecutable() {
|
|
213
374
|
const candidates = [];
|
|
@@ -317,6 +478,8 @@ export async function connectBrowser(options = {}) {
|
|
|
317
478
|
const disableWasm = process.env.BOSS_BROWSER_DISABLE_WASM === 'true' || process.env.BOSS_BROWSER_DISABLE_WASM === '1';
|
|
318
479
|
const userArgs = [
|
|
319
480
|
...LAUNCH_ARGS_LESS_AUTOMATION,
|
|
481
|
+
// 上一只若被外力杀掉(Job Object 连带、任务管理器),别弹「要恢复页面吗?Chrome 未正确关闭」
|
|
482
|
+
'--hide-crash-restore-bubble',
|
|
320
483
|
...(headless ? LAUNCH_ARGS_HEADLESS_SCREEN : []),
|
|
321
484
|
...(disableGpu ? ['--disable-gpu'] : []),
|
|
322
485
|
...(disableWasm ? ['--js-flags=--noexpose_wasm'] : []),
|
|
@@ -334,6 +497,28 @@ export async function connectBrowser(options = {}) {
|
|
|
334
497
|
if (!chromeArgs.some((a) => a.startsWith('--remote-debugging-'))) {
|
|
335
498
|
chromeArgs.push(`--remote-debugging-port=${REMOTE_DEBUGGING_PORT}`);
|
|
336
499
|
}
|
|
500
|
+
/**
|
|
501
|
+
* Windows 默认经 WMI 启动,让浏览器脱离调用方的 Job Object(见 `shouldBreakawayFromJob`)。
|
|
502
|
+
* 这条路径没有子进程句柄,因此既不会被 Job 连带杀掉,也不会有 stdio 管道拖住 Node 退出。
|
|
503
|
+
*/
|
|
504
|
+
let breakawayPid = null;
|
|
505
|
+
if (shouldBreakawayFromJob()) {
|
|
506
|
+
try {
|
|
507
|
+
breakawayPid = await spawnViaWmi(toWindowsCommandLine(executablePath, chromeArgs));
|
|
508
|
+
}
|
|
509
|
+
catch (e) {
|
|
510
|
+
// 只有「创建进程」这一步失败才退回 spawn;告警很吵,是故意的(见函数注释)。
|
|
511
|
+
warnBreakawayUnavailable(e);
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
if (breakawayPid !== null) {
|
|
515
|
+
// 注意这句在 try 外:进程已创建但调试端口没起来是真故障,不能再 spawn 一只去撞端口。
|
|
516
|
+
const wsUrl = await waitForRemoteDebuggingWsEndpoint(breakawayPid, userDataDir, LAUNCH_READY_MS);
|
|
517
|
+
return await puppeteer.connect({
|
|
518
|
+
browserWSEndpoint: wsUrl,
|
|
519
|
+
defaultViewport: launchViewportFromEnv(),
|
|
520
|
+
});
|
|
521
|
+
}
|
|
337
522
|
/**
|
|
338
523
|
* 不使用 `puppeteer.launch()`:其依赖的 `@puppeteer/browsers` 会在 **Node 进程 `exit` 时 kill 浏览器子进程**,
|
|
339
524
|
* 导致交互模式 / `npm run dev` 退出时窗口被一并关掉。改为自行 `spawn` + `connect`,退出时只断 CDP,浏览器可保留。
|
|
@@ -358,9 +543,19 @@ export async function connectBrowser(options = {}) {
|
|
|
358
543
|
clearSpawnedChromeProcessRef();
|
|
359
544
|
throw e;
|
|
360
545
|
}
|
|
546
|
+
/**
|
|
547
|
+
* `resume()` 排空管道(不读会把 Chrome 的 stderr 写满阻塞住),`unref()` 解掉管道对
|
|
548
|
+
* event loop 的引用——`proc.unref()` 只作用于子进程句柄,**解不掉 stdio 管道**,
|
|
549
|
+
* 少了这一步 Node 要等常驻 Chrome 退出才返回(#43 里「结果已打印却挂住」的直接原因)。
|
|
550
|
+
*/
|
|
361
551
|
try {
|
|
362
|
-
proc.stdout
|
|
363
|
-
|
|
552
|
+
for (const s of [proc.stdout, proc.stderr]) {
|
|
553
|
+
if (!s)
|
|
554
|
+
continue;
|
|
555
|
+
s.resume();
|
|
556
|
+
// 运行时是 net.Socket(有 unref),Readable 的类型签名里没有
|
|
557
|
+
s.unref?.();
|
|
558
|
+
}
|
|
364
559
|
}
|
|
365
560
|
catch {
|
|
366
561
|
/* ignore */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp_browser.js","sourceRoot":"","sources":["../../src/browser/cdp_browser.ts"],"names":[],"mappings":"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"}
|
|
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":"
|
|
1
|
+
{"version":3,"file":"cliRouter.d.ts","sourceRoot":"","sources":["../../src/cli/cliRouter.ts"],"names":[],"mappings":"AA8EA,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAMxD;AA6TD;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAiRpE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAWjE;AAkDD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuC1D"}
|