@jshookmcp/jshook 0.3.0 → 0.3.2
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/LICENSE +661 -661
- package/README.md +32 -49
- package/README.zh.md +32 -47
- package/dist/AntiCheatDetector-B6d4Qe9D.mjs +1 -0
- package/dist/BrowserSessionCoordinator-BJ-HOxo0.mjs +1 -0
- package/dist/CacheAdapters-CsNtQIR8.mjs +1 -0
- package/dist/CodeInjector-Cll_7bLJ.mjs +1 -0
- package/dist/ConsoleMonitor-CxDJV15E.mjs +306 -0
- package/dist/DOMInspector-C19J4zeq.mjs +95 -0
- package/dist/DarwinAPI-ZfQdpLNI.mjs +1 -0
- package/dist/DetailedDataManager-DmQ1LT-W.mjs +1 -0
- package/dist/EventBus-DL8iLA09.mjs +1 -0
- package/dist/EvidenceGraphBridge-BtbwXsLC.mjs +1 -0
- package/dist/ExtensionManager-BD724zkO.mjs +1 -0
- package/dist/ExtensionManager.tools-oVMJgPcN.mjs +1 -0
- package/dist/FingerprintManager-DT0EAUEo.mjs +1 -0
- package/dist/HardwareBreakpoint-BUfPdp0f.mjs +1 -0
- package/dist/HeapAnalyzer-B_aqY8oj.mjs +1 -0
- package/dist/{HookGeneratorBuilders.core.generators.storage-CTbB4Lcx.mjs → HookGeneratorBuilders.core.generators.storage-DzD6dIJd.mjs} +66 -101
- package/dist/InstrumentationSession-D_G1ZPyd.mjs +1 -0
- package/dist/MCPServer.search.handlers.domain-BbS-6LnX.mjs +1 -0
- package/dist/MemoryController-X1XNSn1n.mjs +2 -0
- package/dist/MemoryScanSession-DG_F-PjE.mjs +1 -0
- package/dist/MemoryScanner-g1_L1ub5.mjs +1 -0
- package/dist/NativeMemoryManager.impl-DniBe2wf.mjs +1 -0
- package/dist/NativeMemoryManager.utils-BHy1P_jM.mjs +1 -0
- package/dist/NetworkMonitor-B_-au6aV.mjs +185 -0
- package/dist/PEAnalyzer-yWQaGrcx.mjs +1 -0
- package/dist/PageController-Dfsm1_o7.mjs +1 -0
- package/dist/PointerChainEngine-BhCUkmxY.mjs +1 -0
- package/dist/PrerequisiteError-BjCQA-gK.mjs +1 -0
- package/dist/ProcessRegistry-C-bN48oR.mjs +1 -0
- package/dist/ResponseBuilder-BfWP-uaT.mjs +1 -0
- package/dist/ReverseEvidenceGraph-BhSYYdiI.mjs +2 -0
- package/dist/RingBuffer-Dm54ELKT.mjs +1 -0
- package/dist/ScriptManager-LWGPTdvD.mjs +7 -0
- package/dist/ServerRuntimeState-D2bWHqEE.mjs +1 -0
- package/dist/Speedhack-yseDPSZ9.mjs +1 -0
- package/dist/StealthVerifier-BmcxfwSF.mjs +1 -0
- package/dist/StructureAnalyzer-C5lpuZkg.mjs +2 -0
- package/dist/ToolCatalog-CYdD9F5f.mjs +1 -0
- package/dist/ToolError-DWU_z7gp.mjs +1 -0
- package/dist/ToolProbe-C7ZU2x7M.mjs +1 -0
- package/dist/ToolRegistry-C5oB8KP8.mjs +1 -0
- package/dist/ToolRouter.policy-CfhJczkt.mjs +4 -0
- package/dist/TraceRecorder-BiJWBXHX.mjs +272 -0
- package/dist/VersionDetector-CHT36Az0.mjs +9 -0
- package/dist/Win32API-eUCF57l_.mjs +1 -0
- package/dist/Win32Debug-CYrIQBvr.mjs +1 -0
- package/dist/WorkflowEngine-D876meOO.mjs +1 -0
- package/dist/analysis-D4swdMvq.mjs +6 -0
- package/dist/{antidebug-BRKeyt27.mjs → antidebug-7L3ygj_9.mjs} +8 -259
- package/dist/apk-packer-BqXcInnX.mjs +1 -0
- package/dist/artifactRetention-BCPQASm7.mjs +1 -0
- package/dist/artifacts-CkodUM4j.mjs +1 -0
- package/dist/authorization-schema-BOFwSXUN.mjs +1 -0
- package/dist/betterSqlite3-Brtq-SIQ.mjs +1 -0
- package/dist/binary-instrument-DU7V6TUM.mjs +7 -0
- package/dist/binary-secrets-PdMVoyt0.mjs +1 -0
- package/dist/bind-helpers-m2U8glkF.mjs +1 -0
- package/dist/boringssl-inspector-BBaJwwkU.mjs +2 -0
- package/dist/browser-Qqco2rOT.mjs +11 -0
- package/dist/capabilities-CyXuKUl1.mjs +1 -0
- package/dist/chunk-C_pMuVsO.mjs +1 -0
- package/dist/collector-Bpl6qy2L.mjs +1 -0
- package/dist/concurrency-DCr8WQ2M.mjs +1 -0
- package/dist/constants-BYj8Xek8.mjs +1 -0
- package/dist/coordination-CWXW1o8K.mjs +1 -0
- package/dist/dart-inspector-7AkPeZ_Q.mjs +0 -0
- package/dist/debugger-DyALjYMk.mjs +1 -0
- package/dist/definitions-BWxBke3r.mjs +1 -0
- package/dist/definitions-BYwATKc-.mjs +1 -0
- package/dist/definitions-B_83XfNQ.mjs +1 -0
- package/dist/definitions-Bf3H1EwV.mjs +1 -0
- package/dist/definitions-BftdXgXI.mjs +1 -0
- package/dist/definitions-Bio5XJYy.mjs +1 -0
- package/dist/definitions-C3qNgSn1.mjs +1 -0
- package/dist/definitions-CB6vmOer.mjs +1 -0
- package/dist/definitions-CMZRSy3k.mjs +1 -0
- package/dist/definitions-CQd7yCQH.mjs +1 -0
- package/dist/definitions-CT8ln6GQ.mjs +1 -0
- package/dist/definitions-Cenu6mxo.mjs +1 -0
- package/dist/definitions-D4g-MS10.mjs +1 -0
- package/dist/definitions-D5wl_8HN.mjs +1 -0
- package/dist/definitions-DAQm1Xar.mjs +1 -0
- package/dist/definitions-DP1vgxEY.mjs +1 -0
- package/dist/definitions-DxFNRQNK2.mjs +1 -0
- package/dist/definitions-Ibci7e_L.mjs +1 -0
- package/dist/definitions-OeLvmlQy.mjs +1 -0
- package/dist/definitions-RZYGD_Ey.mjs +1 -0
- package/dist/definitions-Tls8c0A0.mjs +1 -0
- package/dist/definitions-bybDvnG0.mjs +26 -0
- package/dist/definitions-l7TjdE6V.mjs +1 -0
- package/dist/encoding-ycOaz8Vr.mjs +2 -0
- package/dist/ensure-browser-core-DxWC-NTp.mjs +1 -0
- package/dist/evidence-graph-bridge-CV_UdYqj.mjs +1 -0
- package/dist/factory-CKr4fAE1.mjs +1 -0
- package/dist/flat-target-session-DvcQX7J5.mjs +1 -0
- package/dist/formatAddress-vLA_hOJt.mjs +1 -0
- package/dist/graphql-B2TiPEow.mjs +62 -0
- package/dist/handlers-0yKLRIfo.mjs +2 -0
- package/dist/handlers-8zN_vBIz.mjs +1 -0
- package/dist/handlers-B62K4FTc.mjs +1 -0
- package/dist/handlers-BpDlVVVU.mjs +1 -0
- package/dist/handlers-CMJK7m1c.mjs +31 -0
- package/dist/handlers-D2ZOul9p.mjs +54 -0
- package/dist/handlers-D5E40ssn.mjs +5 -0
- package/dist/handlers-DGbdQAgD.mjs +4 -0
- package/dist/handlers-DHO3rjsW.mjs +1 -0
- package/dist/handlers-FJ80VzUI.mjs +2 -0
- package/dist/handlers-VHWrxbM_.mjs +1 -0
- package/dist/handlers-l8QIKqBj.mjs +2 -0
- package/dist/handlers-mPFiNPe8.mjs +302 -0
- package/dist/{handlers-Dz9PYsCa.mjs → handlers-yo_xYzT8.mjs} +118 -904
- package/dist/handlers.impl-D9Hh8Bgl.mjs +1 -0
- package/dist/hooks-D4XLfgtV.mjs +600 -0
- package/dist/index.mjs +13 -5240
- package/dist/jadx-search-B_Yse0Zh.mjs +5 -0
- package/dist/logger-sBC6IdRT.mjs +1 -0
- package/dist/maintenance-BUpIukhg.mjs +1 -0
- package/dist/manifest-0Jpt_AQa.mjs +1 -0
- package/dist/manifest-B3fZbSWR.mjs +1 -0
- package/dist/manifest-B7NB2rh2.mjs +1 -0
- package/dist/manifest-BDi4nbH1.mjs +1 -0
- package/dist/manifest-BLDfkE7n.mjs +1 -0
- package/dist/manifest-BcXbB4gf.mjs +1 -0
- package/dist/manifest-Bdnc_vrc.mjs +1 -0
- package/dist/manifest-BuYKgCnp.mjs +1 -0
- package/dist/manifest-CBfNnGPV.mjs +1 -0
- package/dist/manifest-CPS1Xv69.mjs +1 -0
- package/dist/manifest-CQH9FhwI.mjs +1 -0
- package/dist/manifest-CRryuZF4.mjs +1 -0
- package/dist/manifest-CctIumog.mjs +1 -0
- package/dist/manifest-CvTe5ZGV2.mjs +1 -0
- package/dist/manifest-D-5GH0DV.mjs +1 -0
- package/dist/manifest-D3Ssf3IC.mjs +1 -0
- package/dist/manifest-D5ck3NvC.mjs +1 -0
- package/dist/manifest-D9jUUJAu.mjs +1 -0
- package/dist/manifest-DCx6w2XV.mjs +1 -0
- package/dist/manifest-DG19q-Ld.mjs +1 -0
- package/dist/manifest-DLMlD0Zc.mjs +1 -0
- package/dist/manifest-DYpn8w_h.mjs +1 -0
- package/dist/manifest-DYzWI8Xs.mjs +1 -0
- package/dist/manifest-D_obs5F4.mjs +1 -0
- package/dist/manifest-DujQqEQR.mjs +2 -0
- package/dist/manifest-DwL2ik8P.mjs +1 -0
- package/dist/manifest-ItF5P8A12.mjs +1 -0
- package/dist/manifest-KZphqIyX.mjs +1 -0
- package/dist/manifest-LG42zPLY2.mjs +1 -0
- package/dist/manifest-LLdI5m4T.mjs +1 -0
- package/dist/manifest-QYbQXJn0.mjs +1 -0
- package/dist/manifest-RcpX_MyZ.mjs +123 -0
- package/dist/manifest-YgVd8Sgz.mjs +1 -0
- package/dist/manifest-Zy7Odg5J.mjs +1 -0
- package/dist/manifest-ff1H7Pdp.mjs +1 -0
- package/dist/manifest-iuhF6pTL2.mjs +1 -0
- package/dist/manifest-nXHmtMSp2.mjs +1 -0
- package/dist/manifest-xWfu6iLo.mjs +1 -0
- package/dist/manifest-yC16OhL2.mjs +1 -0
- package/dist/manifest-ztWJoXy4.mjs +1 -0
- package/dist/matchesWildcardPattern-BAG6LvX5.mjs +1 -0
- package/dist/modules-BPBcSaM-.mjs +333 -0
- package/dist/mojo-ipc-BhwsdVUW.mjs +9 -0
- package/dist/native/scripts/linux/enum-windows.sh +12 -12
- package/dist/native/scripts/macos/enum-windows.applescript +22 -22
- package/dist/native-j8l473zn.mjs +961 -0
- package/dist/network-T0VRwNPd.mjs +7 -0
- package/dist/outputPaths-B4Ic4RZh.mjs +2 -0
- package/dist/parse-args-Bw413PlW.mjs +1 -0
- package/dist/platform-CzaQtISh.mjs +93 -0
- package/dist/playwright-cdp-fallback-DqFdx9-s.mjs +1 -0
- package/dist/process-CWhsCWrf.mjs +2 -0
- package/dist/proxy-DZFlDsG3.mjs +2 -0
- package/dist/registry-DH4sc1dt.mjs +1 -0
- package/dist/renderer-pid-9tJnZ_9N.mjs +1 -0
- package/dist/response-C7rKQst4.mjs +1 -0
- package/dist/search-defaults-lYBVn_3L.mjs +1 -0
- package/dist/server/plugin-api.d.mts +19 -36
- package/dist/server/plugin-api.mjs +1 -293
- package/dist/shared-state-board-BSjXLUV1.mjs +1 -0
- package/dist/sourcemap-Dh3Ai_ur.mjs +1 -0
- package/dist/ssrf-policy-CsIJGkpd.mjs +1 -0
- package/dist/streaming-BcJ0B6ao.mjs +1 -0
- package/dist/tool-builder-qif8M9-K.mjs +1 -0
- package/dist/transform-DOxzeWPB.mjs +103 -0
- package/dist/types-D9EiE5o9.mjs +1 -0
- package/dist/types-Fz69RzbZ.mjs +1 -0
- package/dist/wasm-CZ_HTfKR.mjs +174 -0
- package/dist/webcrack-C1iYG_EX.mjs +46 -0
- package/dist/workflow-BdwQmARn.mjs +101 -0
- package/package.json +55 -82
- package/src/native/scripts/linux/enum-windows.sh +12 -12
- package/src/native/scripts/macos/enum-windows.applescript +22 -22
- package/dist/AntiCheatDetector-CqGDXmfc.mjs +0 -350
- package/dist/CacheAdapters-jJFy20G-.mjs +0 -80
- package/dist/CodeInjector-BdjRfNx7.mjs +0 -150
- package/dist/ConsoleMonitor-DykL3IAw.mjs +0 -2269
- package/dist/DarwinAPI-ETyy0xyo.mjs +0 -363
- package/dist/DetailedDataManager-HT49OrvF.mjs +0 -217
- package/dist/EventBus-DFKvADm3.mjs +0 -141
- package/dist/EvidenceGraphBridge-318Oi0Lf.mjs +0 -153
- package/dist/ExtensionManager-BDMsY2Dz.mjs +0 -721
- package/dist/FingerprintManager-BN4UQWnX.mjs +0 -96
- package/dist/HardwareBreakpoint-Cc2AFq1Y.mjs +0 -239
- package/dist/HeapAnalyzer-DruMgsgj.mjs +0 -284
- package/dist/InstrumentationSession-DLH0vd-z.mjs +0 -244
- package/dist/MemoryController-CMtviNW_.mjs +0 -167
- package/dist/MemoryScanSession-ITgb_NMi.mjs +0 -278
- package/dist/MemoryScanner-CiL7Z3ey.mjs +0 -428
- package/dist/NativeMemoryManager.impl-D9Lkovvn.mjs +0 -485
- package/dist/NativeMemoryManager.utils-BBlAixF5.mjs +0 -165
- package/dist/PEAnalyzer-DMQ44gen.mjs +0 -385
- package/dist/PageController-BPJNqqBN.mjs +0 -431
- package/dist/PointerChainEngine-K7wN8Z-w.mjs +0 -325
- package/dist/PrerequisiteError-TuyZIs6n.mjs +0 -20
- package/dist/ProcessRegistry-zGg12QbE.mjs +0 -74
- package/dist/ResponseBuilder-CJXWmWNw.mjs +0 -143
- package/dist/ReverseEvidenceGraph-C02-gXOh.mjs +0 -269
- package/dist/ScriptManager-ZuWD-0Jg.mjs +0 -3003
- package/dist/Speedhack-D-z0umeT.mjs +0 -156
- package/dist/StealthVerifier-BWmPgQsv.mjs +0 -135
- package/dist/StructureAnalyzer-Cav5AVSL.mjs +0 -429
- package/dist/ToolCatalog-5OJdMiF0.mjs +0 -582
- package/dist/ToolError-jh9whhMd.mjs +0 -15
- package/dist/ToolProbe-DbCFGyrg.mjs +0 -45
- package/dist/ToolRegistry-B9krbTtI.mjs +0 -180
- package/dist/ToolRouter.policy-BGDAGyeH.mjs +0 -344
- package/dist/TraceRecorder-B41Z5XBj.mjs +0 -1286
- package/dist/VersionDetector-K3V4vGsw.mjs +0 -104
- package/dist/Win32API-C2kjj0ze.mjs +0 -346
- package/dist/Win32Debug-CKrGOTpo.mjs +0 -274
- package/dist/WorkflowEngine-DJ6M4opp.mjs +0 -569
- package/dist/analysis-BHeJW2Nb.mjs +0 -1234
- package/dist/artifactRetention-CPXkUJXp.mjs +0 -598
- package/dist/artifacts-DkfosXH3.mjs +0 -59
- package/dist/authorization-schema-DRqyJMSk.mjs +0 -31
- package/dist/betterSqlite3-DLSBZodi.mjs +0 -74
- package/dist/binary-instrument--V3MAhJ4.mjs +0 -971
- package/dist/bind-helpers-ClV34xdn.mjs +0 -42
- package/dist/boringssl-inspector-Bo_LOLaS.mjs +0 -180
- package/dist/browser-Dx3_S2cG.mjs +0 -4369
- package/dist/capabilities-CcHlvWgK.mjs +0 -33
- package/dist/chunk-CjcI7cDX.mjs +0 -15
- package/dist/concurrency-Drev_Vz9.mjs +0 -41
- package/dist/constants-CDZLOoVv.mjs +0 -534
- package/dist/coordination-DgItD9DL.mjs +0 -259
- package/dist/debugger-RS3RSAqs.mjs +0 -1288
- package/dist/definitions-BEoYofW5.mjs +0 -47
- package/dist/definitions-BRaefg3u.mjs +0 -365
- package/dist/definitions-BbkvZkiv.mjs +0 -96
- package/dist/definitions-BtWSHJ3o.mjs +0 -17
- package/dist/definitions-C1gCHO0i.mjs +0 -43
- package/dist/definitions-CDOg_b-l.mjs +0 -138
- package/dist/definitions-CVPD9hzZ.mjs +0 -54
- package/dist/definitions-Cea8Lgl7.mjs +0 -94
- package/dist/definitions-DAgIyjxM.mjs +0 -10
- package/dist/definitions-DJA27nsL.mjs +0 -66
- package/dist/definitions-DKPFU3LW.mjs +0 -25
- package/dist/definitions-DPRpZQ96.mjs +0 -47
- package/dist/definitions-DUE5gmdn.mjs +0 -18
- package/dist/definitions-DYVjOtxa.mjs +0 -26
- package/dist/definitions-DcYLVLCo.mjs +0 -37
- package/dist/definitions-Pp5LI2H4.mjs +0 -27
- package/dist/definitions-j9KdHVNR.mjs +0 -14
- package/dist/definitions-uzkjBwa7.mjs +0 -258
- package/dist/definitions-va-AnLuQ.mjs +0 -28
- package/dist/encoding-DJeqHmpd.mjs +0 -1079
- package/dist/evidence-graph-bridge-DcYizFk2.mjs +0 -136
- package/dist/factory-C90tBff6.mjs +0 -575
- package/dist/flat-target-session-Dgax2Cy3.mjs +0 -29
- package/dist/formatAddress-nnMvEohD.mjs +0 -17
- package/dist/graphql-CoHrhweh.mjs +0 -1197
- package/dist/handlers-4jmR0nMs.mjs +0 -898
- package/dist/handlers-BAHPxcch.mjs +0 -789
- package/dist/handlers-BOs9b907.mjs +0 -2600
- package/dist/handlers-BWXEy6ef.mjs +0 -917
- package/dist/handlers-Bndn6QvE.mjs +0 -111
- package/dist/handlers-BqC4bD4s.mjs +0 -681
- package/dist/handlers-BtYq60bM2.mjs +0 -276
- package/dist/handlers-BzgcB4iv.mjs +0 -799
- package/dist/handlers-CRyRWj2b.mjs +0 -859
- package/dist/handlers-CVv2H1uq.mjs +0 -592
- package/dist/handlers-Dl5a7JS4.mjs +0 -572
- package/dist/handlers-Dx2d7jt7.mjs +0 -2537
- package/dist/handlers-HujRKC3b.mjs +0 -661
- package/dist/handlers.impl-XWXkQfyi.mjs +0 -807
- package/dist/hooks-B1B8NRHL.mjs +0 -898
- package/dist/logger-Dh_xb7_2.mjs +0 -93
- package/dist/maintenance-PRMkLVRW.mjs +0 -835
- package/dist/manifest-67Bok-Si.mjs +0 -58
- package/dist/manifest-6lNTMZAB2.mjs +0 -87
- package/dist/manifest-B2duEHiH.mjs +0 -90
- package/dist/manifest-B6EY9Vm8.mjs +0 -57
- package/dist/manifest-B6nKSbyY.mjs +0 -95
- package/dist/manifest-BL8AQNPF.mjs +0 -106
- package/dist/manifest-BSZvJJmV.mjs +0 -47
- package/dist/manifest-BU7qzUyX.mjs +0 -418
- package/dist/manifest-Bl62e8WK.mjs +0 -49
- package/dist/manifest-Bo5cXjdt.mjs +0 -82
- package/dist/manifest-BpS4gtUK.mjs +0 -1347
- package/dist/manifest-Bv65_e2W.mjs +0 -101
- package/dist/manifest-BytNIF4Z.mjs +0 -117
- package/dist/manifest-C-xtsjS3.mjs +0 -81
- package/dist/manifest-CDYl7OhA.mjs +0 -66
- package/dist/manifest-CRZ3xmkD.mjs +0 -61
- package/dist/manifest-CoW6u4Tp.mjs +0 -132
- package/dist/manifest-Cq5zN_8A.mjs +0 -50
- package/dist/manifest-D7YZM_2e.mjs +0 -194
- package/dist/manifest-DE_VrAeQ.mjs +0 -314
- package/dist/manifest-DGsXSCpT.mjs +0 -39
- package/dist/manifest-DJ2vfEuW.mjs +0 -156
- package/dist/manifest-DPXDYhEu.mjs +0 -80
- package/dist/manifest-Dd4fQb0a.mjs +0 -322
- package/dist/manifest-Deq6opGg.mjs +0 -223
- package/dist/manifest-DfJTafJK.mjs +0 -37
- package/dist/manifest-DgOdgN_j.mjs +0 -50
- package/dist/manifest-DlbMW4v4.mjs +0 -47
- package/dist/manifest-DmVfbH0w.mjs +0 -374
- package/dist/manifest-Dog6Ddjr.mjs +0 -109
- package/dist/manifest-DvgU5FWb.mjs +0 -58
- package/dist/manifest-HsfDBs7j.mjs +0 -50
- package/dist/manifest-I8oQHvCG.mjs +0 -186
- package/dist/manifest-NvH_a-av.mjs +0 -786
- package/dist/manifest-cEJU1v0Z.mjs +0 -129
- package/dist/manifest-wOl5XLB12.mjs +0 -112
- package/dist/modules-tZozf0LQ.mjs +0 -10635
- package/dist/mojo-ipc-DXNEXEqb.mjs +0 -640
- package/dist/network-CPVvwvFg.mjs +0 -3852
- package/dist/outputPaths-um7lCRY3.mjs +0 -1141
- package/dist/parse-args-B4cY5Vx5.mjs +0 -39
- package/dist/platform-CYeFoTWp.mjs +0 -2161
- package/dist/process-BTbgcVc6.mjs +0 -1306
- package/dist/proxy-r8YN6nP1.mjs +0 -192
- package/dist/registry-Bl8ZQW61.mjs +0 -34
- package/dist/response-CWhh2aLo.mjs +0 -34
- package/dist/shared-state-board-BoZnSoj-.mjs +0 -586
- package/dist/sourcemap-BIDHUVXy.mjs +0 -934
- package/dist/ssrf-policy-Dsqd-DTX.mjs +0 -166
- package/dist/streaming-Dal6utPp.mjs +0 -725
- package/dist/tool-builder-BHJp32mV.mjs +0 -186
- package/dist/transform-DRVgGG90.mjs +0 -1011
- package/dist/types-Bx92KJfT.mjs +0 -4
- package/dist/types-DDBWs9UP.mjs +0 -37
- package/dist/wasm-BYx5UOeG.mjs +0 -1044
- package/dist/webcrack-Be0_FccV.mjs +0 -747
- package/dist/workflow-BpuKEtvn.mjs +0 -725
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
import{Hn as e,Un as t,Wn as n}from"./constants-BYj8Xek8.mjs";import{randomUUID as r}from"node:crypto";const i=e,a=n*1024*1024;let o=null;function s(){return o||=import(`quickjs-emscripten`).then(e=>e.getQuickJS()),o}function c(e,t){if(t==null)return e.undefined;switch(typeof t){case`string`:return e.newString(t);case`number`:return e.newNumber(t);case`boolean`:return t?e.true:e.false;case`object`:{if(Array.isArray(t)){let n=e.newArray();for(let r=0;r<t.length;r++){let i=c(e,t[r]);e.setProp(n,r,i),i.dispose()}return n}let n=e.newObject();for(let[r,i]of Object.entries(t)){let t=c(e,i);e.setProp(n,r,t),t.dispose()}return n}default:return e.newString(String(t))}}function l(e,t){switch(e.typeof(t)){case`undefined`:return;case`number`:return e.getNumber(t);case`string`:return e.getString(t);case`boolean`:return e.dump(t);case`object`:return e.dump(t);default:return e.dump(t)}}var u=class{bridge=null;setBridge(e){this.bridge=e}async execute(e,t={}){let n=t.timeoutMs??i,r=t.memoryLimitBytes??a,o=(await s()).newRuntime();o.setMemoryLimit(r);let c=Date.now(),u=!1;o.setInterruptHandler(()=>Date.now()-c>n?(u=!0,!0):!1);let d=o.newContext(),f=[];try{this.injectConsole(d,f),this.injectHelpers(d),this.bridge&&this.injectBridge(d,this.bridge,f),t.globals&&this.injectGlobals(d,t.globals);let n=d.evalCode(e,`sandbox-eval.js`);if(n.error){let e=d.dump(n.error);return n.error.dispose(),u?{ok:!1,error:`Execution timed out`,timedOut:!0,durationMs:Date.now()-c,logs:f}:{ok:!1,error:typeof e==`object`?JSON.stringify(e):String(e),timedOut:!1,durationMs:Date.now()-c,logs:f}}let r=l(d,n.value);return n.value.dispose(),{ok:!0,output:r,timedOut:!1,durationMs:Date.now()-c,logs:f}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e),timedOut:u,durationMs:Date.now()-c,logs:f}}finally{d.dispose(),o.dispose()}}async executeWithOrchestration(e,t,n={}){let r=n.maxBridgeCalls??10,i=Date.now(),a=[],o=[];n.bridgeAllowlist&&t.setAllowlist(n.bridgeAllowlist);let s={},c,l=0;for(;l<=r;){let r={...n.globals,__bridgeRound:l};l>0&&(r.__bridgeResults=s);let u=await this.executeOneRound(e,t,{...n,globals:r});if(a.push(...u.logs),!u.ok||u.timedOut)return{...u,logs:a,durationMs:Date.now()-i,bridgeCallCount:o.length,bridgeCalls:o};if(c=u.output,!t.hasPending())break;let d=t.drainPending(),f={};for(let e of d)try{let n=await t.call(e.toolName,e.args);f[e.id]=n,o.push({toolName:e.toolName,args:e.args,result:n})}catch(t){let n=t instanceof Error?t.message:String(t);f[e.id]={__error:!0,message:n},o.push({toolName:e.toolName,args:e.args,result:{__error:!0,message:n}})}s={...s,...f},l++}return{ok:!0,output:c,timedOut:!1,durationMs:Date.now()-i,logs:a,bridgeCallCount:o.length,bridgeCalls:o}}async executeOneRound(e,t,n={}){let r=n.timeoutMs??i,o=n.memoryLimitBytes??a,c=(await s()).newRuntime();c.setMemoryLimit(o);let u=Date.now(),d=!1;c.setInterruptHandler(()=>Date.now()-u>r?(d=!0,!0):!1);let f=c.newContext(),p=[];try{this.injectConsole(f,p),this.injectHelpers(f),this.injectBridgeForOrchestration(f,t,p),n.globals&&this.injectGlobals(f,n.globals);let r=f.evalCode(e,`sandbox-eval.js`);if(r.error){let e=f.dump(r.error);return r.error.dispose(),d?{ok:!1,error:`Execution timed out`,timedOut:!0,durationMs:Date.now()-u,logs:p}:{ok:!1,error:typeof e==`object`?JSON.stringify(e):String(e),timedOut:!1,durationMs:Date.now()-u,logs:p}}let i=l(f,r.value);return r.value.dispose(),{ok:!0,output:i,timedOut:!1,durationMs:Date.now()-u,logs:p}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e),timedOut:d,durationMs:Date.now()-u,logs:p}}finally{f.dispose(),c.dispose()}}injectConsole(e,t){let n=e.newObject(),r=e.newFunction(`log`,(...n)=>{let r=n.map(t=>{let n=l(e,t);return typeof n==`string`?n:JSON.stringify(n)});t.push(r.join(` `))});e.setProp(n,`log`,r),e.setProp(n,`warn`,r),e.setProp(n,`error`,r),e.setProp(e.global,`console`,n),r.dispose(),n.dispose()}injectGlobals(e,t){for(let[n,r]of Object.entries(t)){let t=c(e,r);e.setProp(e.global,n,t),t.dispose()}}injectHelpers(e){let t=e.evalCode(`
|
|
2
|
+
(function() {
|
|
3
|
+
var helpers = {};
|
|
4
|
+
|
|
5
|
+
// ── base64 ──
|
|
6
|
+
helpers.base64 = {
|
|
7
|
+
_chars: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',
|
|
8
|
+
encode: function(str) {
|
|
9
|
+
var output = '';
|
|
10
|
+
var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
|
|
11
|
+
var i = 0;
|
|
12
|
+
while (i < str.length) {
|
|
13
|
+
chr1 = str.charCodeAt(i++);
|
|
14
|
+
chr2 = str.charCodeAt(i++);
|
|
15
|
+
chr3 = str.charCodeAt(i++);
|
|
16
|
+
enc1 = chr1 >> 2;
|
|
17
|
+
enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
|
|
18
|
+
enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
|
|
19
|
+
enc4 = chr3 & 63;
|
|
20
|
+
if (isNaN(chr2)) { enc3 = enc4 = 64; }
|
|
21
|
+
else if (isNaN(chr3)) { enc4 = 64; }
|
|
22
|
+
output += this._chars.charAt(enc1) + this._chars.charAt(enc2) +
|
|
23
|
+
this._chars.charAt(enc3) + this._chars.charAt(enc4);
|
|
24
|
+
}
|
|
25
|
+
return output;
|
|
26
|
+
},
|
|
27
|
+
decode: function(str) {
|
|
28
|
+
var output = '';
|
|
29
|
+
var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
|
|
30
|
+
var i = 0;
|
|
31
|
+
str = str.replace(/[^A-Za-z0-9+/=]/g, '');
|
|
32
|
+
while (i < str.length) {
|
|
33
|
+
enc1 = this._chars.indexOf(str.charAt(i++));
|
|
34
|
+
enc2 = this._chars.indexOf(str.charAt(i++));
|
|
35
|
+
enc3 = this._chars.indexOf(str.charAt(i++));
|
|
36
|
+
enc4 = this._chars.indexOf(str.charAt(i++));
|
|
37
|
+
chr1 = (enc1 << 2) | (enc2 >> 4);
|
|
38
|
+
chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
|
|
39
|
+
chr3 = ((enc3 & 3) << 6) | enc4;
|
|
40
|
+
output += String.fromCharCode(chr1);
|
|
41
|
+
if (enc3 !== 64) output += String.fromCharCode(chr2);
|
|
42
|
+
if (enc4 !== 64) output += String.fromCharCode(chr3);
|
|
43
|
+
}
|
|
44
|
+
return output;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// ── hex ──
|
|
49
|
+
helpers.hex = {
|
|
50
|
+
encode: function(str) {
|
|
51
|
+
var hex = '';
|
|
52
|
+
for (var i = 0; i < str.length; i++) {
|
|
53
|
+
hex += ('0' + str.charCodeAt(i).toString(16)).slice(-2);
|
|
54
|
+
}
|
|
55
|
+
return hex;
|
|
56
|
+
},
|
|
57
|
+
decode: function(hex) {
|
|
58
|
+
var str = '';
|
|
59
|
+
for (var i = 0; i < hex.length; i += 2) {
|
|
60
|
+
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
|
|
61
|
+
}
|
|
62
|
+
return str;
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
// ── hash (simple djb2/fnv for in-sandbox use; NOT cryptographic!) ──
|
|
67
|
+
helpers.hash = {
|
|
68
|
+
djb2: function(str) {
|
|
69
|
+
var hash = 5381;
|
|
70
|
+
for (var i = 0; i < str.length; i++) {
|
|
71
|
+
hash = ((hash << 5) + hash) + str.charCodeAt(i);
|
|
72
|
+
hash = hash & hash; // Convert to 32-bit
|
|
73
|
+
}
|
|
74
|
+
return (hash >>> 0).toString(16);
|
|
75
|
+
},
|
|
76
|
+
fnv1a: function(str) {
|
|
77
|
+
var hash = 0x811c9dc5;
|
|
78
|
+
for (var i = 0; i < str.length; i++) {
|
|
79
|
+
hash ^= str.charCodeAt(i);
|
|
80
|
+
hash = Math.imul(hash, 0x01000193);
|
|
81
|
+
}
|
|
82
|
+
return (hash >>> 0).toString(16);
|
|
83
|
+
},
|
|
84
|
+
/** Simple MD5 — pure JS implementation */
|
|
85
|
+
md5: function(str) {
|
|
86
|
+
// Lightweight MD5 for sandbox use
|
|
87
|
+
function md5cycle(x, k) {
|
|
88
|
+
var a = x[0], b = x[1], c = x[2], d = x[3];
|
|
89
|
+
a = ff(a,b,c,d,k[0],7,0xd76aa478);
|
|
90
|
+
d=ff(d,a,b,c,k[1],12,0xe8c7b756);
|
|
91
|
+
c=ff(c,d,a,b,k[2],17,0x242070db);
|
|
92
|
+
b=ff(b,c,d,a,k[3],22,0xc1bdceee);
|
|
93
|
+
a=ff(a,b,c,d,k[4],7,0xf57c0faf);
|
|
94
|
+
d=ff(d,a,b,c,k[5],12,0x4787c62a);
|
|
95
|
+
c=ff(c,d,a,b,k[6],17,0xa8304613);
|
|
96
|
+
b=ff(b,c,d,a,k[7],22,0xfd469501);
|
|
97
|
+
a=ff(a,b,c,d,k[8],7,0x698098d8);
|
|
98
|
+
d=ff(d,a,b,c,k[9],12,0x8b44f7af);
|
|
99
|
+
c=ff(c,d,a,b,k[10],17,0xffff5bb1);
|
|
100
|
+
b=ff(b,c,d,a,k[11],22,0x895cd7be);
|
|
101
|
+
a=ff(a,b,c,d,k[12],7,0x6b901122);
|
|
102
|
+
d=ff(d,a,b,c,k[13],12,0xfd987193);
|
|
103
|
+
c=ff(c,d,a,b,k[14],17,0xa679438e);
|
|
104
|
+
b=ff(b,c,d,a,k[15],22,0x49b40821);
|
|
105
|
+
a=gg(a,b,c,d,k[1],5,0xf61e2562);
|
|
106
|
+
d=gg(d,a,b,c,k[6],9,0xc040b340);
|
|
107
|
+
c=gg(c,d,a,b,k[11],14,0x265e5a51);
|
|
108
|
+
b=gg(b,c,d,a,k[0],20,0xe9b6c7aa);
|
|
109
|
+
a=gg(a,b,c,d,k[5],5,0xd62f105d);
|
|
110
|
+
d=gg(d,a,b,c,k[10],9,0x02441453);
|
|
111
|
+
c=gg(c,d,a,b,k[15],14,0xd8a1e681);
|
|
112
|
+
b=gg(b,c,d,a,k[4],20,0xe7d3fbc8);
|
|
113
|
+
a=gg(a,b,c,d,k[9],5,0x21e1cde6);
|
|
114
|
+
d=gg(d,a,b,c,k[14],9,0xc33707d6);
|
|
115
|
+
c=gg(c,d,a,b,k[3],14,0xf4d50d87);
|
|
116
|
+
b=gg(b,c,d,a,k[8],20,0x455a14ed);
|
|
117
|
+
a=gg(a,b,c,d,k[13],5,0xa9e3e905);
|
|
118
|
+
d=gg(d,a,b,c,k[2],9,0xfcefa3f8);
|
|
119
|
+
c=gg(c,d,a,b,k[7],14,0x676f02d9);
|
|
120
|
+
b=gg(b,c,d,a,k[12],20,0x8d2a4c8a);
|
|
121
|
+
a=hh(a,b,c,d,k[5],4,0xfffa3942);
|
|
122
|
+
d=hh(d,a,b,c,k[8],11,0x8771f681);
|
|
123
|
+
c=hh(c,d,a,b,k[11],16,0x6d9d6122);
|
|
124
|
+
b=hh(b,c,d,a,k[14],23,0xfde5380c);
|
|
125
|
+
a=hh(a,b,c,d,k[1],4,0xa4beea44);
|
|
126
|
+
d=hh(d,a,b,c,k[4],11,0x4bdecfa9);
|
|
127
|
+
c=hh(c,d,a,b,k[7],16,0xf6bb4b60);
|
|
128
|
+
b=hh(b,c,d,a,k[10],23,0xbebfbc70);
|
|
129
|
+
a=hh(a,b,c,d,k[13],4,0x289b7ec6);
|
|
130
|
+
d=hh(d,a,b,c,k[0],11,0xeaa127fa);
|
|
131
|
+
c=hh(c,d,a,b,k[3],16,0xd4ef3085);
|
|
132
|
+
b=hh(b,c,d,a,k[6],23,0x04881d05);
|
|
133
|
+
a=hh(a,b,c,d,k[9],4,0xd9d4d039);
|
|
134
|
+
d=hh(d,a,b,c,k[12],11,0xe6db99e5);
|
|
135
|
+
c=hh(c,d,a,b,k[15],16,0x1fa27cf8);
|
|
136
|
+
b=hh(b,c,d,a,k[2],23,0xc4ac5665);
|
|
137
|
+
a=ii(a,b,c,d,k[0],6,0xf4292244);
|
|
138
|
+
d=ii(d,a,b,c,k[7],10,0x432aff97);
|
|
139
|
+
c=ii(c,d,a,b,k[14],15,0xab9423a7);
|
|
140
|
+
b=ii(b,c,d,a,k[5],21,0xfc93a039);
|
|
141
|
+
a=ii(a,b,c,d,k[12],6,0x655b59c3);
|
|
142
|
+
d=ii(d,a,b,c,k[3],10,0x8f0ccc92);
|
|
143
|
+
c=ii(c,d,a,b,k[10],15,0xffeff47d);
|
|
144
|
+
b=ii(b,c,d,a,k[1],21,0x85845dd1);
|
|
145
|
+
a=ii(a,b,c,d,k[8],6,0x6fa87e4f);
|
|
146
|
+
d=ii(d,a,b,c,k[15],10,0xfe2ce6e0);
|
|
147
|
+
c=ii(c,d,a,b,k[6],15,0xa3014314);
|
|
148
|
+
b=ii(b,c,d,a,k[13],21,0x4e0811a1);
|
|
149
|
+
a=ii(a,b,c,d,k[4],6,0xf7537e82);
|
|
150
|
+
d=ii(d,a,b,c,k[11],10,0xbd3af235);
|
|
151
|
+
c=ii(c,d,a,b,k[2],15,0x2ad7d2bb);
|
|
152
|
+
b=ii(b,c,d,a,k[9],21,0xeb86d391);
|
|
153
|
+
x[0]=add32(a,x[0]);x[1]=add32(b,x[1]);x[2]=add32(c,x[2]);x[3]=add32(d,x[3]);
|
|
154
|
+
}
|
|
155
|
+
function cmn(q,a,b,x,s,t){a=add32(add32(a,q),add32(x,t));return add32((a<<s)|(a>>>(32-s)),b)}
|
|
156
|
+
function ff(a,b,c,d,x,s,t){return cmn((b&c)|((~b)&d),a,b,x,s,t)}
|
|
157
|
+
function gg(a,b,c,d,x,s,t){return cmn((b&d)|(c&(~d)),a,b,x,s,t)}
|
|
158
|
+
function hh(a,b,c,d,x,s,t){return cmn(b^c^d,a,b,x,s,t)}
|
|
159
|
+
function ii(a,b,c,d,x,s,t){return cmn(c^(b|(~d)),a,b,x,s,t)}
|
|
160
|
+
function add32(a,b){return(a+b)&0xFFFFFFFF}
|
|
161
|
+
|
|
162
|
+
var n = str.length;
|
|
163
|
+
var state = [1732584193,-271733879,-1732584194,271733878];
|
|
164
|
+
var tail = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
|
|
165
|
+
var i;
|
|
166
|
+
for (i = 64; i <= n; i += 64) {
|
|
167
|
+
var blk = [];
|
|
168
|
+
for (var j = i - 64; j < i; j += 4) {
|
|
169
|
+
blk.push(str.charCodeAt(j)|(str.charCodeAt(j+1)<<8)|(str.charCodeAt(j+2)<<16)|(str.charCodeAt(j+3)<<24));
|
|
170
|
+
}
|
|
171
|
+
md5cycle(state, blk);
|
|
172
|
+
}
|
|
173
|
+
for (var j = 0; j < 16; j++) tail[j] = 0;
|
|
174
|
+
for (i = i - 64; i < n; i++) {
|
|
175
|
+
tail[i>>2] |= str.charCodeAt(i) << ((i%4)<<3);
|
|
176
|
+
}
|
|
177
|
+
tail[i>>2] |= 0x80 << ((i%4)<<3);
|
|
178
|
+
if (i > 55) { md5cycle(state, tail); for (j = 0; j < 16; j++) tail[j] = 0; }
|
|
179
|
+
tail[14] = n * 8;
|
|
180
|
+
md5cycle(state, tail);
|
|
181
|
+
|
|
182
|
+
var hex_chr = '0123456789abcdef';
|
|
183
|
+
var s = '';
|
|
184
|
+
for (i = 0; i < 4; i++) {
|
|
185
|
+
for (j = 0; j < 4; j++) {
|
|
186
|
+
s += hex_chr.charAt((state[i] >> (j*8+4)) & 0x0F) + hex_chr.charAt((state[i] >> (j*8)) & 0x0F);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
return s;
|
|
190
|
+
},
|
|
191
|
+
sha256: function(str) {
|
|
192
|
+
// Minimal pure-JS SHA-256
|
|
193
|
+
var K = [0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,
|
|
194
|
+
0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,
|
|
195
|
+
0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,
|
|
196
|
+
0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967,
|
|
197
|
+
0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,
|
|
198
|
+
0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,
|
|
199
|
+
0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,
|
|
200
|
+
0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2];
|
|
201
|
+
function rr(x,n){return(x>>>n)|(x<<(32-n))}
|
|
202
|
+
var H=[0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19];
|
|
203
|
+
var msg=[];
|
|
204
|
+
for(var i=0;i<str.length;i++)msg.push(str.charCodeAt(i));
|
|
205
|
+
msg.push(0x80);
|
|
206
|
+
var l=msg.length;
|
|
207
|
+
while(l%64!==56){msg.push(0);l++;}
|
|
208
|
+
var bits=str.length*8;
|
|
209
|
+
for(i=7;i>=0;i--)msg.push((bits>>>(i*8))&0xff);
|
|
210
|
+
for(var offset=0;offset<msg.length;offset+=64){
|
|
211
|
+
var W=[];
|
|
212
|
+
for(i=0;i<16;i++)W[i]=(msg[offset+i*4]<<24)|(msg[offset+i*4+1]<<16)|(msg[offset+i*4+2]<<8)|msg[offset+i*4+3];
|
|
213
|
+
for(i=16;i<64;i++){
|
|
214
|
+
var s0=rr(W[i-15],7)^rr(W[i-15],18)^(W[i-15]>>>3);
|
|
215
|
+
var s1=rr(W[i-2],17)^rr(W[i-2],19)^(W[i-2]>>>10);
|
|
216
|
+
W[i]=(W[i-16]+s0+W[i-7]+s1)|0;
|
|
217
|
+
}
|
|
218
|
+
var a=H[0],b=H[1],c=H[2],d=H[3],e=H[4],f=H[5],g=H[6],h=H[7];
|
|
219
|
+
for(i=0;i<64;i++){
|
|
220
|
+
var S1=rr(e,6)^rr(e,11)^rr(e,25);
|
|
221
|
+
var ch=(e&f)^((~e)&g);
|
|
222
|
+
var t1=(h+S1+ch+K[i]+W[i])|0;
|
|
223
|
+
var S0=rr(a,2)^rr(a,13)^rr(a,22);
|
|
224
|
+
var maj=(a&b)^(a&c)^(b&c);
|
|
225
|
+
var t2=(S0+maj)|0;
|
|
226
|
+
h=g;g=f;f=e;e=(d+t1)|0;d=c;c=b;b=a;a=(t1+t2)|0;
|
|
227
|
+
}
|
|
228
|
+
H[0]=(H[0]+a)|0;H[1]=(H[1]+b)|0;H[2]=(H[2]+c)|0;H[3]=(H[3]+d)|0;
|
|
229
|
+
H[4]=(H[4]+e)|0;H[5]=(H[5]+f)|0;H[6]=(H[6]+g)|0;H[7]=(H[7]+h)|0;
|
|
230
|
+
}
|
|
231
|
+
var hex='';
|
|
232
|
+
for(i=0;i<8;i++)for(var j=7;j>=0;j--)hex+='0123456789abcdef'.charAt((H[i]>>>(j*4))&0xf);
|
|
233
|
+
return hex;
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
|
|
237
|
+
// ── json ──
|
|
238
|
+
helpers.json = {
|
|
239
|
+
safeParse: function(str) {
|
|
240
|
+
try { return { ok: true, value: JSON.parse(str) }; }
|
|
241
|
+
catch(e) { return { ok: false, error: e.message }; }
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
|
|
245
|
+
// ── array ──
|
|
246
|
+
helpers.array = {
|
|
247
|
+
chunk: function(arr, size) {
|
|
248
|
+
var result = [];
|
|
249
|
+
for (var i = 0; i < arr.length; i += size) {
|
|
250
|
+
result.push(arr.slice(i, i + size));
|
|
251
|
+
}
|
|
252
|
+
return result;
|
|
253
|
+
},
|
|
254
|
+
flatten: function(arr) {
|
|
255
|
+
var result = [];
|
|
256
|
+
for (var i = 0; i < arr.length; i++) {
|
|
257
|
+
if (Array.isArray(arr[i])) {
|
|
258
|
+
result = result.concat(this.flatten(arr[i]));
|
|
259
|
+
} else {
|
|
260
|
+
result.push(arr[i]);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
return result;
|
|
264
|
+
},
|
|
265
|
+
unique: function(arr) {
|
|
266
|
+
var seen = {};
|
|
267
|
+
var result = [];
|
|
268
|
+
for (var i = 0; i < arr.length; i++) {
|
|
269
|
+
var key = JSON.stringify(arr[i]);
|
|
270
|
+
if (!seen[key]) {
|
|
271
|
+
seen[key] = true;
|
|
272
|
+
result.push(arr[i]);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
return result;
|
|
276
|
+
}
|
|
277
|
+
};
|
|
278
|
+
|
|
279
|
+
// ── string ──
|
|
280
|
+
helpers.string = {
|
|
281
|
+
camelCase: function(s) {
|
|
282
|
+
return s.replace(/[-_\\s]+(\\w)/g, function(_, c) { return c.toUpperCase(); })
|
|
283
|
+
.replace(/^\\w/, function(c) { return c.toLowerCase(); });
|
|
284
|
+
},
|
|
285
|
+
snakeCase: function(s) {
|
|
286
|
+
return s.replace(/([A-Z])/g, '_$1').toLowerCase()
|
|
287
|
+
.replace(/[-\\s]+/g, '_')
|
|
288
|
+
.replace(/^_/, '');
|
|
289
|
+
},
|
|
290
|
+
truncate: function(s, len) {
|
|
291
|
+
if (s.length <= len) return s;
|
|
292
|
+
return s.slice(0, len - 3) + '...';
|
|
293
|
+
}
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
// Expose to global scope
|
|
297
|
+
globalThis.helpers = helpers;
|
|
298
|
+
})();
|
|
299
|
+
`,`sandbox-helpers.js`);t.error?(e.dump(t.error),t.error.dispose()):t.value.dispose()}injectBridge(e,t,n){let r=e.newObject(),i=e.newFunction(`call`,(t,r)=>{let i=e.getString(t),a=e.dump(r)??{};return n.push(`[mcp.call] ${i}(${JSON.stringify(a)})`),c(e,{pending:!0,tool:i})}),a=e.newFunction(`listTools`,()=>c(e,t.listAvailableTools()));e.setProp(r,`call`,i),e.setProp(r,`listTools`,a),e.setProp(e.global,`mcp`,r),i.dispose(),a.dispose(),r.dispose()}injectBridgeForOrchestration(e,t,n){let r=e.newObject(),i=e.newFunction(`call`,(r,i)=>{let a=e.getString(r),o=e.dump(i)??{};try{let r=t.enqueue(a,o);return n.push(`[mcp.call] enqueued ${a}(${JSON.stringify(o)}) → ${r}`),c(e,{__bridgeCall:!0,callId:r})}catch(t){let r=t instanceof Error?t.message:String(t);return n.push(`[mcp.call] rejected ${a}: ${r}`),c(e,{__bridgeCall:!1,error:r})}}),a=e.newFunction(`listTools`,()=>c(e,t.listAvailableTools()));e.setProp(r,`call`,i),e.setProp(r,`listTools`,a),e.setProp(e.global,`mcp`,r),i.dispose(),a.dispose(),r.dispose()}},d=class{ctx;allowlist=null;pendingCalls=[];constructor(e){this.ctx=e}setAllowlist(e){this.allowlist=e?new Set(e):null}enqueue(e,t={}){if(!(this.ctx.selectedTools?.map(e=>e.name)??[]).includes(e))throw Error(`Tool "${e}" is not a registered MCP tool`);if(this.allowlist&&!this.allowlist.has(e))throw Error(`Tool "${e}" is not in the sandbox allowlist`);let n=r().slice(0,8);return this.pendingCalls.push({id:n,toolName:e,args:t}),n}drainPending(){let e=[...this.pendingCalls];return this.pendingCalls.length=0,e}hasPending(){return this.pendingCalls.length>0}async call(e,t={}){if(this.allowlist&&!this.allowlist.has(e))throw Error(`Tool "${e}" is not in the sandbox allowlist`);if(!this.listAvailableTools().includes(e))throw Error(`Tool "${e}" is not a registered MCP tool`);let n=await this.ctx.executeToolWithTracking(e,t);if(n.content&&Array.isArray(n.content)){let e=[];for(let t of n.content)t.type===`text`&&e.push(t.text);let t=e.join(`
|
|
300
|
+
`);try{return JSON.parse(t)}catch{return t}}return n}listAvailableTools(){let e=this.ctx.selectedTools.map(e=>e.name);return this.allowlist?e.filter(e=>this.allowlist.has(e)):e}},f=class{store=new Map;set(e,t,n){let r=this.store.get(e);r||(r=new Map,this.store.set(e,r)),r.set(t,JSON.stringify(n))}get(e,t){let n=this.store.get(e);if(!n)return;let r=n.get(t);if(r!==void 0)try{return JSON.parse(r)}catch{return r}}getAll(e){let t=this.store.get(e);if(!t)return{};let n={};for(let[e,r]of t)try{n[e]=JSON.parse(r)}catch{n[e]=r}return n}keys(e){let t=this.store.get(e);return t?Array.from(t.keys()):[]}clear(e){this.store.delete(e)}clearAll(){this.store.clear()}};async function p(e,t,n={},r=2){let i=null,a=t;for(let o=0;o<=r;o++){if(i=await e.execute(a,n),i.ok||i.timedOut)return{...i,retryCount:o};o<r&&(a=`/* Previous error (attempt ${o+1}): ${i.error??`unknown error`} */\n${t}`)}return{...i,retryCount:r}}var m=class{ctx;scratchpad=new f;constructor(e){this.ctx=e}async handleExecuteSandboxScript(e){let n=e.code,r=e.sessionId??void 0,i=e.timeoutMs??void 0,a=e.autoCorrect??!1;if(!n||typeof n!=`string`)return{content:[{type:`text`,text:JSON.stringify({ok:!1,error:`code parameter is required`})}]};let o=new u,s=new d(this.ctx);o.setBridge(s);let c={};if(i!==void 0){let e=t;c.timeoutMs=Math.min(Math.max(1,Number.isFinite(i)?i:0),e)}if(r){c.sessionId=r;let e=this.scratchpad.getAll(r);c.globals={...c.globals,__scratchpad:e}}let l;if(l=a?await p(o,n,c):await o.execute(n,c),r&&l.ok&&l.output&&typeof l.output==`object`){let e=l.output;if(e.__scratchpad&&typeof e.__scratchpad==`object`)for(let[t,n]of Object.entries(e.__scratchpad))this.scratchpad.set(r,t,n)}return{content:[{type:`text`,text:[`**Status:** ${l.ok?`✓ Success`:`✗ Failed`}`,l.timedOut?`**Timed out:** yes`:``,`**Duration:** ${l.durationMs}ms`,l.logs.length>0?`**Console output:**\n\`\`\`\n${l.logs.join(`
|
|
301
|
+
`)}\n\`\`\``:``,l.output===void 0?``:`**Result:** ${JSON.stringify(l.output)}`,l.error?`**Error:** ${l.error}`:``].filter(Boolean).join(`
|
|
302
|
+
`)}]}}};export{m as SandboxToolHandlers};
|