@jshookmcp/jshook 0.2.7 → 0.2.9

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.
Files changed (157) hide show
  1. package/README.md +36 -5
  2. package/README.zh.md +36 -5
  3. package/dist/{AntiCheatDetector-S8VRj-dD.mjs → AntiCheatDetector-BNk-EoBt.mjs} +3 -3
  4. package/dist/{CodeInjector-4Z3ngPoX.mjs → CodeInjector-Cq8q01kp.mjs} +5 -5
  5. package/dist/ConsoleMonitor-CPVQW1Y-.mjs +2201 -0
  6. package/dist/{DarwinAPI-B8hg_yhz.mjs → DarwinAPI-BNPxu0RH.mjs} +1 -1
  7. package/dist/DetailedDataManager-BQQcxh64.mjs +217 -0
  8. package/dist/EventBus-DgPmwpeu.mjs +141 -0
  9. package/dist/EvidenceGraphBridge-SFesNera.mjs +153 -0
  10. package/dist/{ExtensionManager-CZ6IveoV.mjs → ExtensionManager-CWYgw0YW.mjs} +13 -6
  11. package/dist/{FingerprintManager-BVxFJL2-.mjs → FingerprintManager-gzWtkKuf.mjs} +1 -1
  12. package/dist/{HardwareBreakpoint-DK1yjWkV.mjs → HardwareBreakpoint-B9gZCdFP.mjs} +3 -3
  13. package/dist/{HeapAnalyzer-CEbo10xU.mjs → HeapAnalyzer-BLDH0dCv.mjs} +4 -4
  14. package/dist/HookGeneratorBuilders.core.generators.storage-CtcdK78Q.mjs +639 -0
  15. package/dist/InstrumentationSession-CvPC7Jwy.mjs +244 -0
  16. package/dist/{MemoryController-DdtnBdD4.mjs → MemoryController-CbVdCIJF.mjs} +3 -3
  17. package/dist/{MemoryScanSession-RMixN3bX.mjs → MemoryScanSession-BsDZbLYm.mjs} +81 -78
  18. package/dist/{MemoryScanner-QjK4ld0B.mjs → MemoryScanner-Bcpml6II.mjs} +44 -18
  19. package/dist/{NativeMemoryManager.impl-CB6gJ0NM.mjs → NativeMemoryManager.impl-dZtA1ZGn.mjs} +14 -53
  20. package/dist/{NativeMemoryManager.utils-BML4q1ry.mjs → NativeMemoryManager.utils-B-FjA2mJ.mjs} +1 -1
  21. package/dist/{PEAnalyzer-CK0xe0Fs.mjs → PEAnalyzer-D1lzJ_VG.mjs} +2 -2
  22. package/dist/PageController-Bqm2kZ_X.mjs +417 -0
  23. package/dist/{PointerChainEngine-Cd73qu5b.mjs → PointerChainEngine-BOhyVsjx.mjs} +4 -4
  24. package/dist/PrerequisiteError-Dl33Svkz.mjs +20 -0
  25. package/dist/ResponseBuilder-D3iFYx2N.mjs +143 -0
  26. package/dist/ReverseEvidenceGraph-Dlsk94LC.mjs +269 -0
  27. package/dist/ScriptManager-aHHq0X7U.mjs +3000 -0
  28. package/dist/{Speedhack-CeF0XmEz.mjs → Speedhack-CqdIFlQl.mjs} +2 -2
  29. package/dist/{StructureAnalyzer-D4GkMduU.mjs → StructureAnalyzer-DhFaPvRO.mjs} +3 -3
  30. package/dist/ToolCatalog-C0JGZoOm.mjs +582 -0
  31. package/dist/ToolError-jh9whhMd.mjs +15 -0
  32. package/dist/ToolProbe-oC7aPrkv.mjs +45 -0
  33. package/dist/ToolRegistry-BjaF4oNz.mjs +131 -0
  34. package/dist/ToolRouter.policy-BWV67ZK-.mjs +304 -0
  35. package/dist/TraceRecorder-DgxyVbdQ.mjs +519 -0
  36. package/dist/{Win32API-Bc0QnQsN.mjs → Win32API-CePkipZY.mjs} +1 -1
  37. package/dist/{Win32Debug-DUHt9XUn.mjs → Win32Debug-BvKs-gxc.mjs} +2 -2
  38. package/dist/WorkflowEngine-CuvkZtWu.mjs +598 -0
  39. package/dist/analysis-CL9uACt9.mjs +463 -0
  40. package/dist/antidebug-CqDTB_uk.mjs +1081 -0
  41. package/dist/artifactRetention-CFEprwPw.mjs +591 -0
  42. package/dist/artifacts-Bk2-_uPq.mjs +59 -0
  43. package/dist/betterSqlite3-0pqusHHH.mjs +74 -0
  44. package/dist/binary-instrument-CXfpx6fT.mjs +979 -0
  45. package/dist/bind-helpers-xFfRF-qm.mjs +22 -0
  46. package/dist/boringssl-inspector-BH2D3VKc.mjs +180 -0
  47. package/dist/browser-BpOr5PEx.mjs +4082 -0
  48. package/dist/concurrency-Bt0yv1kJ.mjs +41 -0
  49. package/dist/{constants-CCvsN80K.mjs → constants-B0OANIBL.mjs} +88 -46
  50. package/dist/coordination-qUbyF8KU.mjs +259 -0
  51. package/dist/debugger-gnKxRSN0.mjs +1271 -0
  52. package/dist/definitions-6M-eejaT.mjs +53 -0
  53. package/dist/definitions-B18eyf0B.mjs +18 -0
  54. package/dist/definitions-B3QdlrHv.mjs +34 -0
  55. package/dist/definitions-B4rAvHNZ.mjs +63 -0
  56. package/dist/definitions-BB_4jnmy.mjs +37 -0
  57. package/dist/definitions-BMfYXoNC.mjs +43 -0
  58. package/dist/definitions-Beid2EB3.mjs +27 -0
  59. package/dist/definitions-C1UvM5Iy.mjs +126 -0
  60. package/dist/definitions-CXEI7QC72.mjs +216 -0
  61. package/dist/definitions-C_4r7Fo-2.mjs +14 -0
  62. package/dist/definitions-CkFDALoa.mjs +26 -0
  63. package/dist/definitions-Cke7zEb8.mjs +94 -0
  64. package/dist/definitions-ClJLzsJQ.mjs +25 -0
  65. package/dist/definitions-Cq-zroAU.mjs +28 -0
  66. package/dist/definitions-Cy3Sl6gV.mjs +34 -0
  67. package/dist/definitions-D3VsGcvz.mjs +47 -0
  68. package/dist/definitions-DVGfrn7y.mjs +96 -0
  69. package/dist/definitions-LKpC3-nL.mjs +9 -0
  70. package/dist/definitions-bAhHQJq9.mjs +359 -0
  71. package/dist/encoding-Bvz5jLRv.mjs +1065 -0
  72. package/dist/evidence-graph-bridge-C_fv9PuC.mjs +135 -0
  73. package/dist/{factory-CibqTNC8.mjs → factory-DxlGh9Xf.mjs} +37 -52
  74. package/dist/graphql-DYWzJ29s.mjs +1026 -0
  75. package/dist/handlers-9sAbfIg-.mjs +2552 -0
  76. package/dist/handlers-Bl8zkwz1.mjs +2716 -0
  77. package/dist/handlers-C67ktuRN.mjs +710 -0
  78. package/dist/handlers-C87g8oCe.mjs +276 -0
  79. package/dist/handlers-CTsDAO6p.mjs +681 -0
  80. package/dist/handlers-Cgyg6c0U.mjs +645 -0
  81. package/dist/handlers-D6j6yka7.mjs +2124 -0
  82. package/dist/handlers-DdFzXLvF.mjs +446 -0
  83. package/dist/handlers-DeLOCd5m.mjs +799 -0
  84. package/dist/handlers-DlCJN4Td.mjs +757 -0
  85. package/dist/handlers-DxGIq15_2.mjs +917 -0
  86. package/dist/handlers-U6L4xhuF.mjs +585 -0
  87. package/dist/handlers-tB9Mp9ZK.mjs +84 -0
  88. package/dist/handlers-tiy7EIBp.mjs +572 -0
  89. package/dist/handlers.impl-DS0d9fUw.mjs +761 -0
  90. package/dist/hooks-CzCWByww.mjs +898 -0
  91. package/dist/index.mjs +384 -155
  92. package/dist/{logger-BmWzC2lM.mjs → logger-Dh_xb7_2.mjs} +14 -6
  93. package/dist/maintenance-P7ePRXQC.mjs +830 -0
  94. package/dist/manifest-2ToTpjv8.mjs +106 -0
  95. package/dist/manifest-3g71z6Bg.mjs +79 -0
  96. package/dist/manifest-82baTv4U.mjs +45 -0
  97. package/dist/manifest-B3QVVeBS.mjs +82 -0
  98. package/dist/manifest-BB2J8IMJ.mjs +149 -0
  99. package/dist/manifest-BKbgbSiY.mjs +60 -0
  100. package/dist/manifest-Bcf-TJzH.mjs +848 -0
  101. package/dist/manifest-BmtZzQiQ2.mjs +45 -0
  102. package/dist/manifest-Bnd7kqEY.mjs +55 -0
  103. package/dist/manifest-BqQX6OQC2.mjs +65 -0
  104. package/dist/manifest-BqrQ4Tpj.mjs +81 -0
  105. package/dist/manifest-Br4RPFt5.mjs +370 -0
  106. package/dist/manifest-C5qDjysN.mjs +107 -0
  107. package/dist/manifest-C9RT5nk32.mjs +34 -0
  108. package/dist/manifest-CAhOuvSl.mjs +204 -0
  109. package/dist/manifest-CBYWCUBJ.mjs +51 -0
  110. package/dist/manifest-CFADCRa1.mjs +37 -0
  111. package/dist/manifest-CQVhavRF.mjs +114 -0
  112. package/dist/manifest-CT7zZBV1.mjs +48 -0
  113. package/dist/manifest-CV12bcrF.mjs +121 -0
  114. package/dist/manifest-CXsRWjjI.mjs +224 -0
  115. package/dist/manifest-CZLUCfG02.mjs +95 -0
  116. package/dist/manifest-D6phHKFd.mjs +131 -0
  117. package/dist/manifest-DCyjf4n2.mjs +294 -0
  118. package/dist/manifest-DHsnKgP6.mjs +60 -0
  119. package/dist/manifest-Df_dliIe.mjs +55 -0
  120. package/dist/manifest-Dh8WBmEW.mjs +129 -0
  121. package/dist/manifest-DhKRAT8_.mjs +92 -0
  122. package/dist/manifest-DlpTj4ic2.mjs +193 -0
  123. package/dist/manifest-DrbmZcFl2.mjs +253 -0
  124. package/dist/manifest-DuwHjUa5.mjs +70 -0
  125. package/dist/manifest-DzwvxPJX.mjs +38 -0
  126. package/dist/manifest-NXctwWQq.mjs +68 -0
  127. package/dist/manifest-Sc_0JQ13.mjs +418 -0
  128. package/dist/manifest-gZ4s_UtG.mjs +96 -0
  129. package/dist/manifest-qSleDqdO.mjs +1023 -0
  130. package/dist/modules-C184v-S9.mjs +11365 -0
  131. package/dist/mojo-ipc-B_H61Afw.mjs +525 -0
  132. package/dist/network-671Cw6hV.mjs +3346 -0
  133. package/dist/{artifacts-BbdOMET5.mjs → outputPaths-B1uGmrWZ.mjs} +219 -212
  134. package/dist/parse-args-BlRjqlkL.mjs +39 -0
  135. package/dist/platform-WmNn8Sxb.mjs +2070 -0
  136. package/dist/process-QcbIy5Zq.mjs +1401 -0
  137. package/dist/proxy-DqNs0bAd.mjs +170 -0
  138. package/dist/registry-D-6e18lB.mjs +34 -0
  139. package/dist/response-BQVP-xUn.mjs +28 -0
  140. package/dist/server/plugin-api.mjs +2 -2
  141. package/dist/shared-state-board-DV-dpHFJ.mjs +586 -0
  142. package/dist/sourcemap-Dq8ez8vS.mjs +650 -0
  143. package/dist/ssrf-policy-ZaUfvhq7.mjs +166 -0
  144. package/dist/streaming-BUQ0VJsg.mjs +725 -0
  145. package/dist/tool-builder-DCbIC5Eo.mjs +186 -0
  146. package/dist/transform-CiYJfNX0.mjs +1007 -0
  147. package/dist/types-Bx92KJfT.mjs +4 -0
  148. package/dist/wasm-DQTnHDs4.mjs +531 -0
  149. package/dist/workflow-f3xJOcjx.mjs +725 -0
  150. package/package.json +48 -78
  151. package/dist/ExtensionManager-DqUSOamB.mjs +0 -2
  152. package/dist/ToolCatalog-CnwmMIw3.mjs +0 -61483
  153. package/dist/{CacheAdapters-CzFNpD9a.mjs → CacheAdapters-CDe5WPSV.mjs} +0 -0
  154. package/dist/{StealthVerifier-BzBCFiwx.mjs → StealthVerifier-Bo4T3bz8.mjs} +0 -0
  155. package/dist/{VersionDetector-CNXcvD46.mjs → VersionDetector-CwVLVdDM.mjs} +0 -0
  156. package/dist/{formatAddress-ChCSIRWT.mjs → formatAddress-DVkj9kpI.mjs} +0 -0
  157. package/dist/{types-BBjOqye-.mjs → types-CPhOReNX.mjs} +1 -1
