@jshookmcp/jshook 0.3.0 → 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.
Files changed (321) hide show
  1. package/README.md +25 -50
  2. package/README.zh.md +25 -48
  3. package/dist/AntiCheatDetector-CGVGNfy5.mjs +1 -0
  4. package/dist/CacheAdapters-CdAxBmVW.mjs +1 -0
  5. package/dist/CodeInjector-BlgyqTOk.mjs +1 -0
  6. package/dist/ConsoleMonitor-Dkqc0HNi.mjs +490 -0
  7. package/dist/DOMInspector-BYY_EJ0C.mjs +95 -0
  8. package/dist/DarwinAPI-DC4HGGLl.mjs +1 -0
  9. package/dist/DetailedDataManager-BniBJlVv.mjs +1 -0
  10. package/dist/EventBus-DgciURGg.mjs +1 -0
  11. package/dist/EvidenceGraphBridge-BIfgB7HP.mjs +1 -0
  12. package/dist/ExtensionManager-erMpqcLk.mjs +1 -0
  13. package/dist/FingerprintManager-N7BZqjxP.mjs +1 -0
  14. package/dist/HardwareBreakpoint-OcJqNFVc.mjs +1 -0
  15. package/dist/HeapAnalyzer-CqAxZzeS.mjs +1 -0
  16. package/dist/{HookGeneratorBuilders.core.generators.storage-CTbB4Lcx.mjs → HookGeneratorBuilders.core.generators.storage-Bf1fbrNK.mjs} +66 -101
  17. package/dist/InstrumentationSession-DxXs0sCp.mjs +1 -0
  18. package/dist/MCPServer.search.handlers.domain-DVbWL1bT.mjs +1 -0
  19. package/dist/MemoryController-BaqstM5w.mjs +2 -0
  20. package/dist/MemoryScanSession-CaxAjZJf.mjs +1 -0
  21. package/dist/MemoryScanner-BLYnMJy6.mjs +1 -0
  22. package/dist/NativeMemoryManager.impl-CI554XbY.mjs +1 -0
  23. package/dist/NativeMemoryManager.utils-DM4NC3FE.mjs +1 -0
  24. package/dist/PEAnalyzer-DJyaJTQJ.mjs +1 -0
  25. package/dist/PageController-D9jVkH0i.mjs +1 -0
  26. package/dist/PointerChainEngine-5nF9eNlu.mjs +1 -0
  27. package/dist/PrerequisiteError-Bl3dK8XA.mjs +1 -0
  28. package/dist/ProcessRegistry-Hf12LlR9.mjs +1 -0
  29. package/dist/ResponseBuilder-B2lu4KEl.mjs +1 -0
  30. package/dist/ReverseEvidenceGraph-B931HeoW.mjs +2 -0
  31. package/dist/ScriptManager-fgqiALgj.mjs +7 -0
  32. package/dist/Speedhack-l6s8L2Qw.mjs +1 -0
  33. package/dist/StealthVerifier-Dhbj4B4P.mjs +1 -0
  34. package/dist/StructureAnalyzer-A-WamfYE.mjs +2 -0
  35. package/dist/ToolCatalog-D_IKl1Hu.mjs +1 -0
  36. package/dist/ToolError-DWU_z7gp.mjs +1 -0
  37. package/dist/ToolProbe-xsfALmN3.mjs +1 -0
  38. package/dist/ToolRegistry-B0Zs-phN.mjs +1 -0
  39. package/dist/ToolRouter.policy-CFHoN_Lw.mjs +4 -0
  40. package/dist/TraceRecorder-Dd8jLXpi.mjs +272 -0
  41. package/dist/VersionDetector-DMoUWyNm.mjs +9 -0
  42. package/dist/Win32API-Bhi5xFBe.mjs +1 -0
  43. package/dist/Win32Debug-CQteFL4F.mjs +1 -0
  44. package/dist/WorkflowEngine-CxEp2WXH.mjs +1 -0
  45. package/dist/analysis-BuR-NgX8.mjs +5 -0
  46. package/dist/{antidebug-BRKeyt27.mjs → antidebug-BOTZH6-0.mjs} +8 -259
  47. package/dist/artifactRetention-NBdncOEW.mjs +1 -0
  48. package/dist/artifacts-B5xQuEa_.mjs +1 -0
  49. package/dist/authorization-schema-B40obG1A.mjs +1 -0
  50. package/dist/betterSqlite3-CGaxz4AX.mjs +1 -0
  51. package/dist/binary-instrument-Cf9qqLlM.mjs +7 -0
  52. package/dist/bind-helpers-BlAOQrFQ.mjs +1 -0
  53. package/dist/boringssl-inspector-BST5vtKx.mjs +2 -0
  54. package/dist/browser-C4Le3xqA.mjs +11 -0
  55. package/dist/capabilities-DbYCv-HF.mjs +1 -0
  56. package/dist/chunk-C_pMuVsO.mjs +1 -0
  57. package/dist/collector-CKO8RPK8.mjs +1 -0
  58. package/dist/concurrency-CcK46d0h.mjs +1 -0
  59. package/dist/constants-Cp6hBrrx.mjs +1 -0
  60. package/dist/coordination-BbijHEHH.mjs +1 -0
  61. package/dist/debugger-CRJq_krh.mjs +1 -0
  62. package/dist/definitions-BGobEDQa.mjs +1 -0
  63. package/dist/definitions-BGwNSkVm.mjs +1 -0
  64. package/dist/definitions-BbxOUiP-.mjs +1 -0
  65. package/dist/definitions-CCP9gphV.mjs +1 -0
  66. package/dist/definitions-CIO9O-Sw.mjs +1 -0
  67. package/dist/definitions-CYFbewnd.mjs +1 -0
  68. package/dist/definitions-CdWEuIkI.mjs +1 -0
  69. package/dist/definitions-CoQFbggH.mjs +1 -0
  70. package/dist/definitions-CuJRsJ6N.mjs +1 -0
  71. package/dist/definitions-DI9YXsJk.mjs +1 -0
  72. package/dist/definitions-DJklW2sS.mjs +1 -0
  73. package/dist/definitions-DZ8uKusP.mjs +1 -0
  74. package/dist/definitions-Dds_zrWx.mjs +1 -0
  75. package/dist/definitions-Dgrg7f3D.mjs +1 -0
  76. package/dist/definitions-DtE0XLrT.mjs +1 -0
  77. package/dist/definitions-LaYTuwQd.mjs +26 -0
  78. package/dist/definitions-NoVp_9Pm.mjs +1 -0
  79. package/dist/definitions-OvGsfxdt.mjs +1 -0
  80. package/dist/definitions-jXPaVy4P.mjs +1 -0
  81. package/dist/encoding-DGcr6Aj_.mjs +2 -0
  82. package/dist/ensure-browser-core-Buls24LQ.mjs +1 -0
  83. package/dist/evidence-graph-bridge-B0yhGPcs.mjs +1 -0
  84. package/dist/factory-Cx_1LorX.mjs +1 -0
  85. package/dist/flat-target-session-CO5g78k3.mjs +1 -0
  86. package/dist/formatAddress-C7j2fDlM.mjs +1 -0
  87. package/dist/graphql-HLf3MS8H.mjs +62 -0
  88. package/dist/handlers-BLMa4X7l.mjs +54 -0
  89. package/dist/handlers-BP12ZsWc.mjs +4 -0
  90. package/dist/handlers-BZoPla6E.mjs +1 -0
  91. package/dist/handlers-BggKiVx9.mjs +2 -0
  92. package/dist/handlers-D3iev8g1.mjs +1 -0
  93. package/dist/handlers-D49r1-1P.mjs +1 -0
  94. package/dist/handlers-DCE45Ww8.mjs +2 -0
  95. package/dist/handlers-DW5AbYs5.mjs +5 -0
  96. package/dist/handlers-De5u62Ga2.mjs +1 -0
  97. package/dist/handlers-DmQzIc44.mjs +31 -0
  98. package/dist/handlers-DnJRGp7t.mjs +302 -0
  99. package/dist/handlers-Dv_runVv.mjs +2 -0
  100. package/dist/handlers-S9Ws0IGy.mjs +2 -0
  101. package/dist/{handlers-Dz9PYsCa.mjs → handlers-pVNpaw4A.mjs} +118 -904
  102. package/dist/handlers.impl-CD2_kOcC.mjs +1 -0
  103. package/dist/hooks-DDKppogd.mjs +600 -0
  104. package/dist/index.mjs +12 -5235
  105. package/dist/logger-sBC6IdRT.mjs +1 -0
  106. package/dist/maintenance-CutEO84j.mjs +1 -0
  107. package/dist/manifest-BFGxlDRh.mjs +123 -0
  108. package/dist/manifest-BPuE6oH2.mjs +1 -0
  109. package/dist/manifest-BXry5N09.mjs +1 -0
  110. package/dist/manifest-BeP_zJGb2.mjs +1 -0
  111. package/dist/manifest-C0g67k6U.mjs +1 -0
  112. package/dist/manifest-C1nZkTkO.mjs +1 -0
  113. package/dist/manifest-C7qV1z7F.mjs +1 -0
  114. package/dist/manifest-CDeUZGUZ.mjs +1 -0
  115. package/dist/manifest-CDiCtaQT.mjs +1 -0
  116. package/dist/manifest-CFn0359q2.mjs +1 -0
  117. package/dist/manifest-CGq4NpqH2.mjs +1 -0
  118. package/dist/manifest-CJMGt7Qy.mjs +1 -0
  119. package/dist/manifest-CRIJq4Hs.mjs +1 -0
  120. package/dist/manifest-C_hEIjSx.mjs +1 -0
  121. package/dist/manifest-CeQmtQOY.mjs +1 -0
  122. package/dist/manifest-Cq0j7GZt.mjs +1 -0
  123. package/dist/manifest-CtPmHAdn.mjs +1 -0
  124. package/dist/manifest-Cx2IVMUY.mjs +1 -0
  125. package/dist/manifest-D16xPXro.mjs +1 -0
  126. package/dist/manifest-D44TaRJU.mjs +1 -0
  127. package/dist/manifest-D610kxZr.mjs +2 -0
  128. package/dist/manifest-DC-SMF6b.mjs +1 -0
  129. package/dist/manifest-DD3rtxvV.mjs +1 -0
  130. package/dist/manifest-DKUorv5M.mjs +1 -0
  131. package/dist/manifest-DMJlcsTR.mjs +1 -0
  132. package/dist/manifest-DWUUWBz0.mjs +1 -0
  133. package/dist/manifest-De-6Wf2R.mjs +1 -0
  134. package/dist/manifest-Dgh0uDW-.mjs +1 -0
  135. package/dist/manifest-Dm0o3i2U.mjs +1 -0
  136. package/dist/manifest-DsVh7Y4U.mjs +1 -0
  137. package/dist/manifest-DtEFSRaq.mjs +1 -0
  138. package/dist/manifest-H-EpAyZQ.mjs +1 -0
  139. package/dist/manifest-ais9Afrw.mjs +1 -0
  140. package/dist/manifest-tmb54wmA.mjs +1 -0
  141. package/dist/manifest-yu2xiQqe.mjs +1 -0
  142. package/dist/manifest-zrbrpKCC.mjs +1 -0
  143. package/dist/matchesWildcardPattern-BGqLSmEs.mjs +1 -0
  144. package/dist/modules-p-PUNv9r.mjs +332 -0
  145. package/dist/mojo-ipc-VGlv3Qyp.mjs +9 -0
  146. package/dist/network-BjZ1Y-GB.mjs +7 -0
  147. package/dist/outputPaths-BonGThuc.mjs +2 -0
  148. package/dist/parse-args-Cuk7-xUt.mjs +1 -0
  149. package/dist/platform-C446Lf97.mjs +93 -0
  150. package/dist/playwright-cdp-fallback-BwVR-_T3.mjs +1 -0
  151. package/dist/process-C9f2A5zk.mjs +962 -0
  152. package/dist/proxy-CvRepxgV.mjs +1 -0
  153. package/dist/registry-DUHIPE-v.mjs +1 -0
  154. package/dist/response-C7rKQst4.mjs +1 -0
  155. package/dist/search-defaults-D2bY-rzH.mjs +1 -0
  156. package/dist/server/plugin-api.mjs +1 -293
  157. package/dist/shared-state-board-Cyg-xh_k.mjs +1 -0
  158. package/dist/sourcemap-D6Q1UuAp.mjs +1 -0
  159. package/dist/ssrf-policy-T96MR3r6.mjs +1 -0
  160. package/dist/streaming-CTX58tbb.mjs +1 -0
  161. package/dist/tool-builder-CI9914Tf.mjs +1 -0
  162. package/dist/transform-Cv9P2vVD.mjs +103 -0
  163. package/dist/types-CuyefmGT.mjs +1 -0
  164. package/dist/types-DtThH00r.mjs +1 -0
  165. package/dist/wasm-DaJa8J0V.mjs +174 -0
  166. package/dist/webcrack-CsLLJIs9.mjs +46 -0
  167. package/dist/workflow-CYIXtrWD.mjs +101 -0
  168. package/package.json +50 -78
  169. package/dist/AntiCheatDetector-CqGDXmfc.mjs +0 -350
  170. package/dist/CacheAdapters-jJFy20G-.mjs +0 -80
  171. package/dist/CodeInjector-BdjRfNx7.mjs +0 -150
  172. package/dist/ConsoleMonitor-DykL3IAw.mjs +0 -2269
  173. package/dist/DarwinAPI-ETyy0xyo.mjs +0 -363
  174. package/dist/DetailedDataManager-HT49OrvF.mjs +0 -217
  175. package/dist/EventBus-DFKvADm3.mjs +0 -141
  176. package/dist/EvidenceGraphBridge-318Oi0Lf.mjs +0 -153
  177. package/dist/ExtensionManager-BDMsY2Dz.mjs +0 -721
  178. package/dist/FingerprintManager-BN4UQWnX.mjs +0 -96
  179. package/dist/HardwareBreakpoint-Cc2AFq1Y.mjs +0 -239
  180. package/dist/HeapAnalyzer-DruMgsgj.mjs +0 -284
  181. package/dist/InstrumentationSession-DLH0vd-z.mjs +0 -244
  182. package/dist/MemoryController-CMtviNW_.mjs +0 -167
  183. package/dist/MemoryScanSession-ITgb_NMi.mjs +0 -278
  184. package/dist/MemoryScanner-CiL7Z3ey.mjs +0 -428
  185. package/dist/NativeMemoryManager.impl-D9Lkovvn.mjs +0 -485
  186. package/dist/NativeMemoryManager.utils-BBlAixF5.mjs +0 -165
  187. package/dist/PEAnalyzer-DMQ44gen.mjs +0 -385
  188. package/dist/PageController-BPJNqqBN.mjs +0 -431
  189. package/dist/PointerChainEngine-K7wN8Z-w.mjs +0 -325
  190. package/dist/PrerequisiteError-TuyZIs6n.mjs +0 -20
  191. package/dist/ProcessRegistry-zGg12QbE.mjs +0 -74
  192. package/dist/ResponseBuilder-CJXWmWNw.mjs +0 -143
  193. package/dist/ReverseEvidenceGraph-C02-gXOh.mjs +0 -269
  194. package/dist/ScriptManager-ZuWD-0Jg.mjs +0 -3003
  195. package/dist/Speedhack-D-z0umeT.mjs +0 -156
  196. package/dist/StealthVerifier-BWmPgQsv.mjs +0 -135
  197. package/dist/StructureAnalyzer-Cav5AVSL.mjs +0 -429
  198. package/dist/ToolCatalog-5OJdMiF0.mjs +0 -582
  199. package/dist/ToolError-jh9whhMd.mjs +0 -15
  200. package/dist/ToolProbe-DbCFGyrg.mjs +0 -45
  201. package/dist/ToolRegistry-B9krbTtI.mjs +0 -180
  202. package/dist/ToolRouter.policy-BGDAGyeH.mjs +0 -344
  203. package/dist/TraceRecorder-B41Z5XBj.mjs +0 -1286
  204. package/dist/VersionDetector-K3V4vGsw.mjs +0 -104
  205. package/dist/Win32API-C2kjj0ze.mjs +0 -346
  206. package/dist/Win32Debug-CKrGOTpo.mjs +0 -274
  207. package/dist/WorkflowEngine-DJ6M4opp.mjs +0 -569
  208. package/dist/analysis-BHeJW2Nb.mjs +0 -1234
  209. package/dist/artifactRetention-CPXkUJXp.mjs +0 -598
  210. package/dist/artifacts-DkfosXH3.mjs +0 -59
  211. package/dist/authorization-schema-DRqyJMSk.mjs +0 -31
  212. package/dist/betterSqlite3-DLSBZodi.mjs +0 -74
  213. package/dist/binary-instrument--V3MAhJ4.mjs +0 -971
  214. package/dist/bind-helpers-ClV34xdn.mjs +0 -42
  215. package/dist/boringssl-inspector-Bo_LOLaS.mjs +0 -180
  216. package/dist/browser-Dx3_S2cG.mjs +0 -4369
  217. package/dist/capabilities-CcHlvWgK.mjs +0 -33
  218. package/dist/chunk-CjcI7cDX.mjs +0 -15
  219. package/dist/concurrency-Drev_Vz9.mjs +0 -41
  220. package/dist/constants-CDZLOoVv.mjs +0 -534
  221. package/dist/coordination-DgItD9DL.mjs +0 -259
  222. package/dist/debugger-RS3RSAqs.mjs +0 -1288
  223. package/dist/definitions-BEoYofW5.mjs +0 -47
  224. package/dist/definitions-BRaefg3u.mjs +0 -365
  225. package/dist/definitions-BbkvZkiv.mjs +0 -96
  226. package/dist/definitions-BtWSHJ3o.mjs +0 -17
  227. package/dist/definitions-C1gCHO0i.mjs +0 -43
  228. package/dist/definitions-CDOg_b-l.mjs +0 -138
  229. package/dist/definitions-CVPD9hzZ.mjs +0 -54
  230. package/dist/definitions-Cea8Lgl7.mjs +0 -94
  231. package/dist/definitions-DAgIyjxM.mjs +0 -10
  232. package/dist/definitions-DJA27nsL.mjs +0 -66
  233. package/dist/definitions-DKPFU3LW.mjs +0 -25
  234. package/dist/definitions-DPRpZQ96.mjs +0 -47
  235. package/dist/definitions-DUE5gmdn.mjs +0 -18
  236. package/dist/definitions-DYVjOtxa.mjs +0 -26
  237. package/dist/definitions-DcYLVLCo.mjs +0 -37
  238. package/dist/definitions-Pp5LI2H4.mjs +0 -27
  239. package/dist/definitions-j9KdHVNR.mjs +0 -14
  240. package/dist/definitions-uzkjBwa7.mjs +0 -258
  241. package/dist/definitions-va-AnLuQ.mjs +0 -28
  242. package/dist/encoding-DJeqHmpd.mjs +0 -1079
  243. package/dist/evidence-graph-bridge-DcYizFk2.mjs +0 -136
  244. package/dist/factory-C90tBff6.mjs +0 -575
  245. package/dist/flat-target-session-Dgax2Cy3.mjs +0 -29
  246. package/dist/formatAddress-nnMvEohD.mjs +0 -17
  247. package/dist/graphql-CoHrhweh.mjs +0 -1197
  248. package/dist/handlers-4jmR0nMs.mjs +0 -898
  249. package/dist/handlers-BAHPxcch.mjs +0 -789
  250. package/dist/handlers-BOs9b907.mjs +0 -2600
  251. package/dist/handlers-BWXEy6ef.mjs +0 -917
  252. package/dist/handlers-Bndn6QvE.mjs +0 -111
  253. package/dist/handlers-BqC4bD4s.mjs +0 -681
  254. package/dist/handlers-BtYq60bM2.mjs +0 -276
  255. package/dist/handlers-BzgcB4iv.mjs +0 -799
  256. package/dist/handlers-CRyRWj2b.mjs +0 -859
  257. package/dist/handlers-CVv2H1uq.mjs +0 -592
  258. package/dist/handlers-Dl5a7JS4.mjs +0 -572
  259. package/dist/handlers-Dx2d7jt7.mjs +0 -2537
  260. package/dist/handlers-HujRKC3b.mjs +0 -661
  261. package/dist/handlers.impl-XWXkQfyi.mjs +0 -807
  262. package/dist/hooks-B1B8NRHL.mjs +0 -898
  263. package/dist/logger-Dh_xb7_2.mjs +0 -93
  264. package/dist/maintenance-PRMkLVRW.mjs +0 -835
  265. package/dist/manifest-67Bok-Si.mjs +0 -58
  266. package/dist/manifest-6lNTMZAB2.mjs +0 -87
  267. package/dist/manifest-B2duEHiH.mjs +0 -90
  268. package/dist/manifest-B6EY9Vm8.mjs +0 -57
  269. package/dist/manifest-B6nKSbyY.mjs +0 -95
  270. package/dist/manifest-BL8AQNPF.mjs +0 -106
  271. package/dist/manifest-BSZvJJmV.mjs +0 -47
  272. package/dist/manifest-BU7qzUyX.mjs +0 -418
  273. package/dist/manifest-Bl62e8WK.mjs +0 -49
  274. package/dist/manifest-Bo5cXjdt.mjs +0 -82
  275. package/dist/manifest-BpS4gtUK.mjs +0 -1347
  276. package/dist/manifest-Bv65_e2W.mjs +0 -101
  277. package/dist/manifest-BytNIF4Z.mjs +0 -117
  278. package/dist/manifest-C-xtsjS3.mjs +0 -81
  279. package/dist/manifest-CDYl7OhA.mjs +0 -66
  280. package/dist/manifest-CRZ3xmkD.mjs +0 -61
  281. package/dist/manifest-CoW6u4Tp.mjs +0 -132
  282. package/dist/manifest-Cq5zN_8A.mjs +0 -50
  283. package/dist/manifest-D7YZM_2e.mjs +0 -194
  284. package/dist/manifest-DE_VrAeQ.mjs +0 -314
  285. package/dist/manifest-DGsXSCpT.mjs +0 -39
  286. package/dist/manifest-DJ2vfEuW.mjs +0 -156
  287. package/dist/manifest-DPXDYhEu.mjs +0 -80
  288. package/dist/manifest-Dd4fQb0a.mjs +0 -322
  289. package/dist/manifest-Deq6opGg.mjs +0 -223
  290. package/dist/manifest-DfJTafJK.mjs +0 -37
  291. package/dist/manifest-DgOdgN_j.mjs +0 -50
  292. package/dist/manifest-DlbMW4v4.mjs +0 -47
  293. package/dist/manifest-DmVfbH0w.mjs +0 -374
  294. package/dist/manifest-Dog6Ddjr.mjs +0 -109
  295. package/dist/manifest-DvgU5FWb.mjs +0 -58
  296. package/dist/manifest-HsfDBs7j.mjs +0 -50
  297. package/dist/manifest-I8oQHvCG.mjs +0 -186
  298. package/dist/manifest-NvH_a-av.mjs +0 -786
  299. package/dist/manifest-cEJU1v0Z.mjs +0 -129
  300. package/dist/manifest-wOl5XLB12.mjs +0 -112
  301. package/dist/modules-tZozf0LQ.mjs +0 -10635
  302. package/dist/mojo-ipc-DXNEXEqb.mjs +0 -640
  303. package/dist/network-CPVvwvFg.mjs +0 -3852
  304. package/dist/outputPaths-um7lCRY3.mjs +0 -1141
  305. package/dist/parse-args-B4cY5Vx5.mjs +0 -39
  306. package/dist/platform-CYeFoTWp.mjs +0 -2161
  307. package/dist/process-BTbgcVc6.mjs +0 -1306
  308. package/dist/proxy-r8YN6nP1.mjs +0 -192
  309. package/dist/registry-Bl8ZQW61.mjs +0 -34
  310. package/dist/response-CWhh2aLo.mjs +0 -34
  311. package/dist/shared-state-board-BoZnSoj-.mjs +0 -586
  312. package/dist/sourcemap-BIDHUVXy.mjs +0 -934
  313. package/dist/ssrf-policy-Dsqd-DTX.mjs +0 -166
  314. package/dist/streaming-Dal6utPp.mjs +0 -725
  315. package/dist/tool-builder-BHJp32mV.mjs +0 -186
  316. package/dist/transform-DRVgGG90.mjs +0 -1011
  317. package/dist/types-Bx92KJfT.mjs +0 -4
  318. package/dist/types-DDBWs9UP.mjs +0 -37
  319. package/dist/wasm-BYx5UOeG.mjs +0 -1044
  320. package/dist/webcrack-Be0_FccV.mjs +0 -747
  321. package/dist/workflow-BpuKEtvn.mjs +0 -725
