@reconcrap/boss-recommend-mcp 2.0.44 → 2.0.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -259,11 +259,11 @@ config/screening-config.example.json
259
259
  - `debugPort`:未显式传 `port` 时,recommend / search / chat CDP-only MCP run 和健康检查默认连接这个 Chrome 调试端口。
260
260
  - `outputDir`:recommend / search / chat 完成后的最终 CSV 与 report JSON 会写入这里;run state / checkpoint 仍保留在各自状态目录,方便 pause/resume/cancel。
261
261
  - `llmThinkingLevel`:默认 `low`。可设为 `off/minimal/low/medium/high/auto/current`,用于控制 OpenAI-compatible LLM 的 thinking/reasoning 强度。
262
- - `humanBehavior`:默认 `{ "enabled": false, "profile": "baseline" }`。用于 recommend / search / chat 的可靠性实验,支持:
263
- - `profile: "baseline"`:保持当前确定性行为。
262
+ - `humanBehavior`:默认 `{ "enabled": true, "profile": "paced_with_rests" }`。用于 recommend / search / chat 的可靠性实验,支持:
263
+ - `profile: "baseline"`:关闭人类节奏,保持确定性行为。
264
264
  - `profile: "paced"`:启用 CDP-only Bezier 鼠标移动、较大按钮的安全 inset 点击点、分块 `Input.insertText`、列表 wheel/settle jitter,以及小的动作前后读秒。
265
265
  - `profile: "paced_with_rests"`:在 `paced` 基础上启用候选人短休和批次休息。
266
- - `humanRestEnabled`:兼容旧配置。设为 `true` 时等价于 `humanBehavior.profile="paced_with_rests"`;设为 `false` 时不改变默认关闭状态。
266
+ - `humanRestEnabled`:兼容旧配置。设为 `true` 时等价于 `humanBehavior.profile="paced_with_rests"`;设为 `false` 时不会关闭当前默认节奏。如需关闭,请显式设置 `humanBehavior.enabled=false` 或 `humanBehavior.profile="baseline"`。
267
267
  - recommend / search / chat 图片简历 fallback 与主列表滚动都会在启用 `listScrollJitter` 时使用 coverage-safe scroll jitter:每次 wheel delta 在安全范围内变化,并保留截图重叠、重复检测、bottom-marker / stop-boundary 逻辑,实际 delta 和 settle 时间会写入 artifact metadata。
268
268
  - chat/recommend/search run 也兼容显式参数 `safe_pacing` 与 `batch_rest_enabled`:run 参数优先于配置文件。
269
269
 
@@ -12,16 +12,16 @@
12
12
  "llmImageDetail": "low",
13
13
  "debugPort": 9222,
14
14
  "outputDir": "",
15
- "humanRestEnabled": false,
15
+ "humanRestEnabled": true,
16
16
  "humanBehavior": {
17
- "enabled": false,
18
- "profile": "baseline",
19
- "clickMovement": false,
20
- "textEntry": false,
21
- "listScrollJitter": false,
22
- "shortRest": false,
23
- "batchRest": false,
24
- "actionCooldown": false
17
+ "enabled": true,
18
+ "profile": "paced_with_rests",
19
+ "clickMovement": true,
20
+ "textEntry": true,
21
+ "listScrollJitter": true,
22
+ "shortRest": true,
23
+ "batchRest": true,
24
+ "actionCooldown": true
25
25
  },
26
26
  "openaiOrganization": "optional-org-id",
27
27
  "openaiProject": "optional-project-id"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reconcrap/boss-recommend-mcp",
3
- "version": "2.0.44",
3
+ "version": "2.0.45",
4
4
  "description": "Unified MCP pipeline for recommend-page filtering and screening on Boss Zhipin",