@@ -1,23 +1,29 @@
1
- import { t as __exportAll } from "./chunk-CjcI7cDX.mjs";
2
- import { Tn as SEARCH_VECTOR_MODEL_ID, bn as SEARCH_VECTOR_DYNAMIC_WEIGHT, xn as SEARCH_VECTOR_ENABLED, yn as SEARCH_VECTOR_COSINE_WEIGHT } from "./constants-CCvsN80K.mjs";
1
+ import { Jn as SEARCH_VECTOR_ENABLED, Kn as SEARCH_VECTOR_COSINE_WEIGHT, Qn as SEARCH_VECTOR_MODEL_ID, qn as SEARCH_VECTOR_DYNAMIC_WEIGHT } from "./constants-B0OANIBL.mjs";
3
2
  import { homedir } from "node:os";
4
- import { mkdir } from "node:fs/promises";
3
+ import { z } from "zod";
5
4
  import { basename, dirname, extname, isAbsolute, join, normalize, relative, resolve, sep } from "node:path";
6
5
  import { fileURLToPath } from "node:url";
6
+ import { mkdir } from "node:fs/promises";
7
7
  import { config } from "dotenv";
8
- import { z } from "zod";
9
8
  const DEFAULT_SEARCH_CONFIG = {
10
9
  queryCategoryProfiles: [
11
10
  {
12
11
  pattern: "(?:security|vuln|xss|injection|csrf|exploit|attack|prototype\\s*pollution|漏洞|安全|注入|攻击)",
13
12
  flags: "i",
14
- domainBoosts: [{
15
- domain: "security",
16
- weight: 1.6
17
- }, {
18
- domain: "analysis",
19
- weight: 1.2
20
- }]
13
+ domainBoosts: [
14
+ {
15
+ domain: "hooks",
16
+ weight: 1.35
17
+ },
18
+ {
19
+ domain: "antidebug",
20
+ weight: 1.2
21
+ },
22
+ {
23
+ domain: "core",
24
+ weight: 1.1
25
+ }
26
+ ]
21
27
  },
22
28
  {
23
29
  pattern: "(?:debug|breakpoint|pause|step\\s*over|step\\s*into|stack\\s*trace|断点|调试|单步)",
@@ -26,7 +32,7 @@ const DEFAULT_SEARCH_CONFIG = {
26
32
  domain: "debugger",
27
33
  weight: 1.6
28
34
  }, {
29
- domain: "runtime",
35
+ domain: "v8-inspector",
30
36
  weight: 1.2
31
37
  }]
32
38
  },
@@ -48,20 +54,27 @@ const DEFAULT_SEARCH_CONFIG = {
48
54
  domain: "transform",
49
55
  weight: 1.6
50
56
  }, {
51
- domain: "analysis",
57
+ domain: "core",
52
58
  weight: 1.2
53
59
  }]