@@ -1,192 +0,0 @@
1
- import { a as argString, r as argNumber, s as argStringRequired, t as argBool } from "./parse-args-B4cY5Vx5.mjs";
2
- import { t as R } from "./ResponseBuilder-CJXWmWNw.mjs";
3
- import "./definitions-j9KdHVNR.mjs";
4
- import * as fs from "fs";
5
- import * as path$1 from "path";
6
- //#region src/server/domains/proxy/handlers.impl.ts
7
- const ResponseBuilder = {
8
- success: (data) => R.ok().merge(data).json(),
9
- error: (msg) => R.fail(msg).mcpError().json()
10
- };
11
- function compileUrlPattern(urlPattern) {
12
- const trimmed = urlPattern.trim();
13
- const regexLiteral = /^\/(.+)\/([a-z]*)$/.exec(trimmed);
14
- if (regexLiteral && regexLiteral[1] !== void 0) {
15
- const source = regexLiteral[1];
16
- const flags = regexLiteral[2] ?? "";
17
- return new RegExp(source, flags);
18
- }
19
- return new RegExp(trimmed);
20
- }
21
- var ProxyHandlers = class {
22
- server = null;
23
- caPathDir;
24
- currentPort = null;
25
- captureBuffer = [];
26
- mockttpModule = null;
27
- constructor() {
28
- const home = process.env.HOME || process.env.USERPROFILE || "/tmp";
29
- this.caPathDir = path$1.join(home, ".jshookmcp", "ca");
30
- fs.mkdirSync(this.caPathDir, { recursive: true });
31
- }
32
- async handleProxyStart(args) {
33
- const port = argNumber(args, "port") || 8080;
34
- const useHttps = argBool(args, "useHttps") ?? true;
35
- if (this.server) return ResponseBuilder.error(`Proxy is already running on port ${this.currentPort}`);
36
- try {
37
- const mockttp = this.mockttpModule ?? await import("mockttp");
38
- this.mockttpModule = mockttp;
39
- if (useHttps) {
40
- const keyPath = path$1.join(this.caPathDir, "ca.key");
41
- const certPath = path$1.join(this.caPathDir, "ca.pem");
42
- if (!fs.existsSync(keyPath) || !fs.existsSync(certPath)) {
43
- console.log("[Proxy] generating new CA certificates...");
44
- const ca = await mockttp.generateCACertificate();
45
- fs.writeFileSync(keyPath, ca.key);
46
- fs.writeFileSync(certPath, ca.cert);
47
- }
48
- this.server = mockttp.getLocal({
49
- https: {
50
- keyPath,
51
- certPath
52
- },
53
- cors: true
54
- });
55
- } else this.server = mockttp.getLocal();
56
- this.server.on("request", (req) => {
57
- this.captureBuffer.push({
58
- type: "request",
59
- id: req.id,
60
- method: req.method,
61
- url: req.url,
62
- headers: req.headers,
63
- timestamp: Date.now()
64
- });
65
- if (this.captureBuffer.length > 5e3) this.captureBuffer.shift();
66
- });
67
- this.server.on("response", (res) => {
68
- this.captureBuffer.push({
69
- type: "response",
70
- id: res.id,
71
- status: res.statusCode,
72
- headers: res.headers,
73
- timestamp: Date.now()
74
- });
75
- });
76
- await this.server.start(port);
77
- this.currentPort = port;
78
- return ResponseBuilder.success({
79
- message: `Proxy started.`,
80
- port: this.currentPort,
81
- caCertPath: useHttps ? path$1.join(this.caPathDir, "ca.pem") : null
82
- });
83
- } catch (e) {
84
- this.server = null;
85
- return ResponseBuilder.error(`Failed to start proxy: ${e.message}`);
86
- }
87
- }
88
- async handleProxyStop(_args) {
89
- if (!this.server) return ResponseBuilder.error("Proxy is not running.");
90
- await this.server.stop();
91
- this.server = null;
92
- this.currentPort = null;
93
- return ResponseBuilder.success({ message: "Proxy stopped successfully" });
94
- }
95
- async handleProxyStatus(_args) {
96
- return ResponseBuilder.success({
97
- running: !!this.server,
98
- port: this.currentPort,
99
- caDir: this.caPathDir,
100
- caCertPath: path$1.join(this.caPathDir, "ca.pem")
101
- });
102
- }
103
- async handleProxyExportCa(_args) {
104
- const certPath = path$1.join(this.caPathDir, "ca.pem");
105
- if (!fs.existsSync(certPath)) return ResponseBuilder.error("CA certificate not found. Start the proxy with HTTPS enabled first.");
106
- const certContent = fs.readFileSync(certPath, "utf8");
107
- return ResponseBuilder.success({
108
- path: certPath,
109
- content: certContent
110
- });
111
- }
112
- async handleProxyAddRule(args) {
113
- if (!this.server) return ResponseBuilder.error("Proxy must be running to add rules.");
114
- const action = argStringRequired(args, "action");
115
- const method = (argString(args, "method") || "GET").toUpperCase();
116
- const urlPattern = argString(args, "urlPattern") || ".*";
117
- try {
118
- const matcher = compileUrlPattern(urlPattern);
119
- let builder;
120
- if (method === "GET") builder = this.server.forGet(matcher);
121
- else if (method === "POST") builder = this.server.forPost(matcher);
122
- else if (method === "PUT") builder = this.server.forPut(matcher);
123
- else if (method === "DELETE") builder = this.server.forDelete(matcher);
124
- else builder = this.server.forAnyRequest();
125
- let endpoint;
126
- if (action === "forward") endpoint = await builder.thenPassThrough();
127
- else if (action === "block") endpoint = await builder.thenCloseConnection();
128
- else if (action === "mock_response") {
129
- const mockStatus = argNumber(args, "mockStatus") || 200;
130
- const mockBody = argString(args, "mockBody") || "";
131
- endpoint = await builder.thenReply(mockStatus, mockBody);
132
- } else return ResponseBuilder.error(`Unknown action: ${action}`);
133
- return ResponseBuilder.success({
134
- message: "Rule added successfully",
135
- endpointId: endpoint.id
136
- });
137
- } catch (e) {
138
- return ResponseBuilder.error(`Failed to add rule: ${e.message}`);
139
- }
140
- }
141
- async handleProxyGetRequests(args) {
142
- const urlFilter = argString(args, "urlFilter");
143
- let results = this.captureBuffer;
144
- if (urlFilter) results = results.filter((r) => r.url && r.url.includes(urlFilter));
145
- return ResponseBuilder.success({
146
- count: results.length,
147
- logs: results.slice(-100)
148
- });
149
- }
150
- async handleProxyClearLogs(_args) {
151
- this.captureBuffer = [];
152
- return ResponseBuilder.success({ message: "Captured proxy logs cleared." });
153
- }
154
- async handleProxySetupAdbDevice(args) {
155
- const port = this.currentPort;
156
- if (!port) return ResponseBuilder.error("Proxy must be running locally to setup ADB device reverse tethering.");
157
- const certPath = path$1.join(this.caPathDir, "ca.pem");
158
- if (!fs.existsSync(certPath)) return ResponseBuilder.error("CA certificate not found. Start the proxy with HTTPS enabled first.");
159
- const { exec } = await import("child_process");
160
- const { promisify } = await import("util");
161
- const execAsync = promisify(exec);
162
- const deviceSerial = argString(args, "deviceSerial");
163
- const deviceFlag = deviceSerial ? `-s ${deviceSerial}` : "";
164
- try {
165
- try {
166
- await execAsync("adb version");
167
- } catch (error) {
168
- const message = error instanceof Error ? error.message : String(error);
169
- return R.fail(`ADB binary not available: ${message}`).merge({
170
- available: false,
171
- capability: "adb_binary",
172
- status: "unavailable",
173
- fix: "Install Android Platform Tools and ensure `adb` is available on PATH."
174
- }).json();
175
- }
176
- await execAsync(`adb ${deviceFlag} get-state`);
177
- await execAsync(`adb ${deviceFlag} push "${certPath}" /data/local/tmp/ca.pem`);
178
- await execAsync(`adb ${deviceFlag} reverse tcp:${port} tcp:${port}`);
179
- await execAsync(`adb ${deviceFlag} shell settings put global http_proxy 127.0.0.1:${port}`);
180
- const instructions = `ADB Configuration Applied Automatically:\n- Verified device connection.\n- Pushed CA to /data/local/tmp/ca.pem\n- Reversed forwarded tcp:${port} -> tcp:${port}\n- Set global http_proxy to 127.0.0.1:${port}\n\nNote: For HTTPS decryption, you still need to manually install the CA cert from /data/local/tmp/ca.pem in Android Settings (due to security restrictions) unless device is rooted.`;
181
- return ResponseBuilder.success({
182
- message: "ADB device successfully configured.",
183
- deviceId: deviceSerial || "default",
184
- instructions
185
- });
186
- } catch (e) {
187
- return ResponseBuilder.error(`Failed to configure ADB device: ${e.message}`);
188
- }
189
- }
190
- };
191
- //#endregion
192
- export { ProxyHandlers };
@@ -1,34 +0,0 @@
1
- import { n as DOMInspector, r as CodeCollector, t as ScriptManager } from "./ScriptManager-ZuWD-0Jg.mjs";
2
- import { t as PageController } from "./PageController-BPJNqqBN.mjs";
3
- //#region src/server/registry/types.ts
4
- /**
5
- * Helper: create a name-based lookup from a Tool array.
6
- * Throws at module load time if a tool name is missing — acts as a build-time guard.
7
- */
8
- function toolLookup(tools) {
9
- const map = new Map(tools.map((t) => [t.name, t]));
10
- return (name) => {
11
- const tool = map.get(name);
12
- if (!tool) throw new Error(`[registry] Tool definition not found: "${name}"`);
13
- return tool;
14
- };
15
- }
16
- //#endregion
17
- //#region src/server/registry/ensure-browser-core.ts
18
- let ConsoleMonitorClass = null;
19
- async function getConsoleMonitorClass() {
20
- if (!ConsoleMonitorClass) ConsoleMonitorClass = (await import("./ConsoleMonitor-DykL3IAw.mjs").then((n) => n.t)).ConsoleMonitor;
21
- return ConsoleMonitorClass;
22
- }
23
- async function ensureBrowserCore(ctx) {
24
- if (!ctx.collector) {
25
- ctx.collector = new CodeCollector(ctx.config.puppeteer);
26
- ctx.registerCaches();
27
- }
28
- if (!ctx.pageController) ctx.pageController = new PageController(ctx.collector);
29
- if (!ctx.domInspector) ctx.domInspector = new DOMInspector(ctx.collector);
30
- if (!ctx.scriptManager) ctx.scriptManager = new ScriptManager(ctx.collector);
31
- if (!ctx.consoleMonitor) ctx.consoleMonitor = new (await (getConsoleMonitorClass()))(ctx.collector);
32
- }
33
- //#endregion
34
- export { toolLookup as n, ensureBrowserCore as t };
@@ -1,34 +0,0 @@
1
- //#region src/server/domains/shared/response.ts
2
- function toErrorMessage(error) {
3
- if (error instanceof Error) return error.message;
4
- return String(error);
5
- }
6
- function asTextResponse(text, isError = false) {
7
- return {
8
- content: [{
9
- type: "text",
10
- text
11
- }],
12
- ...isError ? { isError: true } : {}
13
- };
14
- }
15
- function asJsonResponse(payload) {
16
- return asTextResponse(JSON.stringify(payload, null, 2));
17
- }
18
- function isToolResponse(value) {
19
- return value !== null && typeof value === "object" && Array.isArray(value.content);
20
- }
21
- function asToolResponse(payload) {
22
- return isToolResponse(payload) ? payload : asJsonResponse(payload);
23
- }
24
- function asErrorResponse(error) {
25
- return asTextResponse(`Error: ${toErrorMessage(error)}`, true);
26
- }
27
- function serializeError(error) {
28
- return {
29
- success: false,
30
- error: toErrorMessage(error)
31
- };
32
- }
33
- //#endregion
34
- export { serializeError as a, asToolResponse as i, asJsonResponse as n, asTextResponse as r, asErrorResponse as t };