5
5
  "keywords": [
6
6
  "boss",
package/src/cli.js CHANGED
@@ -63,10 +63,10 @@ const installConfigDefaults = Object.freeze({
63
63
  llmMaxRetries: 3,
64
64
  llmImageLimit: 8,
65
65
  llmImageDetail: "low",
66
- humanRestEnabled: false,
66
+ humanRestEnabled: true,
67
67
  humanBehavior: {
68
- enabled: false,
69
- profile: "baseline"
68
+ enabled: true,
69
+ profile: "paced_with_rests"
70
70
  }
71
71
  });
72
72
  const bossChatRuntimeChildDirs = ["logs", "runs", "profiles", "reports", "artifacts", "state"];
@@ -41,6 +41,7 @@ const BOSS_LOGIN_DOM_SELECTORS = [
41
41
  "input[placeholder*='验证码']"
42
42
  ];
43
43
  const HUMAN_INTERACTION_CONFIG = new WeakMap();
44
+ const DEFAULT_HUMAN_BEHAVIOR_PROFILE = "paced_with_rests";
44
45
  const HUMAN_BEHAVIOR_PROFILES = Object.freeze({
45
46
  baseline: Object.freeze({
46
47
  enabled: false,
@@ -175,7 +176,7 @@ export function normalizeHumanBehaviorOptions(raw = null, {
175
176
  ? "paced_with_rests"
176
177
  : safePacingFlag === true
177
178
  ? "paced"
178
- : "baseline";
179
+ : DEFAULT_HUMAN_BEHAVIOR_PROFILE;
179
180
  const profile = normalizeHumanBehaviorProfile(explicitProfile, inferredProfile);
180
181
  const profileDefaults = {
181
182
  ...HUMAN_BEHAVIOR_PROFILES[profile]
package/src/index.js CHANGED
@@ -265,7 +265,7 @@ function createTargetCountInputSchema(description) {
265
265
  };
266
266
  }
267
267
 
268
- function createHumanBehaviorInputSchema(description = "可选,启用可靠性实验用的人类节奏配置;默认关闭") {
268
+ function createHumanBehaviorInputSchema(description = "可选,启用可靠性实验用的人类节奏配置;默认 paced_with_rests/on") {
269
269
  return {
270
270
  type: "object",
271
271
  properties: {
@@ -630,7 +630,7 @@ function createRunInputSchema() {
630
630
  target_count: createTargetCountInputSchema("boss-chat follow-up 本次处理人数上限;支持正整数、all 或 -1(扫到底)"),
631
631
  dry_run: { type: "boolean" },
632
632
  no_state: { type: "boolean" },
633
- human_behavior: createHumanBehaviorInputSchema("可选,follow-up chat 节奏配置;默认 baseline/off"),
633
+ human_behavior: createHumanBehaviorInputSchema("可选,follow-up chat 节奏配置;默认 paced_with_rests/on"),
634
634
  humanBehavior: createHumanBehaviorInputSchema("兼容字段;优先使用 human_behavior"),
635
635
  human_behavior_enabled: { type: "boolean" },
636
636
  human_behavior_profile: {
@@ -666,7 +666,7 @@ function createRunInputSchema() {
666
666
  type: "boolean",
667
667
  description: "可选,VPN/慢页面 live 测试模式,放宽等待时间"
668
668
  },
669
- human_behavior: createHumanBehaviorInputSchema("可选,recommend 可靠性实验用节奏配置;默认 baseline/off"),
669
+ human_behavior: createHumanBehaviorInputSchema("可选,recommend 可靠性实验用节奏配置;默认 paced_with_rests/on"),
670
670
  humanBehavior: createHumanBehaviorInputSchema("兼容字段;优先使用 human_behavior"),
671
671
  human_behavior_enabled: {
672
672
  type: "boolean",
@@ -913,7 +913,7 @@ function createBossChatStartInputSchema({ requireFullInput = false } = {}) {
913
913
  },
914
914
  dry_run: { type: "boolean" },
915
915
  no_state: { type: "boolean" },
916
- human_behavior: createHumanBehaviorInputSchema("可选,chat 可靠性实验用节奏配置;默认 baseline/off"),
916
+ human_behavior: createHumanBehaviorInputSchema("可选,chat 可靠性实验用节奏配置;默认 paced_with_rests/on"),
917
917
  humanBehavior: createHumanBehaviorInputSchema("兼容字段;优先使用 human_behavior"),
918
918
  human_behavior_enabled: {
919
919
  type: "boolean",
@@ -365,7 +365,7 @@ function createTargetCountSchema(description) {
365
365
  };
366
366
  }
367
367
 
368
- function createHumanBehaviorInputSchema(description = "可选,search/recruit 可靠性实验用节奏配置;默认关闭") {
368
+ function createHumanBehaviorInputSchema(description = "可选,search/recruit 可靠性实验用节奏配置;默认 paced_with_rests/on") {
369
369
  return {
370
370
  type: "object",
371
371
  properties: {
@@ -453,7 +453,7 @@ export function createRecruitPipelineInputSchema() {
453
453
  type: "boolean",
454
454
  description: "VPN/慢页面模式:放宽 live DOM 等待时间"
455
455
  },
456
- human_behavior: createHumanBehaviorInputSchema("可选,search/recruit 可靠性实验用节奏配置;默认 baseline/off"),
456
+ human_behavior: createHumanBehaviorInputSchema("可选,search/recruit 可靠性实验用节奏配置;默认 paced_with_rests/on"),
457
457
  humanBehavior: createHumanBehaviorInputSchema("兼容字段;优先使用 human_behavior"),
458
458
  human_behavior_enabled: {
459
459
  type: "boolean",