54
60
  },
55
61
  {
56
62
  pattern: "(?:memory|heap|dump|scan|inject|内存|堆|扫描)",
57
63
  flags: "i",
58
- domainBoosts: [{
59
- domain: "memory",
60
- weight: 1.6
61
- }, {
62
- domain: "native",
63
- weight: 1.2
64
- }]
64
+ domainBoosts: [
65
+ {
66
+ domain: "memory",
67
+ weight: 1.6
68
+ },
69
+ {
70
+ domain: "process",
71
+ weight: 1.15
72
+ },
73
+ {
74
+ domain: "binary-instrument",
75
+ weight: 1.1
76
+ }
77
+ ]
65
78
  },
66
79
  {
67
80
  pattern: "(?:wasm|webassembly)",
@@ -83,11 +96,8 @@ const DEFAULT_SEARCH_CONFIG = {
83
96
  pattern: "(?:captcha|人机验证|验证码|图形验证)",
84
97
  flags: "i",
85
98
  domainBoosts: [{
86
- domain: "captcha",
87
- weight: 1.6
88
- }, {
89
99
  domain: "browser",
90
- weight: 1.1
100
+ weight: 1.65
91
101
  }]
92
102
  },
93
103
  {
@@ -97,7 +107,106 @@ const DEFAULT_SEARCH_CONFIG = {
97
107
  domain: "workflow",
98
108
  weight: 1.8
99
109
  }, {
100
- domain: "analysis",
110
+ domain: "core",
111
+ weight: 1.1
112
+ }]
113
+ },
114
+ {
115
+ pattern: "(?:v8|heap\\s?(?:snapshot|dump|profile)|bytecode|jit|turbofan|ignition|hidden\\s?class)",
116
+ flags: "i",
117
+ domainBoosts: [{
118
+ domain: "v8-inspector",
119
+ weight: 1.6
120
+ }, {
121
+ domain: "memory",
122
+ weight: 1.2
123
+ }]
124
+ },
125
+ {
126
+ pattern: "(?:tls|ssl|boringssl|cert(?:ificate)?|pinning|handshake|keylog|nss)",
127
+ flags: "i",
128
+ domainBoosts: [{
129
+ domain: "boringssl-inspector",
130
+ weight: 1.6
131
+ }, {
132
+ domain: "network",
133
+ weight: 1.1
134
+ }]
135
+ },
136
+ {
137
+ pattern: "(?:skia|gpu|render|scenegraph|scene\\s?tree|raster|draw\\s?call|layer)",
138
+ flags: "i",
139
+ domainBoosts: [{
140
+ domain: "skia-capture",
141
+ weight: 1.6
142
+ }, {
143
+ domain: "browser",
144
+ weight: 1.1
145
+ }]
146
+ },
147
+ {
148
+ pattern: "(?:frida|ghidra|ida|unidbg|jadx|disassemble|instrument)",
149
+ flags: "i",
150
+ domainBoosts: [{
151
+ domain: "binary-instrument",
152
+ weight: 1.6
153
+ }, {
154
+ domain: "memory",
155
+ weight: 1.2
156
+ }]
157
+ },
158
+ {
159
+ pattern: "(?:adb|android|webview|apk|dalvik|art\\s?(?:runtime)?)",
160
+ flags: "i",
161
+ domainBoosts: [{
162
+ domain: "adb-bridge",
163
+ weight: 1.6
164
+ }, {
165
+ domain: "browser",
166
+ weight: 1.1
167
+ }]
168
+ },
169
+ {
170
+ pattern: "(?:mojo|ipc|chromium.*ipc|broker|chromium.*interface)",
171
+ flags: "i",
172
+ domainBoosts: [{
173
+ domain: "mojo-ipc",
174
+ weight: 1.6
175
+ }, {
176
+ domain: "debugger",
177
+ weight: 1.1
178
+ }]
179
+ },
180
+ {
181
+ pattern: "(?:syscall|etw|strace|dtrace|kernel.*call|system\\s?call|tracefs)",
182
+ flags: "i",
183
+ domainBoosts: [{
184
+ domain: "syscall-hook",
185
+ weight: 1.6
186
+ }, {
187
+ domain: "process",
188
+ weight: 1.1
189
+ }]
190
+ },
191
+ {
192
+ pattern: "(?:protocol.*analy|state\\s?machine|packet.*decode|field.*extract)",
193
+ flags: "i",
194
+ domainBoosts: [{
195
+ domain: "protocol-analysis",
196
+ weight: 1.6
197
+ }, {
198
+ domain: "network",
199
+ weight: 1.1
200
+ }]
201
+ },
202
+ {
203
+ pattern: "(?:extension.*(?:install|registry|list)|plugin.*(?:install|manage)|addon|webhook.*(?:create|manage))",
204
+ flags: "i",
205
+ domainBoosts: [{
206
+ domain: "extension-registry",
207
+ weight: 1.6
208
+ }, {
209
+ domain: "workflow",
101
210
  weight: 1.1
102
211
  }]
103
212
  }
@@ -329,11 +438,11 @@ const DEFAULT_SEARCH_CONFIG = {
329
438
  boosts: [
330
439
  {
331
440
  tool: "run_extension_workflow",
332
- bonus: 40
441
+ bonus: 18
333
442
  },
334
443
  {
335
444
  tool: "list_extension_workflows",
336
- bonus: 24
445
+ bonus: 12
337
446
  },
338
447
  {
339
448
  tool: "api_probe_batch",
@@ -355,11 +464,11 @@ const DEFAULT_SEARCH_CONFIG = {
355
464
  boosts: [
356
465
  {
357
466
  tool: "run_extension_workflow",
358
- bonus: 40
467
+ bonus: 12
359
468
  },
360
469
  {
361
470
  tool: "list_extension_workflows",
362
- bonus: 24
471
+ bonus: 8
363
472
  },
364
473
  {
365
474
  tool: "tab_workflow",
@@ -394,7 +503,7 @@ const DEFAULT_SEARCH_CONFIG = {
394
503
  bonus: 20
395
504
  },
396
505
  {
397
- tool: "source_map_extract",
506
+ tool: "sourcemap_fetch_and_parse",
398
507
  bonus: 10
399
508
  },
400
509
  {
@@ -420,11 +529,11 @@ const DEFAULT_SEARCH_CONFIG = {
420
529
  boosts: [
421
530
  {
422
531
  tool: "run_extension_workflow",
423
- bonus: 28
532
+ bonus: 18
424
533
  },
425
534
  {
426
535
  tool: "list_extension_workflows",
427
- bonus: 16
536
+ bonus: 12
428
537
  },
429
538
  {
430
539
  tool: "network_extract_auth",
@@ -437,24 +546,20 @@ const DEFAULT_SEARCH_CONFIG = {
437
546
  flags: "i",
438
547
  boosts: [
439
548
  {
440
- tool: "run_extension_workflow",
441
- bonus: 40
442
- },
443
- {
444
- tool: "list_extension_workflows",
445
- bonus: 24
549
+ tool: "search_in_scripts",
550
+ bonus: 14
446
551
  },
447
552
  {
448
- tool: "search_in_scripts",
553
+ tool: "detect_crypto",
449
554
  bonus: 12
450
555
  },
451
556
  {
452
- tool: "detect_crypto",
557
+ tool: "manage_hooks",
453
558
  bonus: 10
454
559
  },
455
560
  {
456
- tool: "manage_hooks",
457
- bonus: 8
561
+ tool: "run_extension_workflow",
562
+ bonus: 6
458
563
  }
459
564
  ]
460
565
  },
@@ -463,24 +568,20 @@ const DEFAULT_SEARCH_CONFIG = {
463
568
  flags: "i",
464
569
  boosts: [
465
570
  {
466
- tool: "run_extension_workflow",
467
- bonus: 40
468
- },
469
- {
470
- tool: "list_extension_workflows",
471
- bonus: 24
571
+ tool: "ws_monitor",
572
+ bonus: 14
472
573
  },
473
574
  {
474
- tool: "ws_monitor_enable",
575
+ tool: "ws_get_frames",
475
576
  bonus: 12
476
577
  },
477
578
  {
478
- tool: "ws_get_frames",
579
+ tool: "ws_get_connections",
479
580
  bonus: 10
480
581
  },
481
582
  {
482
- tool: "ws_get_connections",
483
- bonus: 8
583
+ tool: "run_extension_workflow",
584
+ bonus: 6
484
585
  }
485
586
  ]
486
587
  },
@@ -488,25 +589,21 @@ const DEFAULT_SEARCH_CONFIG = {
488
589
  pattern: "(?:bundle|webpack|chunk|source.*map|deobfusc|源码|打包|混淆|反混淆)",
489
590
  flags: "i",
490
591
  boosts: [
491
- {
492
- tool: "run_extension_workflow",
493
- bonus: 40
494
- },
495
- {
496
- tool: "list_extension_workflows",
497
- bonus: 24
498
- },
499
592
  {
500
593
  tool: "js_bundle_search",
501
- bonus: 14
594
+ bonus: 18
502
595
  },
503
596
  {
504
597
  tool: "collect_code",
598
+ bonus: 12
599
+ },
600
+ {
601
+ tool: "sourcemap_fetch_and_parse",
505
602
  bonus: 10
506
603
  },
507
604
  {
508
- tool: "source_map_extract",
509
- bonus: 8
605
+ tool: "run_extension_workflow",
606
+ bonus: 6
510
607
  }
511
608
  ]
512
609
  },
@@ -514,51 +611,43 @@ const DEFAULT_SEARCH_CONFIG = {
514
611
  pattern: "(?:stealth|fingerprint|webdriver|antibot|bot.*detect|反爬|反检测|指纹)",
515
612
  flags: "i",
516
613
  boosts: [
517
- {
518
- tool: "run_extension_workflow",
519
- bonus: 40
520
- },
521
- {
522
- tool: "list_extension_workflows",
523
- bonus: 24
524
- },
525
614
  {
526
615
  tool: "stealth_inject",
527
- bonus: 10
616
+ bonus: 14
528
617
  },
529
618
  {
530
619
  tool: "stealth_generate_fingerprint",
531
- bonus: 10
620
+ bonus: 12
532
621
  },
533
622
  {
534
623
  tool: "stealth_verify",
535
- bonus: 8
624
+ bonus: 10
625
+ },
626
+ {
627
+ tool: "run_extension_workflow",
628
+ bonus: 6
536
629
  }
537
630
  ]
538
631
  },
539
632
  {
540
- pattern: "(?:evidence|export|har|report|snapshot|证据|导出|报告|快照|取证)",
633
+ pattern: "(?:evidence|export.*(?:har|markdown|json)|har|report|证据|导出|报告|取证)",
541
634
  flags: "i",
542
635
  boosts: [
543
636
  {
544
- tool: "run_extension_workflow",
545
- bonus: 40
546
- },
547
- {
548
- tool: "list_extension_workflows",
549
- bonus: 24
637
+ tool: "evidence_query_url",
638
+ bonus: 16
550
639
  },
551
640
  {
552
- tool: "evidence_query_url",
641
+ tool: "evidence_export_markdown",
553
642
  bonus: 14
554
643
  },
555
644
  {
556
- tool: "evidence_export_markdown",
645
+ tool: "evidence_export_json",
557
646
  bonus: 12
558
647
  },
559
648
  {
560
- tool: "evidence_export_json",
561
- bonus: 10
649
+ tool: "run_extension_workflow",
650
+ bonus: 6
562
651
  }
563
652
  ]
564
653
  },
@@ -567,20 +656,16 @@ const DEFAULT_SEARCH_CONFIG = {
567
656
  flags: "i",
568
657
  boosts: [
569
658
  {
570
- tool: "run_extension_workflow",
571
- bonus: 40
572
- },
573
- {
574
- tool: "list_extension_workflows",
575
- bonus: 24
659
+ tool: "network_extract_auth",
660
+ bonus: 16
576
661
  },
577
662
  {
578
- tool: "network_extract_auth",
579
- bonus: 14
663
+ tool: "run_extension_workflow",
664
+ bonus: 6
580
665
  },
581
666
  {
582
- tool: "page_get_cookies",
583
- bonus: 8
667
+ tool: "list_extension_workflows",
668
+ bonus: 4
584
669
  }
585
670
  ]
586
671
  },
@@ -589,15 +674,11 @@ const DEFAULT_SEARCH_CONFIG = {
589
674
  flags: "i",
590
675
  boosts: [
591
676
  {
592
- tool: "run_extension_workflow",
593
- bonus: 40
594
- },
595
- {
596
- tool: "list_extension_workflows",
597
- bonus: 24
677
+ tool: "ws_monitor",
678
+ bonus: 12
598
679
  },
599
680
  {
600
- tool: "ws_monitor_enable",
681
+ tool: "network_get_requests",
601
682
  bonus: 10
602
683
  },
603
684
  {
@@ -605,8 +686,8 @@ const DEFAULT_SEARCH_CONFIG = {
605
686
  bonus: 10
606
687
  },
607
688
  {
608
- tool: "network_get_requests",
609
- bonus: 8
689
+ tool: "run_extension_workflow",
690
+ bonus: 6
610
691
  }
611
692
  ]
612
693
  },
@@ -614,21 +695,17 @@ const DEFAULT_SEARCH_CONFIG = {
614
695
  pattern: "(?:challenge|turnstile|cloudflare|hcaptcha|datadome|akamai|perimeterx|kasada|人机|挑战|风控|拦截页)",
615
696
  flags: "i",
616
697
  boosts: [
617
- {
618
- tool: "run_extension_workflow",
619
- bonus: 40
620
- },
621
- {
622
- tool: "list_extension_workflows",
623
- bonus: 24
624
- },
625
698
  {
626
699
  tool: "captcha_detect",
627
- bonus: 14
700
+ bonus: 16
628
701
  },
629
702
  {
630
703
  tool: "stealth_verify",
631
- bonus: 10
704
+ bonus: 12
705
+ },
706
+ {
707
+ tool: "run_extension_workflow",
708
+ bonus: 6
632
709
  }
633
710
  ]
634
711
  },
@@ -637,24 +714,20 @@ const DEFAULT_SEARCH_CONFIG = {
637
714
  flags: "i",
638
715
  boosts: [
639
716
  {
640
- tool: "run_extension_workflow",
641
- bonus: 40
642
- },
643
- {
644
- tool: "list_extension_workflows",
645
- bonus: 24
717
+ tool: "detect_crypto",
718
+ bonus: 14
646
719
  },
647
720
  {
648
- tool: "detect_crypto",
721
+ tool: "extract_function_tree",
649
722
  bonus: 12
650
723
  },
651
724
  {
652
- tool: "extract_function_tree",
725
+ tool: "manage_hooks",
653
726
  bonus: 10
654
727
  },
655
728
  {
656
- tool: "manage_hooks",
657
- bonus: 8
729
+ tool: "run_extension_workflow",
730
+ bonus: 6
658
731
  }
659
732
  ]
660
733
  },
@@ -662,25 +735,21 @@ const DEFAULT_SEARCH_CONFIG = {
662
735
  pattern: "(?:replay.*lab|request.*replay|复现|重发|篡改|参数篡改|request.*tamper)",
663
736
  flags: "i",
664
737
  boosts: [
665
- {
666
- tool: "run_extension_workflow",
667
- bonus: 40
668
- },
669
- {
670
- tool: "list_extension_workflows",
671
- bonus: 24
672
- },
673
738
  {
674
739
  tool: "network_replay_request",
675
- bonus: 14
740
+ bonus: 16
676
741
  },
677
742
  {
678
743
  tool: "instrumentation_network_replay",
679
- bonus: 12
744
+ bonus: 14
680
745
  },
681
746
  {
682
747
  tool: "network_export_har",
683
- bonus: 8
748
+ bonus: 10
749
+ },
750
+ {
751
+ tool: "run_extension_workflow",
752
+ bonus: 6
684
753
  }
685
754
  ]
686
755
  },
@@ -689,28 +758,24 @@ const DEFAULT_SEARCH_CONFIG = {
689
758
  flags: "i",
690
759
  boosts: [
691
760
  {
692
- tool: "run_extension_workflow",
693
- bonus: 40
694
- },
695
- {
696
- tool: "list_extension_workflows",
697
- bonus: 24
761
+ tool: "webcrack_unpack",
762
+ bonus: 16
698
763
  },
699
764
  {
700
- tool: "webcrack_unpack",
765
+ tool: "ast_transform_apply",
701
766
  bonus: 14
702
767
  },
703
768
  {
704
- tool: "ast_transform_apply",
769
+ tool: "deobfuscate",
705
770
  bonus: 12
706
771
  },
707
772
  {
708
- tool: "deobfuscate",
773
+ tool: "detect_obfuscation",
709
774
  bonus: 10
710
775
  },
711
776
  {
712
- tool: "detect_obfuscation",
713
- bonus: 8
777
+ tool: "run_extension_workflow",
778
+ bonus: 6
714
779
  }
715
780
  ]
716
781
  },
@@ -719,28 +784,24 @@ const DEFAULT_SEARCH_CONFIG = {
719
784
  flags: "i",
720
785
  boosts: [
721
786
  {
722
- tool: "run_extension_workflow",
723
- bonus: 40
724
- },
725
- {
726
- tool: "list_extension_workflows",
727
- bonus: 24
787
+ tool: "electron_inspect_app",
788
+ bonus: 16
728
789
  },
729
790
  {
730
- tool: "electron_inspect_app",
791
+ tool: "electron_ipc_sniff",
731
792
  bonus: 14
732
793
  },
733
794
  {
734
- tool: "electron_ipc_sniff",
795
+ tool: "asar_search",
735
796
  bonus: 12
736
797
  },
737
798
  {
738
- tool: "asar_search",
799
+ tool: "electron_check_fuses",
739
800
  bonus: 10
740
801
  },
741
802
  {
742
- tool: "electron_check_fuses",
743
- bonus: 8
803
+ tool: "run_extension_workflow",
804
+ bonus: 6
744
805
  }
745
806
  ]
746
807
  }
@@ -1081,58 +1142,4 @@ async function resolveScreenshotOutputPath(options) {
1081
1142
  };
1082
1143
  }
1083
1144
  //#endregion
1084
- //#region src/utils/artifacts.ts
1085
- /**
1086
- * Unified artifact output management.
1087
- * Ensures all tool outputs go to well-structured directories with consistent naming.
1088
- */
1089
- var artifacts_exports = /* @__PURE__ */ __exportAll({
1090
- getArtifactDir: () => getArtifactDir,
1091
- getArtifactsRoot: () => getArtifactsRoot,
1092
- resolveArtifactPath: () => resolveArtifactPath
1093
- });
1094
- const ARTIFACT_BASE = "artifacts";
1095
- /**
1096
- * Generate a timestamped artifact path.
1097
- *
1098
- * @param category - Artifact subdirectory (wasm, traces, etc.)
1099
- * @param toolName - Tool that produces this artifact
1100
- * @param target - Target identifier (e.g., module name, URL hash)
1101
- * @param ext - File extension (without dot)
1102
- * @returns { absolutePath, displayPath }
1103
- */
1104
- async function resolveArtifactPath(options) {
1105
- const { category, toolName, target, ext, customDir } = options;
1106
- const root = getProjectRoot();
1107
- const dir = customDir ? resolve(root, customDir) : resolve(root, ARTIFACT_BASE, category);
1108
- const relativeDir = relative(normalize(root), normalize(dir));
1109
- if (relativeDir === ".." || relativeDir.startsWith(`..${sep}`) || isAbsolute(relativeDir)) throw new Error(`Path traversal blocked: artifact directory "${customDir}" escapes project root`);
1110
- await mkdir(dir, { recursive: true });
1111
- const ts = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").replace("T", "_").slice(0, 19);
1112
- const shortId = Math.random().toString(36).substring(2, 8);
1113
- const absolutePath = resolve(dir, `${sanitizeFilename(toolName)}${target ? `-${sanitizeFilename(target)}` : ""}-${ts}-${shortId}.${ext.replace(/^\./, "")}`);
1114
- return {
1115
- absolutePath,
1116
- displayPath: relative(root, absolutePath).replace(/\\/g, "/")
1117
- };
1118
- }
1119
- /**
1120
- * Get the artifacts root directory.
1121
- */
1122
- function getArtifactsRoot() {
1123
- return resolve(getProjectRoot(), ARTIFACT_BASE);
1124
- }
1125
- /**
1126
- * Get a specific artifact category directory.
1127
- */
1128
- function getArtifactDir(category) {
1129
- return resolve(getProjectRoot(), ARTIFACT_BASE, category);
1130
- }
1131
- /**
1132
- * Sanitize a string for use as a filename component.
1133
- */
1134
- function sanitizeFilename(name) {
1135
- return name.replace(/[^a-zA-Z0-9_-]/g, "_").replace(/_+/g, "_").replace(/^_|_$/g, "").substring(0, 60);
1136
- }
1137
- //#endregion
1138
- export { getCodeCacheDir as a, getProjectRoot as c, resolveScreenshotOutputPath as d, getConfig as f, DEFAULT_SEARCH_CONFIG as h, resolveArtifactPath as i, getTlsKeyLogDir as l, validateConfig as m, getArtifactDir as n, getDebuggerSessionsDir as o, projectRoot as p, getArtifactsRoot as r, getExtensionRegistryDir as s, artifacts_exports as t, resolveOutputDirectory as u };
1145
+ export { getTlsKeyLogDir as a, getConfig as c, DEFAULT_SEARCH_CONFIG as d, getProjectRoot as i, projectRoot as l, getDebuggerSessionsDir as n, resolveOutputDirectory as o, getExtensionRegistryDir as r, resolveScreenshotOutputPath as s, getCodeCacheDir as t, validateConfig as u };