rea-agents 4.1.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (757) hide show
  1. package/README.md +173 -568
  2. package/bridge/android/ReaJadxBridge.java +247 -0
  3. package/bridge/mitmproxy/capture.py +210 -0
  4. package/bridge/native/NativeUIChildren.swift +27 -0
  5. package/bridge/native/ReaNativeUI.swift +30 -16
  6. package/bridge/native/rea_lldb_tracer.py +303 -0
  7. package/bridge/process/ProcessRunTokenReader.swift +263 -0
  8. package/bridge/process/ProcessRunTokenReaderMain.swift +35 -0
  9. package/bridge/pwndbg/core_context.py +101 -0
  10. package/bridge/pwndbg/launch.py +39 -0
  11. package/bridge/pwndbg/launch_impl.py +34 -0
  12. package/bridge/pwntools/decoder_runtime.py +59 -0
  13. package/bridge/pwntools/layout.py +39 -0
  14. package/bridge/pwntools/layout_impl.py +309 -0
  15. package/bridge/pwntools/recorded_crash.py +39 -0
  16. package/bridge/pwntools/recorded_crash_impl.py +143 -0
  17. package/dist/android/AndroidTargetSnapshot.js +5 -3
  18. package/dist/android/JadxAnalysis.js +8 -6
  19. package/dist/android/JadxConfiguration.js +19 -3
  20. package/dist/android/JadxMcpTransport.js +43 -16
  21. package/dist/android/JadxProtocol.js +8 -0
  22. package/dist/android/JadxProvider.js +118 -28
  23. package/dist/android/JadxRelease.js +8 -0
  24. package/dist/android/JadxSession.js +32 -18
  25. package/dist/application/AppBundleExecutable.js +141 -0
  26. package/dist/application/BinaryTargetResolver.js +9 -64
  27. package/dist/application/CapabilityInventory.js +82 -3
  28. package/dist/application/ClientConfigurationDocument.js +72 -12
  29. package/dist/application/ClientRegistrationStatus.js +7 -8
  30. package/dist/application/DirectAnalysis.js +109 -37
  31. package/dist/application/DirectAnalysisStatus.js +4 -5
  32. package/dist/application/DoctorDiagnostics.js +3 -3
  33. package/dist/application/EnhancedTools.js +4 -4
  34. package/dist/application/EvidenceBundleCommands.js +1 -1
  35. package/dist/application/EvidenceBundleFiles.js +1 -1
  36. package/dist/application/InvestigationProviders.js +6 -0
  37. package/dist/application/LinuxHopper.js +8 -2
  38. package/dist/application/OptionalObservationProviders.js +3 -0
  39. package/dist/application/ReconstructionCoverageService.js +2 -6
  40. package/dist/application/ReconstructionObligationCandidates.js +10 -3
  41. package/dist/application/ReferenceSourceImport.js +2 -0
  42. package/dist/application/ReferenceSourceImportEntries.js +20 -3
  43. package/dist/application/ReferenceSourceImportTypes.js +5 -0
  44. package/dist/application/Setup.js +10 -2
  45. package/dist/application/SetupClientConfiguration.js +19 -16
  46. package/dist/application/SetupHost.js +18 -3
  47. package/dist/application/SetupPlan.js +1 -1
  48. package/dist/application/Uninstall.js +23 -17
  49. package/dist/application/UpdateMaintenance.js +3 -3
  50. package/dist/application/ValidateSelectedWebScript.js +27 -0
  51. package/dist/application/WebModuleTraceService.js +209 -0
  52. package/dist/application/WebNetworkCaptureService.js +132 -0
  53. package/dist/application/WebRuntimeService.js +73 -0
  54. package/dist/application/WebScriptExportService.js +115 -0
  55. package/dist/application/WebSourceLocationService.js +160 -0
  56. package/dist/application/WindowsCapabilities.js +1 -1
  57. package/dist/application/{AndroidAnalysisService.js → android/AndroidAnalysisService.js} +6 -6
  58. package/dist/application/{AndroidApplicationService.js → android/AndroidApplicationService.js} +3 -3
  59. package/dist/application/{AppleApplicationService.js → apple/AppleApplicationService.js} +5 -5
  60. package/dist/application/{AnalysisClientCleanup.js → binary/AnalysisClientCleanup.js} +2 -2
  61. package/dist/application/{AnalysisProviderEvaluation.js → binary/AnalysisProviderEvaluation.js} +4 -4
  62. package/dist/application/{AnalysisProviderRegistry.js → binary/AnalysisProviderRegistry.js} +5 -5
  63. package/dist/application/{AnalysisSnapshotCache.js → binary/AnalysisSnapshotCache.js} +55 -14
  64. package/dist/application/{AnalysisSnapshotFiles.js → binary/AnalysisSnapshotFiles.js} +4 -4
  65. package/dist/application/{BinarySession.js → binary/BinarySession.js} +50 -20
  66. package/dist/application/{BinarySessionComposition.js → binary/BinarySessionComposition.js} +2 -1
  67. package/dist/application/{BinarySessionExecution.js → binary/BinarySessionExecution.js} +9 -7
  68. package/dist/application/{BinarySessionOpen.js → binary/BinarySessionOpen.js} +22 -9
  69. package/dist/application/{BinarySessionRecords.js → binary/BinarySessionRecords.js} +48 -40
  70. package/dist/application/{CompositeProvider.js → binary/CompositeProvider.js} +2 -2
  71. package/dist/application/{LazyAnalysisProvider.js → binary/LazyAnalysisProvider.js} +6 -6
  72. package/dist/application/{SessionProviderRouter.js → binary/SessionProviderRouter.js} +7 -7
  73. package/dist/application/binaryDiagnostics/BinaryLayoutService.js +57 -0
  74. package/dist/application/binaryDiagnostics/RecordedCrashPort.js +1 -0
  75. package/dist/application/binaryDiagnostics/RecordedCrashService.js +60 -0
  76. package/dist/application/evm/EvmInterfacePort.js +1 -0
  77. package/dist/application/evm/EvmInterfaceService.js +62 -0
  78. package/dist/application/firmware/FirmwareAnalysisPort.js +1 -0
  79. package/dist/application/{FirmwareAnalysisService.js → firmware/FirmwareAnalysisService.js} +5 -5
  80. package/dist/application/{EvidenceLedger.js → investigation/EvidenceLedger.js} +44 -7
  81. package/dist/application/investigation/InvestigationRecordPort.js +1 -0
  82. package/dist/application/investigation/InvestigationRecords.js +69 -0
  83. package/dist/application/{UnknownEvidence.js → investigation/UnknownEvidence.js} +1 -1
  84. package/dist/application/{ElectronActiveEvidence.js → javascript/ElectronActiveEvidence.js} +3 -3
  85. package/dist/application/javascript/ElectronActiveObservationPort.js +1 -0
  86. package/dist/application/{ElectronActiveObservationService.js → javascript/ElectronActiveObservationService.js} +3 -3
  87. package/dist/application/{ElectronBoundaryAnalysis.js → javascript/ElectronBoundaryAnalysis.js} +1 -1
  88. package/dist/application/{ElectronBoundaryGraphContext.js → javascript/ElectronBoundaryGraphContext.js} +1 -1
  89. package/dist/application/{ElectronEvidence.js → javascript/ElectronEvidence.js} +2 -2
  90. package/dist/application/javascript/ElectronObservationPort.js +1 -0
  91. package/dist/application/{ElectronObservationService.js → javascript/ElectronObservationService.js} +3 -3
  92. package/dist/application/{JavaScriptApplicationEvidence.js → javascript/JavaScriptApplicationEvidence.js} +3 -4
  93. package/dist/application/{JavaScriptApplicationEvidenceGraph.js → javascript/JavaScriptApplicationEvidenceGraph.js} +5 -5
  94. package/dist/application/{JavaScriptApplicationService.js → javascript/JavaScriptApplicationService.js} +25 -12
  95. package/dist/application/{JavaScriptApplicationWorkflowEvidence.js → javascript/JavaScriptApplicationWorkflowEvidence.js} +3 -3
  96. package/dist/application/{JavaScriptApplicationWorkflowService.js → javascript/JavaScriptApplicationWorkflowService.js} +12 -12
  97. package/dist/application/{JavaScriptArtifactAnalysis.js → javascript/JavaScriptArtifactAnalysis.js} +50 -47
  98. package/dist/application/javascript/JavaScriptArtifactAnalysisTypes.js +1 -0
  99. package/dist/application/{JavaScriptArtifactGraphAccumulator.js → javascript/JavaScriptArtifactGraphAccumulator.js} +16 -2
  100. package/dist/application/{JavaScriptArtifactGraphBuilder.js → javascript/JavaScriptArtifactGraphBuilder.js} +2 -2
  101. package/dist/application/{JavaScriptArtifactGraphContext.js → javascript/JavaScriptArtifactGraphContext.js} +1 -1
  102. package/dist/application/{JavaScriptArtifactGraphDocuments.js → javascript/JavaScriptArtifactGraphDocuments.js} +27 -3
  103. package/dist/application/{JavaScriptArtifactGraphFindings.js → javascript/JavaScriptArtifactGraphFindings.js} +20 -7
  104. package/dist/application/{JavaScriptArtifactGraphStructure.js → javascript/JavaScriptArtifactGraphStructure.js} +1 -1
  105. package/dist/application/{JavaScriptArtifactPathResolution.js → javascript/JavaScriptArtifactPathResolution.js} +80 -36
  106. package/dist/application/{JavaScriptArtifactReconstruction.js → javascript/JavaScriptArtifactReconstruction.js} +26 -17
  107. package/dist/application/{JavaScriptJsonModules.js → javascript/JavaScriptJsonModules.js} +1 -1
  108. package/dist/application/{JavaScriptModuleRelationships.js → javascript/JavaScriptModuleRelationships.js} +2 -2
  109. package/dist/application/javascript/JavaScriptRecoveryPort.js +1 -0
  110. package/dist/application/javascript/JavaScriptRecoveryService.js +52 -0
  111. package/dist/application/{JavaScriptReturnShapeProjection.js → javascript/JavaScriptReturnShapeProjection.js} +3 -3
  112. package/dist/application/{JavaScriptRuntimeObservationEvidence.js → javascript/JavaScriptRuntimeObservationEvidence.js} +2 -2
  113. package/dist/application/javascript/JavaScriptRuntimeObservationPort.js +1 -0
  114. package/dist/application/{JavaScriptRuntimeObservationService.js → javascript/JavaScriptRuntimeObservationService.js} +3 -3
  115. package/dist/application/{JavaScriptRuntimeReconciliationEvidence.js → javascript/JavaScriptRuntimeReconciliationEvidence.js} +3 -3
  116. package/dist/application/{JavaScriptRuntimeReconciliationService.js → javascript/JavaScriptRuntimeReconciliationService.js} +6 -6
  117. package/dist/application/{JavaScriptSemanticGraphAsyncProjection.js → javascript/JavaScriptSemanticGraphAsyncProjection.js} +8 -8
  118. package/dist/application/{JavaScriptSemanticGraphBuilder.js → javascript/JavaScriptSemanticGraphBuilder.js} +150 -73
  119. package/dist/application/{JavaScriptSemanticGraphChildProcessProjection.js → javascript/JavaScriptSemanticGraphChildProcessProjection.js} +15 -16
  120. package/dist/application/{JavaScriptSemanticGraphConstruction.js → javascript/JavaScriptSemanticGraphConstruction.js} +43 -2
  121. package/dist/application/{JavaScriptSemanticGraphDataProjection.js → javascript/JavaScriptSemanticGraphDataProjection.js} +8 -8
  122. package/dist/application/{JavaScriptSemanticGraphFingerprintProjection.js → javascript/JavaScriptSemanticGraphFingerprintProjection.js} +1 -1
  123. package/dist/application/{JavaScriptSemanticGraphFlowProjection.js → javascript/JavaScriptSemanticGraphFlowProjection.js} +7 -11
  124. package/dist/application/{JavaScriptSemanticGraphObjectProjection.js → javascript/JavaScriptSemanticGraphObjectProjection.js} +4 -4
  125. package/dist/application/javascript/JavaScriptSemanticGraphProjection.js +144 -0
  126. package/dist/application/{JavaScriptSemanticGraphResourceProjection.js → javascript/JavaScriptSemanticGraphResourceProjection.js} +4 -4
  127. package/dist/application/{JavaScriptSemanticGraphValueProjection.js → javascript/JavaScriptSemanticGraphValueProjection.js} +5 -5
  128. package/dist/application/{JavaScriptSemanticTraceService.js → javascript/JavaScriptSemanticTraceService.js} +6 -6
  129. package/dist/application/{ManagedApplicationGraphService.js → managed/ManagedApplicationGraphService.js} +7 -7
  130. package/dist/application/{ManagedMemberComparisonService.js → managed/ManagedMemberComparisonService.js} +10 -10
  131. package/dist/application/{ManagedNativeVerificationService.js → managed/ManagedNativeVerificationService.js} +7 -7
  132. package/dist/application/{ManagedReconstructionService.js → managed/ManagedReconstructionService.js} +7 -7
  133. package/dist/application/{NativeApiInspection.js → native/NativeApiInspection.js} +1 -1
  134. package/dist/application/{NativeCallRoutes.js → native/NativeCallRoutes.js} +3 -3
  135. package/dist/application/{NativeDispatchMetadataInspection.js → native/NativeDispatchMetadataInspection.js} +4 -4
  136. package/dist/application/{NativeUiActionTrace.js → native/NativeUiActionTrace.js} +7 -7
  137. package/dist/application/{NativeValueTrace.js → native/NativeValueTrace.js} +6 -6
  138. package/dist/application/{ProcessCli.js → process/ProcessCli.js} +15 -11
  139. package/dist/application/{ProcessEvidence.js → process/ProcessEvidence.js} +4 -4
  140. package/dist/{application/ArtifactInventory/hash.js → artifacts/ArtifactHash.js} +4 -2
  141. package/dist/artifacts/ArtifactPaths.js +3 -3
  142. package/dist/artifacts/ArtifactProvider.js +37 -40
  143. package/dist/artifacts/ArtifactProviderMetadata.js +37 -0
  144. package/dist/artifacts/AsarArtifactReader.js +195 -23
  145. package/dist/artifacts/AsarEntryStream.js +76 -0
  146. package/dist/artifacts/DirectoryArtifactReader.js +41 -7
  147. package/dist/artifacts/NativeDmgArtifactReader.js +161 -9
  148. package/dist/artifacts/ZipArtifactReader.js +3 -0
  149. package/dist/{application → artifacts/apple}/AppleAssetCatalogAnalysis.js +4 -4
  150. package/dist/artifacts/apple/DylibResolutionReader.js +259 -0
  151. package/dist/{application → artifacts/apple}/InterfaceBuilderAnalysis.js +125 -51
  152. package/dist/artifacts/{KeyedArchiveReader.js → apple/KeyedArchiveReader.js} +21 -27
  153. package/dist/artifacts/apple/MachoLoadCommandReader.js +294 -0
  154. package/dist/artifacts/apple/NibViewHierarchy.js +150 -0
  155. package/dist/{application → artifacts/extraction}/ArtifactExtraction.js +10 -10
  156. package/dist/{application → artifacts/inventory}/ArtifactGraphConstruction.js +3 -3
  157. package/dist/{application → artifacts/inventory}/ArtifactInventory.js +4 -4
  158. package/dist/{application/ArtifactInventory → artifacts/inventory}/classify.js +2 -2
  159. package/dist/{application/ArtifactInventory → artifacts/inventory}/reader.js +5 -5
  160. package/dist/{application/ArtifactInventory → artifacts/inventory}/scanCanonical.js +3 -3
  161. package/dist/{application/ArtifactInventory → artifacts/inventory}/scanReader.js +5 -5
  162. package/dist/{application → artifacts/javascript}/JavaScriptArtifactFiles.js +27 -6
  163. package/dist/artifacts/javascript/JavaScriptArtifactReader.js +6 -0
  164. package/dist/artifacts/readStableArtifact.js +68 -0
  165. package/dist/browser/BrowserScenarioSecrets.js +50 -8
  166. package/dist/browser/CdpAuthorizedMainFrame.js +4 -4
  167. package/dist/browser/CdpAuthorizedTarget.js +22 -0
  168. package/dist/browser/CdpBrowserProvider.js +4 -15
  169. package/dist/browser/CdpCaptureDocuments.js +33 -21
  170. package/dist/browser/CdpCaptureEventBodyShapes.js +3 -3
  171. package/dist/browser/CdpCaptureEventHandlers.js +116 -28
  172. package/dist/browser/CdpCaptureEventHelpers.js +6 -6
  173. package/dist/browser/CdpCaptureEvents.js +9 -0
  174. package/dist/browser/CdpCaptureStorage.js +10 -8
  175. package/dist/browser/CdpCaptureStorageFingerprints.js +24 -22
  176. package/dist/browser/CdpCaptureValues.js +2 -2
  177. package/dist/browser/CdpCommandRejection.js +17 -0
  178. package/dist/browser/CdpConnection.js +51 -11
  179. package/dist/browser/CdpElectronInspection.js +10 -10
  180. package/dist/browser/CdpElectronProvider.js +3 -6
  181. package/dist/browser/CdpElectronScriptEvents.js +6 -6
  182. package/dist/browser/CdpElectronScripts.js +2 -2
  183. package/dist/browser/CdpElectronWorkers.js +4 -4
  184. package/dist/browser/CdpObservationSession.js +18 -23
  185. package/dist/browser/CdpPageCapture.js +4 -4
  186. package/dist/browser/CdpPageCaptureScripts.js +2 -2
  187. package/dist/browser/CdpPageCaptureWorkers.js +9 -9
  188. package/dist/browser/CdpSafeMetadata.js +48 -10
  189. package/dist/browser/CdpScreenshot.js +5 -5
  190. package/dist/browser/CdpTargetEvents.js +8 -0
  191. package/dist/browser/CdpTargetSession.js +2 -2
  192. package/dist/browser/CdpWebMcpDiscovery.js +22 -16
  193. package/dist/browser/PlaywrightBrowserScenarioProvider.js +7 -6
  194. package/dist/browser/PlaywrightElectronActiveProvider.js +15 -9
  195. package/dist/browser/PlaywrightScenarioEvents.js +59 -51
  196. package/dist/browser/PlaywrightScenarioSession.js +8 -1
  197. package/dist/browser/WebSourceMapFetcher.js +37 -53
  198. package/dist/browser/assets/LocalWebScriptArtifacts.js +87 -0
  199. package/dist/browser/assets/PageScriptCapture.js +32 -0
  200. package/dist/browser/assets/PublishWebScripts.js +74 -0
  201. package/dist/browser/assets/ScenarioScriptCapture.js +76 -0
  202. package/dist/browser/assets/ScriptCaptureAdapters.js +57 -0
  203. package/dist/browser/assets/WebArtifactReads.js +56 -0
  204. package/dist/browser/assets/WebSourceLocationArtifacts.js +40 -0
  205. package/dist/browser/execution/CdpEventListeners.js +79 -0
  206. package/dist/browser/execution/CdpExecutionCapture.js +135 -0
  207. package/dist/browser/execution/CdpExecutionCollection.js +57 -0
  208. package/dist/browser/execution/CdpExecutionWindow.js +100 -0
  209. package/dist/browser/execution/CdpListenerSelector.js +22 -0
  210. package/dist/browser/execution/CdpPreciseCoverage.js +48 -0
  211. package/dist/browser/execution/CdpRuntimeInitiator.js +18 -0
  212. package/dist/browser/execution/CdpRuntimeProtocol.js +106 -0
  213. package/dist/browser/execution/CdpRuntimeRequests.js +81 -0
  214. package/dist/browser/execution/CdpRuntimeSession.js +163 -0
  215. package/dist/browser/execution/CdpRuntimeSources.js +223 -0
  216. package/dist/browser/execution/CdpWebRuntimeProvider.js +51 -0
  217. package/dist/browser/history/CaptureFailures.js +101 -0
  218. package/dist/browser/history/CaptureFormatError.js +10 -0
  219. package/dist/browser/history/CaptureRedaction.js +65 -0
  220. package/dist/browser/history/CaptureRelease.js +12 -0
  221. package/dist/browser/history/HarCapture.js +165 -0
  222. package/dist/browser/history/HarCaptureAdapter.js +20 -0
  223. package/dist/browser/history/HarCaptureProcess.js +57 -0
  224. package/dist/browser/history/HarJson.js +91 -0
  225. package/dist/browser/history/HarSchema.js +72 -0
  226. package/dist/browser/history/HistoricalCaptureDecoder.js +186 -0
  227. package/dist/browser/history/HistoricalCaptureFormatAdapter.js +1 -0
  228. package/dist/browser/history/MitmproxyCaptureAdapter.js +42 -0
  229. package/dist/browser/modules/NativeModuleResolver.js +210 -0
  230. package/dist/browser/modules/WebModuleArtifacts.js +40 -0
  231. package/dist/browser/network/PlaywrightNetworkContent.js +71 -0
  232. package/dist/browser/network/PlaywrightScenarioNetwork.js +180 -0
  233. package/dist/browser/providerIdentities.js +24 -0
  234. package/dist/catalogIdentity.js +23 -15
  235. package/dist/cli/androidCommands.js +13 -3
  236. package/dist/cli/applicationCommands.js +39 -8
  237. package/dist/cli/artifactCommands.js +27 -2
  238. package/dist/cli/binaryDiagnosticsCommands.js +39 -0
  239. package/dist/cli/browserAdvancedCommands.js +27 -9
  240. package/dist/cli/coreAnalysisCommands.js +6 -494
  241. package/dist/cli/coreBinaryCommands.js +211 -0
  242. package/dist/cli/coreNativeCommands.js +293 -0
  243. package/dist/cli/electronCommands.js +29 -27
  244. package/dist/cli/evmCommands.js +24 -0
  245. package/dist/cli/firmwareCommands.js +9 -6
  246. package/dist/cli/javascriptApplicationAnalysis.js +17 -4
  247. package/dist/cli/javascriptRecoveryCommands.js +45 -0
  248. package/dist/cli/jsonOutput.js +133 -0
  249. package/dist/cli/managedCommands.js +4 -4
  250. package/dist/cli/managedProjectGraphCommand.js +1 -1
  251. package/dist/cli/nativeCallCommands.js +35 -0
  252. package/dist/cli/processCommands.js +1 -1
  253. package/dist/cli/referenceSourceImportStatus.js +6 -1
  254. package/dist/cli/streamedJsonOutput.js +56 -0
  255. package/dist/cli/utilityCommands.js +49 -23
  256. package/dist/cli/webModuleCommands.js +56 -0
  257. package/dist/cli/webNetworkCaptureCommands.js +40 -0
  258. package/dist/cli/webRuntimeCommands.js +60 -0
  259. package/dist/cli/webScriptCommands.js +31 -0
  260. package/dist/cli/webSourceLocationCommands.js +42 -0
  261. package/dist/cli.js +19 -3
  262. package/dist/cliBrowserContext.js +4 -2
  263. package/dist/cliBrowserScenarioCommands.js +6 -5
  264. package/dist/cliCommandNames.js +14 -0
  265. package/dist/cliJavaScriptRuntimeCommands.js +6 -4
  266. package/dist/cliJsonInput.js +38 -2
  267. package/dist/cliOutput.js +52 -11
  268. package/dist/composition/android.js +3 -0
  269. package/dist/composition/auxiliaryAnalysisProviders.js +30 -0
  270. package/dist/composition/binary.js +25 -0
  271. package/dist/composition/binaryDiagnostics.js +8 -0
  272. package/dist/composition/browserObservation.js +3 -0
  273. package/dist/composition/browserScenario.js +3 -0
  274. package/dist/composition/directAnalysis.js +17 -0
  275. package/dist/composition/electronObservation.js +3 -0
  276. package/dist/composition/electronScenario.js +3 -0
  277. package/dist/composition/evm.js +4 -0
  278. package/dist/composition/firmware.js +3 -0
  279. package/dist/composition/javascriptRecovery.js +3 -0
  280. package/dist/composition/javascriptRuntimeObservation.js +3 -0
  281. package/dist/composition/optionalObservationProviders.js +49 -0
  282. package/dist/composition/webModules.js +5 -0
  283. package/dist/composition/webNetworkCaptures.js +6 -0
  284. package/dist/composition/webRuntime.js +4 -0
  285. package/dist/composition/webSourceLocations.js +5 -0
  286. package/dist/config/parseConfig.js +22 -3
  287. package/dist/contracts/{androidToolContracts.js → android/androidToolContracts.js} +5 -5
  288. package/dist/contracts/applicationToolContracts.js +43 -8
  289. package/dist/contracts/artifactToolContracts.js +8 -2
  290. package/dist/contracts/browserCaptureToolInputSchema.js +43 -0
  291. package/dist/contracts/browserScenarioToolContracts.js +1 -1
  292. package/dist/contracts/browserToolContracts.js +4 -3
  293. package/dist/contracts/enhancedInputs.js +1 -1
  294. package/dist/contracts/errorSchemas.js +8 -1
  295. package/dist/contracts/evm/evmToolContracts.js +20 -0
  296. package/dist/contracts/{firmwareToolContracts.js → firmware/firmwareToolContracts.js} +5 -5
  297. package/dist/contracts/investigationExamples.js +2 -2
  298. package/dist/contracts/{applicationWorkflowInputContracts.js → javascript/applicationWorkflowInputContracts.js} +6 -6
  299. package/dist/contracts/{electronToolContracts.js → javascript/electronToolContracts.js} +6 -6
  300. package/dist/contracts/{javascriptApplicationWorkflowExamples.js → javascript/javascriptApplicationWorkflowExamples.js} +3 -3
  301. package/dist/contracts/javascript/javascriptRecoveryToolContracts.js +23 -0
  302. package/dist/contracts/{javascriptRuntimeObservationToolContracts.js → javascript/javascriptRuntimeObservationToolContracts.js} +3 -3
  303. package/dist/contracts/{javascriptRuntimeReconciliationExample.js → javascript/javascriptRuntimeReconciliationExample.js} +5 -5
  304. package/dist/contracts/{managedToolContracts.js → managed/managedToolContracts.js} +10 -6
  305. package/dist/contracts/{managedWorkflowExamples.js → managed/managedWorkflowExamples.js} +1 -1
  306. package/dist/contracts/{managedWorkflowToolContracts.js → managed/managedWorkflowToolContracts.js} +6 -6
  307. package/dist/contracts/mobileApplicationGraphExamples.js +105 -0
  308. package/dist/contracts/native/binaryDiagnosticsToolContracts.js +42 -0
  309. package/dist/contracts/{nativeToolContracts.js → native/nativeToolContracts.js} +31 -8
  310. package/dist/contracts/officialToolContracts.js +15 -12
  311. package/dist/contracts/process/processCaptureExample.js +2 -0
  312. package/dist/contracts/sessionLifecycleInputs.js +22 -5
  313. package/dist/contracts/sessionStatusContract.js +10 -2
  314. package/dist/contracts/sessionToolContracts.js +9 -2
  315. package/dist/contracts/sessionToolSchemas.js +10 -3
  316. package/dist/contracts/toolContractExamples.js +1 -1
  317. package/dist/contracts/toolContracts.js +19 -7
  318. package/dist/contracts/toolEffects.js +62 -0
  319. package/dist/contracts/toolOutputSchemaGroups.js +23 -19
  320. package/dist/contracts/toolOutputSchemaPrimitives.js +1 -1
  321. package/dist/contracts/webNetworkCaptureToolContracts.js +24 -0
  322. package/dist/contracts/webRuntimeToolContracts.js +43 -0
  323. package/dist/contracts/webScriptToolContracts.js +68 -0
  324. package/dist/domain/analysisErrorBase.js +15 -0
  325. package/dist/domain/analysisErrorCore.js +63 -7
  326. package/dist/domain/analysisErrorPresentation.js +29 -1
  327. package/dist/domain/analysisErrorProjection.js +53 -2
  328. package/dist/domain/analysisSnapshot.js +166 -2
  329. package/dist/domain/{androidApplication.js → android/androidApplication.js} +7 -6
  330. package/dist/domain/apple/appleApplication.js +277 -0
  331. package/dist/domain/{appleAssetCatalog.js → apple/appleAssetCatalog.js} +2 -2
  332. package/dist/domain/apple/appleBundleAnatomy.js +236 -0
  333. package/dist/domain/apple/dyldPaths.js +81 -0
  334. package/dist/domain/apple/dylibResolution.js +367 -0
  335. package/dist/domain/apple/dylibResolutionFindings.js +75 -0
  336. package/dist/domain/{interfaceBuilderGraph.js → apple/interfaceBuilderGraph.js} +47 -314
  337. package/dist/domain/apple/interfaceBuilderKeyedArchive.js +411 -0
  338. package/dist/domain/{keyedArchive.js → apple/keyedArchive.js} +10 -9
  339. package/dist/domain/apple/plistValue.js +35 -0
  340. package/dist/domain/artifactInventoryEvidence.js +12 -2
  341. package/dist/domain/artifactInventorySnapshot.js +1 -0
  342. package/dist/domain/artifactOperationError.js +5 -1
  343. package/dist/domain/artifactPathSyntax.js +26 -0
  344. package/dist/domain/browserNetworkEvidence.js +82 -0
  345. package/dist/domain/browserObservation.js +1 -1
  346. package/dist/domain/browserObservationError.js +2 -0
  347. package/dist/domain/browserObservationSchemas.js +15 -1
  348. package/dist/domain/browserScenarioCapture.js +22 -0
  349. package/dist/domain/browserScenarioCaptureValues.js +25 -0
  350. package/dist/domain/browserScenarioDiff.js +6 -3
  351. package/dist/domain/browserScenarioDiffEvidence.js +35 -1
  352. package/dist/domain/browserScenarioValues.js +21 -3
  353. package/dist/domain/browserSession.js +2 -7
  354. package/dist/domain/bundleComparison.js +2 -1
  355. package/dist/domain/callPath.js +52 -44
  356. package/dist/domain/callPathSchemas.js +1 -1
  357. package/dist/domain/canonicalDigest.js +13 -1
  358. package/dist/domain/changedBehavior.js +3 -3
  359. package/dist/domain/comparisonStatus.js +11 -0
  360. package/dist/domain/conformanceTrustGate.js +0 -16
  361. package/dist/domain/evidence.js +17 -5
  362. package/dist/domain/evidenceBundle.js +98 -35
  363. package/dist/domain/evm/evmInterface.js +63 -0
  364. package/dist/domain/explicitSensitiveFailure.js +92 -0
  365. package/dist/domain/explicitSensitiveValues.js +10 -0
  366. package/dist/domain/{firmwareAnalysis.js → firmware/firmwareAnalysis.js} +10 -3
  367. package/dist/domain/functionComparisonNormalization.js +11 -13
  368. package/dist/domain/hopperValues.js +2 -2
  369. package/dist/domain/inputIssueProjection.js +17 -2
  370. package/dist/domain/{electronActiveObservation.js → javascript/electronActiveObservation.js} +9 -4
  371. package/dist/domain/{electronObservation.js → javascript/electronObservation.js} +5 -11
  372. package/dist/domain/{electronStaticAnalysisBrowser.js → javascript/electronStaticAnalysisBrowser.js} +4 -3
  373. package/dist/domain/{electronStaticAnalysisIpc.js → javascript/electronStaticAnalysisIpc.js} +2 -2
  374. package/dist/domain/{electronStaticAnalysisNative.js → javascript/electronStaticAnalysisNative.js} +12 -13
  375. package/dist/domain/javascript/electronStaticAnalysisTypes.js +1 -0
  376. package/dist/domain/{electronStaticAnalysisValues.js → javascript/electronStaticAnalysisValues.js} +3 -3
  377. package/dist/domain/javascript/htmlArtifactReferences.js +40 -0
  378. package/dist/domain/{javascriptApplicationAnalysis.js → javascript/javascriptApplicationAnalysis.js} +2 -2
  379. package/dist/domain/{javascriptApplicationChangeGraph.js → javascript/javascriptApplicationChangeGraph.js} +1 -1
  380. package/dist/domain/{javascriptApplicationEvidenceSchemas.js → javascript/javascriptApplicationEvidenceSchemas.js} +6 -4
  381. package/dist/domain/{javascriptApplicationGraph.js → javascript/javascriptApplicationGraph.js} +2 -2
  382. package/dist/domain/{javascriptApplicationGraphSchemas.js → javascript/javascriptApplicationGraphSchemas.js} +2 -2
  383. package/dist/domain/{javascriptApplicationVersionComparison.js → javascript/javascriptApplicationVersionComparison.js} +2 -2
  384. package/dist/domain/{javascriptApplicationVersionComparisonSchemas.js → javascript/javascriptApplicationVersionComparisonSchemas.js} +3 -3
  385. package/dist/domain/{javascriptApplicationVersionItems.js → javascript/javascriptApplicationVersionItems.js} +2 -2
  386. package/dist/domain/{javascriptApplicationVersionKeys.js → javascript/javascriptApplicationVersionKeys.js} +16 -9
  387. package/dist/domain/javascript/javascriptArtifactFiles.js +1 -0
  388. package/dist/domain/{javascriptAstFingerprint.js → javascript/javascriptAstFingerprint.js} +38 -22
  389. package/dist/domain/javascript/javascriptAstValues.js +23 -0
  390. package/dist/domain/{javascriptExportShapeComparison.js → javascript/javascriptExportShapeComparison.js} +21 -5
  391. package/dist/domain/{javascriptExportShapeComparisonSchemas.js → javascript/javascriptExportShapeComparisonSchemas.js} +2 -2
  392. package/dist/domain/{javascriptExportShapeSelection.js → javascript/javascriptExportShapeSelection.js} +1 -1
  393. package/dist/domain/{javascriptExportShapeVariants.js → javascript/javascriptExportShapeVariants.js} +1 -11
  394. package/dist/domain/{javascriptFeatureSeed.js → javascript/javascriptFeatureSeed.js} +4 -3
  395. package/dist/domain/{javascriptFeatureTrace.js → javascript/javascriptFeatureTrace.js} +2 -2
  396. package/dist/domain/{javascriptFeatureTraceSchemas.js → javascript/javascriptFeatureTraceSchemas.js} +32 -18
  397. package/dist/domain/{javascriptFeatureTraversal.js → javascript/javascriptFeatureTraversal.js} +6 -2
  398. package/dist/domain/{javascriptNativeHandoff.js → javascript/javascriptNativeHandoff.js} +1 -1
  399. package/dist/domain/javascript/javascriptRecovery.js +88 -0
  400. package/dist/domain/{javascriptRuntimeLoadState.js → javascript/javascriptRuntimeLoadState.js} +1 -1
  401. package/dist/domain/{javascriptRuntimeObservation.js → javascript/javascriptRuntimeObservation.js} +2 -2
  402. package/dist/domain/{javascriptRuntimeReconciliationActive.js → javascript/javascriptRuntimeReconciliationActive.js} +3 -3
  403. package/dist/domain/{javascriptRuntimeReconciliationGraph.js → javascript/javascriptRuntimeReconciliationGraph.js} +1 -1
  404. package/dist/domain/{javascriptRuntimeReconciliationMatching.js → javascript/javascriptRuntimeReconciliationMatching.js} +2 -2
  405. package/dist/domain/{javascriptRuntimeReconciliationParsing.js → javascript/javascriptRuntimeReconciliationParsing.js} +5 -5
  406. package/dist/domain/{javascriptRuntimeReconciliationResult.js → javascript/javascriptRuntimeReconciliationResult.js} +2 -2
  407. package/dist/domain/{javascriptRuntimeReconciliationSchemas.js → javascript/javascriptRuntimeReconciliationSchemas.js} +4 -4
  408. package/dist/domain/{javascriptRuntimeStaticCandidates.js → javascript/javascriptRuntimeStaticCandidates.js} +1 -1
  409. package/dist/domain/{javascriptSemanticAnalysis.js → javascript/javascriptSemanticAnalysis.js} +40 -14
  410. package/dist/domain/{javascriptSemanticAsyncEffects.js → javascript/javascriptSemanticAsyncEffects.js} +2 -1
  411. package/dist/domain/{javascriptSemanticCallResolution.js → javascript/javascriptSemanticCallResolution.js} +10 -5
  412. package/dist/domain/{javascriptSemanticCalls.js → javascript/javascriptSemanticCalls.js} +7 -4
  413. package/dist/domain/{javascriptSemanticChildProcesses.js → javascript/javascriptSemanticChildProcesses.js} +4 -2
  414. package/dist/domain/{javascriptSemanticDataEffectHelpers.js → javascript/javascriptSemanticDataEffectHelpers.js} +7 -6
  415. package/dist/domain/{javascriptSemanticDataEffects.js → javascript/javascriptSemanticDataEffects.js} +8 -6
  416. package/dist/domain/{javascriptSemanticFingerprints.js → javascript/javascriptSemanticFingerprints.js} +40 -16
  417. package/dist/domain/{javascriptSemanticGraph.js → javascript/javascriptSemanticGraph.js} +23 -7
  418. package/dist/domain/{javascriptSemanticGraphSchemas.js → javascript/javascriptSemanticGraphSchemas.js} +3 -3
  419. package/dist/domain/javascript/javascriptSemanticMemberMutations.js +116 -0
  420. package/dist/domain/javascript/javascriptSemanticMutationValues.js +53 -0
  421. package/dist/domain/{javascriptSemanticObjects.js → javascript/javascriptSemanticObjects.js} +5 -5
  422. package/dist/domain/{javascriptSemanticPrimitives.js → javascript/javascriptSemanticPrimitives.js} +1 -1
  423. package/dist/domain/{javascriptSemanticProjection.js → javascript/javascriptSemanticProjection.js} +31 -44
  424. package/dist/domain/{javascriptSemanticPromises.js → javascript/javascriptSemanticPromises.js} +77 -22
  425. package/dist/domain/{javascriptSemanticProvenance.js → javascript/javascriptSemanticProvenance.js} +4 -1
  426. package/dist/domain/{javascriptSemanticQuery.js → javascript/javascriptSemanticQuery.js} +1 -1
  427. package/dist/domain/{javascriptSemanticQueryAssessment.js → javascript/javascriptSemanticQueryAssessment.js} +1 -1
  428. package/dist/domain/{javascriptSemanticQueryIdentity.js → javascript/javascriptSemanticQueryIdentity.js} +1 -1
  429. package/dist/domain/{javascriptSemanticQuerySchemas.js → javascript/javascriptSemanticQuerySchemas.js} +3 -3
  430. package/dist/domain/javascript/javascriptSemanticRequireOrigin.js +25 -0
  431. package/dist/domain/{javascriptSemanticResources.js → javascript/javascriptSemanticResources.js} +2 -1
  432. package/dist/domain/{javascriptSemanticReturns.js → javascript/javascriptSemanticReturns.js} +1 -1
  433. package/dist/domain/{javascriptSemanticTraceSchemas.js → javascript/javascriptSemanticTraceSchemas.js} +2 -2
  434. package/dist/domain/javascript/javascriptSemanticTraversal.js +55 -0
  435. package/dist/domain/javascript/javascriptSemanticValueTypes.js +1 -0
  436. package/dist/domain/{javascriptSemanticValues.js → javascript/javascriptSemanticValues.js} +72 -48
  437. package/dist/domain/{javascriptStaticAnalysis.js → javascript/javascriptStaticAnalysis.js} +7 -4
  438. package/dist/domain/{javascriptStaticAnalysisBundler.js → javascript/javascriptStaticAnalysisBundler.js} +14 -11
  439. package/dist/domain/{javascriptStaticAnalysisCalls.js → javascript/javascriptStaticAnalysisCalls.js} +2 -2
  440. package/dist/domain/{javascriptStaticAnalysisHelpers.js → javascript/javascriptStaticAnalysisHelpers.js} +231 -40
  441. package/dist/domain/{sourceToBundleComparison.js → javascript/sourceToBundleComparison.js} +2 -2
  442. package/dist/domain/{sourceToBundleComparisonSchemas.js → javascript/sourceToBundleComparisonSchemas.js} +4 -4
  443. package/dist/domain/{sourceToBundleSignals.js → javascript/sourceToBundleSignals.js} +2 -2
  444. package/dist/domain/jsonValue.js +4 -0
  445. package/dist/domain/localPath.js +2 -0
  446. package/dist/domain/{managedApplicationGraph.js → managed/managedApplicationGraph.js} +4 -4
  447. package/dist/domain/{managedApplicationGraphNodes.js → managed/managedApplicationGraphNodes.js} +1 -1
  448. package/dist/domain/{managedArtifact.js → managed/managedArtifact.js} +1 -1
  449. package/dist/domain/{managedMemberComparison.js → managed/managedMemberComparison.js} +4 -4
  450. package/dist/domain/{managedMemberComparisonCoverage.js → managed/managedMemberComparisonCoverage.js} +2 -1
  451. package/dist/domain/{managedMemberComparisonItems.js → managed/managedMemberComparisonItems.js} +97 -40
  452. package/dist/domain/{managedMemberComparisonMatch.js → managed/managedMemberComparisonMatch.js} +22 -11
  453. package/dist/domain/{managedNativeVerification.js → managed/managedNativeVerification.js} +1 -1
  454. package/dist/domain/{managedNativeVerificationMatch.js → managed/managedNativeVerificationMatch.js} +3 -3
  455. package/dist/domain/{managedNativeVerificationSchemas.js → managed/managedNativeVerificationSchemas.js} +6 -5
  456. package/dist/domain/{managedReconstruction.js → managed/managedReconstruction.js} +3 -3
  457. package/dist/domain/native/binaryLayout.js +357 -0
  458. package/dist/domain/native/nativeCallObservation.js +164 -0
  459. package/dist/domain/{nativeFunctionAnnotations.js → native/nativeFunctionAnnotations.js} +1 -1
  460. package/dist/domain/{nativeInspection.js → native/nativeInspection.js} +1 -1
  461. package/dist/domain/{nativeInvestigationGraph.js → native/nativeInvestigationGraph.js} +13 -4
  462. package/dist/domain/{nativeLoadImage.js → native/nativeLoadImage.js} +1 -1
  463. package/dist/domain/{nativeUiObservation.js → native/nativeUiObservation.js} +20 -6
  464. package/dist/domain/{objcSwiftMetadata.js → native/objcSwiftMetadata.js} +17 -39
  465. package/dist/domain/native/recordedCrash.js +266 -0
  466. package/dist/domain/native/recordedCrashNoteCoverage.js +73 -0
  467. package/dist/domain/process/processCapture.js +316 -0
  468. package/dist/domain/{processCaptureExample.js → process/processCaptureExample.js} +5 -0
  469. package/dist/domain/process/processCaptureParsing.js +54 -0
  470. package/dist/domain/{processCaptureValidation.js → process/processCaptureValidation.js} +18 -2
  471. package/dist/domain/{processComparison.js → process/processComparison.js} +1 -1
  472. package/dist/domain/{processObservation.js → process/processObservation.js} +1 -1
  473. package/dist/domain/{processScenario.js → process/processScenario.js} +17 -17
  474. package/dist/domain/{processTraceSpecification.js → process/processTraceSpecification.js} +1 -1
  475. package/dist/domain/propertyListKeys.js +69 -0
  476. package/dist/domain/providerCleanupError.js +5 -2
  477. package/dist/domain/providerSelectionError.js +4 -2
  478. package/dist/domain/reconstructionCoverageEvaluation.js +46 -24
  479. package/dist/domain/reconstructionCoverageInput.js +7 -0
  480. package/dist/domain/reconstructionVerification.js +3 -3
  481. package/dist/domain/reconstructionVerificationSchemas.js +1 -1
  482. package/dist/domain/residualUnknown.js +3 -2
  483. package/dist/domain/runtimeVersion.js +2 -0
  484. package/dist/domain/sourceMapEnvelope.js +38 -0
  485. package/dist/domain/staticRuntimeCorrelation.js +3 -3
  486. package/dist/domain/unicodeCodePointOrder.js +11 -6
  487. package/dist/domain/webBundleAnalyzerAst.js +2 -34
  488. package/dist/domain/webBundleAnalyzerInspection.js +12 -9
  489. package/dist/domain/webCaptureDiff.js +1 -0
  490. package/dist/domain/webEventListeners.js +28 -0
  491. package/dist/domain/webExecution.js +74 -0
  492. package/dist/domain/webMcpDiscovery.js +1 -7
  493. package/dist/domain/webModuleImports.js +104 -0
  494. package/dist/domain/webModuleTrace.js +106 -0
  495. package/dist/domain/webNetworkCapture.js +118 -0
  496. package/dist/domain/webNetworkCaptureCoordinates.js +58 -0
  497. package/dist/domain/webRuntime.js +69 -0
  498. package/dist/domain/webScreenshot.js +1 -7
  499. package/dist/domain/webScriptArtifacts.js +39 -0
  500. package/dist/domain/webScriptExport.js +86 -0
  501. package/dist/domain/webScriptExportError.js +13 -0
  502. package/dist/domain/webScriptExportPlan.js +108 -0
  503. package/dist/domain/webSourceLocation.js +106 -0
  504. package/dist/domain/webSourcePosition.js +21 -0
  505. package/dist/dotnet/ManagedArtifactInspector.js +1 -1
  506. package/dist/dotnet/ManagedExceptionRegionValidation.js +41 -0
  507. package/dist/dotnet/ManagedMemberInspector.js +5 -3
  508. package/dist/dotnet/ManagedMemberInspectorCore.js +72 -32
  509. package/dist/dotnet/ManagedMemberInstructionDecoder.js +23 -7
  510. package/dist/dotnet/ManagedMemberRows.js +19 -6
  511. package/dist/dotnet/ManagedMetadataHeaps.js +20 -2
  512. package/dist/dotnet/ManagedMetadataInventory.js +38 -28
  513. package/dist/dotnet/ManagedMetadataInventoryRows.js +24 -10
  514. package/dist/dotnet/ManagedMethodBodyReader.js +7 -1
  515. package/dist/dotnet/ManagedNativeBoundaryHelpers.js +37 -19
  516. package/dist/dotnet/ManagedNativeBoundaryInspector.js +59 -51
  517. package/dist/dotnet/ManagedPeReader.js +11 -0
  518. package/dist/dotnet/ManagedStaticProvider.js +3 -33
  519. package/dist/dotnet/ManagedStaticProviderMetadata.js +36 -0
  520. package/dist/evaluation/CodexAgentEval.js +2 -1
  521. package/dist/evm/EvmBytecodeCarrier.js +21 -0
  522. package/dist/evm/EvmWorkerLimits.js +40 -0
  523. package/dist/evm/EvmoleFailures.js +126 -0
  524. package/dist/evm/EvmoleInterfaceAdapter.js +53 -0
  525. package/dist/evm/EvmoleInterfaceProvider.js +273 -0
  526. package/dist/evm/EvmoleInterfaceWorker.js +87 -0
  527. package/dist/evm/EvmoleRelease.js +16 -0
  528. package/dist/firmware/FirmwareCommand.js +1 -0
  529. package/dist/firmware/FirmwareProvider.js +18 -12
  530. package/dist/firmware/FirmwarePublication.js +1 -1
  531. package/dist/firmware/FirmwareRelease.js +1 -1
  532. package/dist/firmware/FirmwareReports.js +12 -0
  533. package/dist/firmware/FirmwareVersion.js +80 -0
  534. package/dist/generatedPackageMetadata.js +2 -2
  535. package/dist/ghidra/GhidraFunctionValues.js +5 -5
  536. package/dist/ghidra/GhidraInstallation.js +38 -34
  537. package/dist/ghidra/GhidraInstallationPolicy.js +140 -0
  538. package/dist/ghidra/GhidraInventoryValues.js +1 -1
  539. package/dist/ghidra/GhidraLauncher.js +13 -4
  540. package/dist/ghidra/GhidraLoadImageAttest.js +36 -0
  541. package/dist/ghidra/GhidraLoadImageValues.js +1 -1
  542. package/dist/ghidra/GhidraProvider.js +17 -235
  543. package/dist/ghidra/GhidraProviderCapabilities.js +8 -15
  544. package/dist/ghidra/GhidraProviderClient.js +209 -0
  545. package/dist/ghidra/GhidraResponseBuffer.js +7 -1
  546. package/dist/ghidra/extensions/nativeaot/NativeAotReport.js +17 -1
  547. package/dist/hopper/BridgeLauncher.js +2 -0
  548. package/dist/hopper/HopperProvider.js +2 -48
  549. package/dist/hopper/HopperProviderCapabilities.js +73 -0
  550. package/dist/hopper/HopperResponseStream.js +7 -1
  551. package/dist/hopper/LinuxPrivateDisplayProbe.js +8 -6
  552. package/dist/ida/IdaProviderCapabilities.js +3 -11
  553. package/dist/ida/IdaSessionClient.js +12 -0
  554. package/dist/{browser → inspector}/JavaScriptRuntimeScope.js +16 -5
  555. package/dist/{browser → inspector}/V8InspectorCaptureProjection.js +46 -8
  556. package/dist/{browser → inspector}/V8InspectorEndpoint.js +1 -1
  557. package/dist/{browser → inspector}/V8InspectorProvider.js +10 -13
  558. package/dist/inspector/providerIdentity.js +6 -0
  559. package/dist/javascript/recovery/RecoveryFiles.js +122 -0
  560. package/dist/javascript/recovery/WakaruCommand.js +119 -0
  561. package/dist/javascript/recovery/WakaruExecution.js +100 -0
  562. package/dist/javascript/recovery/WakaruProvider.js +96 -0
  563. package/dist/javascript/recovery/WakaruPublication.js +102 -0
  564. package/dist/javascript/recovery/WakaruRelease.js +29 -0
  565. package/dist/javascript/recovery/WakaruReport.js +134 -0
  566. package/dist/javascript/sourceMaps/SourceMapCodecProcess.js +37 -0
  567. package/dist/javascript/sourceMaps/SourceMapCodecProtocol.js +20 -0
  568. package/dist/javascript/sourceMaps/SourceMapCommand.js +177 -0
  569. package/dist/javascript/sourceMaps/SourceMapDecoder.js +61 -0
  570. package/dist/javascript/sourceMaps/SourceMapFormat.js +185 -0
  571. package/dist/javascript/sourceMaps/TraceSourceMap.js +138 -0
  572. package/dist/main/shutdown.js +8 -2
  573. package/dist/main/transport.js +24 -7
  574. package/dist/main.js +4 -18
  575. package/dist/native/AppleDispatchCoverage.js +58 -0
  576. package/dist/native/AppleDispatchMetadata.js +71 -509
  577. package/dist/native/AppleMachoFixups.js +292 -0
  578. package/dist/native/AppleMachoSelection.js +188 -0
  579. package/dist/native/AppleObjcCategories.js +59 -0
  580. package/dist/native/AppleObjcDispatchFacets.js +257 -0
  581. package/dist/native/AppleObjcProperties.js +68 -0
  582. package/dist/native/AppleObjcProtocols.js +2 -1
  583. package/dist/native/AppleSwiftDispatchFacets.js +150 -0
  584. package/dist/native/CommandRunner.js +2 -1
  585. package/dist/native/LldbCallTracer.js +278 -0
  586. package/dist/native/NativeCallObservation.js +135 -0
  587. package/dist/native/NativeMacOSProvider.js +151 -75
  588. package/dist/native/NativeMacOSProviderMetadata.js +47 -0
  589. package/dist/native/NativeMachoInspection.js +45 -14
  590. package/dist/native/NativeUiHelperRuntime.js +7 -3
  591. package/dist/native/NativeUiObservation.js +8 -4
  592. package/dist/native/NativeUiOutputBudget.js +8 -0
  593. package/dist/native/parsers/codesign.js +40 -5
  594. package/dist/native/parsers/demangle.js +6 -2
  595. package/dist/native/parsers/dyldInfo.js +13 -4
  596. package/dist/native/parsers/echoedPath.js +14 -0
  597. package/dist/native/parsers/lipo.js +14 -0
  598. package/dist/native/parsers/otool.js +1 -1
  599. package/dist/native/parsers/plist.js +174 -19
  600. package/dist/native/pwndbg/PwndbgCoreContext.js +160 -0
  601. package/dist/native/pwntools/PwntoolsDecoder.js +203 -0
  602. package/dist/native/pwntools/PwntoolsFailures.js +180 -0
  603. package/dist/native/pwntools/PwntoolsLayoutProvider.js +36 -0
  604. package/dist/native/pwntools/PwntoolsRecordedCrashProvider.js +75 -0
  605. package/dist/native/pwntools/PwntoolsRelease.js +19 -0
  606. package/dist/native/pwntools/PwntoolsResourceLimits.js +76 -0
  607. package/dist/native/pwntools/RecordedCrashSourceBindings.js +46 -0
  608. package/dist/native/pwntools/RecordedCrashStructureBindings.js +101 -0
  609. package/dist/process/DarwinProcessRunTokenReader.js +294 -0
  610. package/dist/process/ExecFileOutput.js +2 -0
  611. package/dist/process/OwnedCommand.js +113 -0
  612. package/dist/process/ProcessOwnership.js +263 -33
  613. package/dist/process/ProcessOwnershipObservation.js +161 -24
  614. package/dist/process/ProviderProcess.js +68 -20
  615. package/dist/{application → process/capture}/FilesystemSnapshot.js +20 -5
  616. package/dist/{application → process/capture}/ProcessCaptureCapability.js +16 -1
  617. package/dist/{application → process/capture}/ProcessCaptureError.js +17 -1
  618. package/dist/process/capture/ProcessCaptureLifecycle.js +615 -0
  619. package/dist/process/capture/ProcessHarness.js +452 -0
  620. package/dist/{application → process/capture}/ProcessSampling.js +2 -2
  621. package/dist/reference/ReferenceSourceReaderEntries.js +6 -1
  622. package/dist/server/createServer.js +70 -6
  623. package/dist/server/mcpClientMetadata.js +6 -3
  624. package/dist/server/promptCompletion.js +10 -3
  625. package/dist/server/registerAndroidTools.js +1 -1
  626. package/dist/server/registerApplicationTools/compareExportShapes.js +2 -2
  627. package/dist/server/registerApplicationTools/compareSourceToBundle.js +2 -2
  628. package/dist/server/registerApplicationTools/compareVersions.js +2 -2
  629. package/dist/server/registerApplicationTools/projectMobileApplicationGraph.js +43 -0
  630. package/dist/server/registerApplicationTools/traceFeature.js +1 -1
  631. package/dist/server/registerApplicationTools/traceSemantics.js +1 -1
  632. package/dist/server/registerApplicationTools.js +2 -0
  633. package/dist/server/registerBinaryDiagnosticsTools.js +17 -0
  634. package/dist/server/registerBrowserScenarioTool.js +6 -2
  635. package/dist/server/registerBrowserTools.js +13 -2
  636. package/dist/server/registerCloseLifecycleTool.js +1 -1
  637. package/dist/server/registerElectronTools.js +21 -7
  638. package/dist/server/registerEvidenceTools.js +1 -1
  639. package/dist/server/registerEvmTools.js +17 -0
  640. package/dist/server/registerJavaScriptRecoveryTool.js +17 -0
  641. package/dist/server/registerJavaScriptRuntimeObservationTools.js +9 -4
  642. package/dist/server/registerManagedTools.js +3 -3
  643. package/dist/server/registerManagedWorkflowTools/compareManagedMembers.js +2 -2
  644. package/dist/server/registerManagedWorkflowTools/contract.js +1 -1
  645. package/dist/server/registerManagedWorkflowTools/importManagedReconstruction.js +1 -1
  646. package/dist/server/registerManagedWorkflowTools/projectManagedApplicationGraph.js +1 -1
  647. package/dist/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.js +2 -2
  648. package/dist/server/registerNativeTools.js +1 -1
  649. package/dist/server/registerProcessComparisonTool.js +1 -1
  650. package/dist/server/registerPrompts.js +5 -1
  651. package/dist/server/registerRecordedCrashTools.js +17 -0
  652. package/dist/server/registerSessionTools.js +3 -3
  653. package/dist/server/registerWebModuleTool.js +17 -0
  654. package/dist/server/registerWebNetworkCaptureTool.js +28 -0
  655. package/dist/server/registerWebRuntimeTools.js +31 -0
  656. package/dist/server/registerWebScriptTool.js +18 -0
  657. package/dist/server/registerWebSourceLocationTool.js +17 -0
  658. package/dist/server/sessionAvailabilityPolicy.js +27 -12
  659. package/dist/server/sessionToolPolicies.js +1 -1
  660. package/dist/server/toolResult.js +1 -1
  661. package/dist/windows/WindowsOwnedProcess.js +3 -1
  662. package/install.sh +12 -2
  663. package/native/windows/README.md +5 -0
  664. package/native/windows/build/manifest.json +2 -2
  665. package/native/windows/build/rea-windows-x64.node +0 -0
  666. package/package.json +75 -26
  667. package/scripts/hopper-demo-x11.py +67 -8
  668. package/scripts/rea.mjs +19 -3
  669. package/skills/reverse-engineer-anything/SKILL.md +23 -3
  670. package/skills/reverse-engineer-anything/references/android-applications.md +2 -2
  671. package/skills/reverse-engineer-anything/references/javascript-applications.md +1 -1
  672. package/skills/reverse-engineer-anything/references/native-and-artifacts.md +61 -23
  673. package/third_party/README.md +60 -0
  674. package/third_party/evmole/LICENSE +21 -0
  675. package/third_party/evmole/README.md +22 -0
  676. package/third_party/pwndbg/LICENSE.md +21 -0
  677. package/third_party/pwndbg/README.md +23 -0
  678. package/third_party/pwntools/README.md +40 -0
  679. package/dist/application/AuthorizedArtifactInventory.js +0 -7
  680. package/dist/application/JavaScriptSemanticGraphProjection.js +0 -38
  681. package/dist/application/ProcessCaptureLifecycle.js +0 -299
  682. package/dist/application/ProcessHarness.js +0 -275
  683. package/dist/application/StoreFileLock.js +0 -124
  684. package/dist/application/runtime.js +0 -53
  685. package/dist/contracts/processCaptureExample.js +0 -2
  686. package/dist/domain/appleApplication.js +0 -181
  687. package/dist/domain/bytecodeProvider.js +0 -178
  688. package/dist/domain/customProtocolCapture.js +0 -137
  689. package/dist/domain/eventProcessTree.js +0 -225
  690. package/dist/domain/javascriptAstValues.js +0 -13
  691. package/dist/domain/javascriptSemanticTraversal.js +0 -30
  692. package/dist/domain/mobileApplicationInvestigation.js +0 -159
  693. package/dist/domain/packageAnalysis.js +0 -123
  694. package/dist/domain/peInspection.js +0 -197
  695. package/dist/domain/processCapture.js +0 -177
  696. package/dist/domain/processCaptureParsing.js +0 -21
  697. package/dist/domain/protocolCapture.js +0 -217
  698. package/dist/domain/runtimeIdentification.js +0 -212
  699. package/dist/generatedMcpToolCatalog.js +0 -37
  700. package/dist/native/NativeHostCapabilities.js +0 -23
  701. /package/dist/application/{AndroidAnalysisPort.js → DirectAnalysisDependencies.js} +0 -0
  702. /package/dist/application/{BinarySessionPort.js → WebModulePorts.js} +0 -0
  703. /package/dist/application/{ElectronActiveObservationPort.js → WebNetworkCapturePort.js} +0 -0
  704. /package/dist/application/{ElectronObservationPort.js → WebRuntimePort.js} +0 -0
  705. /package/dist/application/{FirmwareAnalysisPort.js → WebScriptArtifactPort.js} +0 -0
  706. /package/dist/application/{JavaScriptArtifactAnalysisTypes.js → WebSourceLocationPorts.js} +0 -0
  707. /package/dist/application/{JavaScriptRuntimeObservationPort.js → android/AndroidAnalysisPort.js} +0 -0
  708. /package/dist/application/{ArtifactExtractionDestination.js → artifacts/ArtifactExtractionDestination.js} +0 -0
  709. /package/dist/application/{AbortablePromise.js → binary/AbortablePromise.js} +0 -0
  710. /package/dist/{domain/electronStaticAnalysisTypes.js → application/binary/BinarySessionPort.js} +0 -0
  711. /package/dist/application/{BinarySessionStatus.js → binary/BinarySessionStatus.js} +0 -0
  712. /package/dist/{domain/javascriptSemanticValueTypes.js → application/binaryDiagnostics/BinaryLayoutPort.js} +0 -0
  713. /package/dist/application/{ElectronBoundaryGraph.js → javascript/ElectronBoundaryGraph.js} +0 -0
  714. /package/dist/application/{ElectronBoundaryGraphIpc.js → javascript/ElectronBoundaryGraphIpc.js} +0 -0
  715. /package/dist/application/{ElectronBoundaryGraphNative.js → javascript/ElectronBoundaryGraphNative.js} +0 -0
  716. /package/dist/application/{ElectronBoundaryGraphWindows.js → javascript/ElectronBoundaryGraphWindows.js} +0 -0
  717. /package/dist/application/{JavaScriptArtifactGraphBundlers.js → javascript/JavaScriptArtifactGraphBundlers.js} +0 -0
  718. /package/dist/application/{JavaScriptArtifactGraphEvidence.js → javascript/JavaScriptArtifactGraphEvidence.js} +0 -0
  719. /package/dist/application/{JavaScriptArtifactReconstructionInput.js → javascript/JavaScriptArtifactReconstructionInput.js} +0 -0
  720. /package/dist/application/{JavaScriptSemanticGraphEvidence.js → javascript/JavaScriptSemanticGraphEvidence.js} +0 -0
  721. /package/dist/artifacts/{NibArchive.js → apple/NibArchive.js} +0 -0
  722. /package/dist/{application/ArtifactInventory → artifacts/inventory}/policy.js +0 -0
  723. /package/dist/{application/ArtifactInventory → artifacts/inventory}/types.js +0 -0
  724. /package/dist/domain/{androidAnalysis.js → android/androidAnalysis.js} +0 -0
  725. /package/dist/domain/{electronStaticAnalysis.js → javascript/electronStaticAnalysis.js} +0 -0
  726. /package/dist/domain/{javascriptExportShapeComparisonIdentity.js → javascript/javascriptExportShapeComparisonIdentity.js} +0 -0
  727. /package/dist/domain/{javascriptRuntimeReconciliation.js → javascript/javascriptRuntimeReconciliation.js} +0 -0
  728. /package/dist/domain/{javascriptRuntimeReconciliationRuntime.js → javascript/javascriptRuntimeReconciliationRuntime.js} +0 -0
  729. /package/dist/domain/{javascriptSemanticCoverage.js → javascript/javascriptSemanticCoverage.js} +0 -0
  730. /package/dist/domain/{javascriptSemanticDerivedAnalysis.js → javascript/javascriptSemanticDerivedAnalysis.js} +0 -0
  731. /package/dist/domain/{javascriptSemanticGraphSerialization.js → javascript/javascriptSemanticGraphSerialization.js} +0 -0
  732. /package/dist/domain/{javascriptSemanticIr.js → javascript/javascriptSemanticIr.js} +0 -0
  733. /package/dist/domain/{javascriptSemanticQueryRelations.js → javascript/javascriptSemanticQueryRelations.js} +0 -0
  734. /package/dist/domain/{javascriptSemanticState.js → javascript/javascriptSemanticState.js} +0 -0
  735. /package/dist/domain/{javascriptSourceParser.js → javascript/javascriptSourceParser.js} +0 -0
  736. /package/dist/domain/{javascriptStaticAnalysisFindings.js → javascript/javascriptStaticAnalysisFindings.js} +0 -0
  737. /package/dist/domain/{javascriptStaticAnalysisState.js → javascript/javascriptStaticAnalysisState.js} +0 -0
  738. /package/dist/domain/{javascriptStaticAnalysisTypes.js → javascript/javascriptStaticAnalysisTypes.js} +0 -0
  739. /package/dist/domain/{managedApplicationGraphCoverage.js → managed/managedApplicationGraphCoverage.js} +0 -0
  740. /package/dist/domain/{managedApplicationGraphNodeCoverage.js → managed/managedApplicationGraphNodeCoverage.js} +0 -0
  741. /package/dist/domain/{nativeApiBoundary.js → native/nativeApiBoundary.js} +0 -0
  742. /package/dist/domain/{nativeDataType.js → native/nativeDataType.js} +0 -0
  743. /package/dist/domain/{nativeInstruction.js → native/nativeInstruction.js} +0 -0
  744. /package/dist/domain/{nativeMetadataRecovery.js → native/nativeMetadataRecovery.js} +0 -0
  745. /package/dist/domain/{nativeValueFlow.js → native/nativeValueFlow.js} +0 -0
  746. /package/dist/domain/{nativeValueTrace.js → native/nativeValueTrace.js} +0 -0
  747. /package/dist/domain/{processEvidenceProvider.js → process/processEvidenceProvider.js} +0 -0
  748. /package/dist/domain/{processTraceComparison.js → process/processTraceComparison.js} +0 -0
  749. /package/dist/domain/{processTraceDimensionProjection.js → process/processTraceDimensionProjection.js} +0 -0
  750. /package/dist/domain/{processTraceEvaluation.js → process/processTraceEvaluation.js} +0 -0
  751. /package/dist/{application → process/capture}/ProcessCaptureEnvironment.js +0 -0
  752. /package/dist/{application → process/capture}/ProcessCaptureJournal.js +0 -0
  753. /package/dist/{application → process/capture}/ProcessFilesystemEffects.js +0 -0
  754. /package/dist/{application → process/capture}/ProcessNormalization.js +0 -0
  755. /package/dist/{application → process/capture}/ProcessScenarioRuntimeValidation.js +0 -0
  756. /package/dist/{application → process/capture}/ProcessTimer.js +0 -0
  757. /package/dist/{application → process/capture}/TerminalRenderer.js +0 -0
@@ -1,2 +1,2 @@
1
- export { PROCESS_PROVIDER } from "../application/ProcessEvidence.js";
1
+ export { PROCESS_PROVIDER } from "../application/process/ProcessEvidence.js";
2
2
  export { ARTIFACT_COMPARISON_PROVIDER, BUNDLE_COMPARISON_PROVIDER, CALL_PATH_PROVIDER, CHANGED_BEHAVIOR_PROVIDER, FUNCTION_COMPARISON_PROVIDER, RECONSTRUCTION_PROVIDER, STATIC_RUNTIME_PROVIDER, } from "../application/InvestigationProviders.js";
@@ -3,7 +3,7 @@ import {} from "../domain/analysisErrorBase.js";
3
3
  /**
4
4
  * Serialize an application result as MCP text and structured content.
5
5
  * Shared error projection preserves actionable local diagnostics while omitting
6
- * raw causes and captured process output.
6
+ * raw cause objects; explicitly retained bounded command output stays visible.
7
7
  */
8
8
  export const toCallToolResult = (result, contract) => result.ok ? successResult(result.value, contract) : errorResult(result.error);
9
9
  const errorResult = (error) => {
@@ -45,7 +45,9 @@ export class WindowsOwnedProcess extends EventEmitter {
45
45
  .filter((entry) => entry[1] !== undefined)
46
46
  .map(([key, value]) => `${key}=${value}`);
47
47
  const line = [
48
- quoteWindowsProcessArgument(command),
48
+ // cmd.exe parses its own command line rather than the CRT argv rules;
49
+ // its executable token must match the native drive-path representation.
50
+ quoteWindowsProcessArgument(command.replaceAll("/", "\\")),
49
51
  ...arguments_.map((value) => verbatim ? value : quoteWindowsProcessArgument(value)),
50
52
  ].join(" ");
51
53
  const launched = launchSchema.parse(this.#authority.call("process_spawn", [
package/install.sh CHANGED
@@ -3,6 +3,10 @@ set -euo pipefail
3
3
 
4
4
  PACKAGE="rea-agents"
5
5
  REPOSITORY="morluto/rea"
6
+ numeric_identifier='(0|[1-9][0-9]*)'
7
+ prerelease_identifier="(${numeric_identifier}|[0-9A-Za-z-]*[A-Za-z-][0-9A-Za-z-]*)"
8
+ build_identifier='[0-9A-Za-z-]+'
9
+ version_pattern="${numeric_identifier}\\.${numeric_identifier}\\.${numeric_identifier}(-${prerelease_identifier}(\\.${prerelease_identifier})*)?(\\+${build_identifier}(\\.${build_identifier})*)?"
6
10
  version="${REA_VERSION:-}"
7
11
  dry_run=false
8
12
  start_setup=true
@@ -67,14 +71,20 @@ if ! [[ "$_node_patch" =~ ^[0-9]+(\+[0-9A-Za-z.-]+)?$ ]] ||
67
71
  fi
68
72
 
69
73
  if [[ -n "$version" ]]; then
70
- [[ "$version" =~ ^[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z.-]+)?$ ]] || fail "version must be an exact semantic version."
74
+ [[ "$version" =~ ^${version_pattern}$ ]] || fail "version must be an exact semantic version."
71
75
  else
72
76
  release_json="$(curl -fsSL --proto '=https' --tlsv1.2 --retry 3 -H 'Accept: application/vnd.github+json' "https://api.github.com/repos/$REPOSITORY/releases/latest")" || fail "the latest REA release could not be resolved. Check network access or pass --version VERSION, then retry."
73
77
  tag="$(printf '%s' "$release_json" | node -e 'let s="";process.stdin.on("data",c=>s+=c).on("end",()=>{const v=JSON.parse(s).tag_name;if(typeof v!=="string")process.exit(1);process.stdout.write(v)})' 2>/dev/null)" || fail "the release response was invalid. Retry later or pass --version VERSION."
74
- [[ "$tag" =~ ^rea-agents-([0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z.-]+)?)$ ]] || fail "the latest release tag was invalid. Retry later or pass --version VERSION."
78
+ [[ "$tag" =~ ^rea-agents-(${version_pattern})$ ]] || fail "the latest release tag was invalid. Retry later or pass --version VERSION."
75
79
  version="${BASH_REMATCH[1]}"
76
80
  fi
77
81
 
82
+ # npm's exact-version resolver cleans build metadata from the requested version,
83
+ # so it may install the base release and make the post-install identity check fail.
84
+ if [[ "$version" =~ \+ ]]; then
85
+ fail "npm cannot install an exact version with build metadata. Pass a version without build metadata, then retry."
86
+ fi
87
+
78
88
  prefix_args=()
79
89
  if [[ "$platform" == "Linux" ]]; then
80
90
  prefix_args=(--prefix "$HOME/.local")
@@ -66,6 +66,11 @@ Windows failures retain their constraint, requested coordinate, Win32 code,
66
66
  and system message. Unsupported filesystems and reparse paths are distinct
67
67
  from OS access denial and missing packaged controls.
68
68
 
69
+ Ordinary drive-absolute paths accept backslashes, forward slashes, or mixed
70
+ separators. File identity retains the original requested spelling. Separator
71
+ translation does not resolve dot components, repeated separators, or extend
72
+ the supported device/UNC namespaces; existing admission checks still apply.
73
+
69
74
  The bearer-token descriptor remains under its immutable private lease until
70
75
  `runtime_close` on Windows; POSIX removes the descriptor after the bridge reads
71
76
  it. Job ownership guarantees process termination on owner death, not deletion
@@ -1,9 +1,9 @@
1
1
  {
2
- "packageVersion": "4.1.0",
2
+ "packageVersion": "6.0.0",
3
3
  "platform": "win32",
4
4
  "architecture": "x64",
5
5
  "abiVersion": 1,
6
6
  "nodeApiVersion": 8,
7
7
  "artifact": "rea-windows-x64.node",
8
- "artifactSha256": "47a8d4d03d1cd764c68e8881aecb9cda63c8bdbc00f770e5b428f31debc83b90"
8
+ "artifactSha256": "9914815706dcd4ef94d01543e31cb0b20035e98d5011d4b4e7f8e509823c8b1d"
9
9
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "rea-agents",
3
3
  "mcpName": "io.github.morluto/rea",
4
- "version": "4.1.0",
4
+ "version": "6.0.0",
5
5
  "description": "Reverse engineer anything from your terminal or agent with one CLI and MCP server.",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -42,10 +42,16 @@
42
42
  "dist",
43
43
  "install.sh",
44
44
  "bridge/hopper_bridge.py",
45
+ "bridge/native/NativeUIChildren.swift",
45
46
  "bridge/native/ReaNativeUI.swift",
47
+ "bridge/native/rea_lldb_tracer.py",
48
+ "bridge/process/ProcessRunTokenReader.swift",
49
+ "bridge/process/ProcessRunTokenReaderMain.swift",
46
50
  "bridge/ghidra/ReaGhidraBridge.java",
47
51
  "bridge/ghidra/ReaGhidraExtensions.java",
48
52
  "bridge/ghidra/ReaGhidraPrepareCom.java",
53
+ "bridge/android/ReaJadxBridge.java",
54
+ "bridge/mitmproxy/capture.py",
49
55
  "scripts/rea.mjs",
50
56
  "scripts/electron-active-hook.cjs",
51
57
  "scripts/electron-active-hook-boundaries.cjs",
@@ -57,18 +63,31 @@
57
63
  "LICENSE",
58
64
  "native/windows/build/manifest.json",
59
65
  "native/windows/build/rea-windows-x64.node",
60
- "scripts/verify-windows-native-artifact.mjs"
66
+ "scripts/verify-windows-native-artifact.mjs",
67
+ "bridge/pwntools/layout.py",
68
+ "bridge/pwntools/layout_impl.py",
69
+ "third_party/pwntools/README.md",
70
+ "third_party/evmole/README.md",
71
+ "third_party/evmole/LICENSE",
72
+ "bridge/pwntools/decoder_runtime.py",
73
+ "bridge/pwntools/recorded_crash.py",
74
+ "bridge/pwntools/recorded_crash_impl.py",
75
+ "bridge/pwndbg/launch.py",
76
+ "bridge/pwndbg/launch_impl.py",
77
+ "bridge/pwndbg/core_context.py",
78
+ "third_party/pwndbg/README.md",
79
+ "third_party/pwndbg/LICENSE.md"
61
80
  ],
62
81
  "scripts": {
63
82
  "deps:check": "node scripts/check-dependency-install.mjs",
64
83
  "metadata:generate": "node scripts/generate-package-metadata.mjs",
65
84
  "metadata:check": "node scripts/generate-package-metadata.mjs --check",
66
85
  "mcp-registry:check": "node scripts/verify-mcp-registry-metadata.mjs",
67
- "mcp-catalog:generate": "npm run build:cached && node scripts/generate-mcp-tool-catalog.mjs",
86
+ "mcp-catalog:generate": "npm run build:cached",
68
87
  "mcp-catalog:check": "node scripts/generate-mcp-tool-catalog.mjs --check",
69
88
  "prebuild": "npm run deps:check && npm run metadata:check",
70
89
  "build": "node scripts/run-exclusive.mjs build npm run build:unlocked",
71
- "build:unlocked": "node scripts/clean-build-output.mjs && tsc -p tsconfig.build.json",
90
+ "build:unlocked": "node scripts/clean-build-output.mjs && tsc -p tsconfig.build.json && node scripts/generate-mcp-tool-catalog.mjs",
72
91
  "precheck": "npm run deps:check",
73
92
  "check": "turbo run typecheck lint format:check knip metadata:check",
74
93
  "precheck:fast": "npm run deps:check",
@@ -81,11 +100,11 @@
81
100
  "check:pr": "turbo run typecheck lint format:check knip metadata:check test:run && npm run docs:check && npm run jscpd && npm run scan:todos",
82
101
  "precheck:ci": "npm run deps:check",
83
102
  "check:ci": "turbo run typecheck lint format:check knip metadata:check jscpd scan:todos",
84
- "build:cached": "turbo run build",
103
+ "build:cached": "node scripts/check-dependency-install.mjs && turbo run build",
85
104
  "format": "oxfmt .",
86
105
  "format:check": "oxfmt --check .",
87
- "lint": "oxlint",
88
- "lint:fix": "oxlint --fix",
106
+ "lint": "oxlint && npm run verify:module-boundaries",
107
+ "lint:fix": "oxlint --fix && npm run verify:module-boundaries",
89
108
  "knip": "knip",
90
109
  "jscpd": "jscpd src/ tests/",
91
110
  "scan:todos": "node scripts/scan-todos.mjs",
@@ -119,29 +138,33 @@
119
138
  "typecheck": "tsc --noEmit",
120
139
  "verify:test-temp-hygiene": "npm run build:cached && node scripts/verify-test-temp-hygiene.mjs",
121
140
  "verify:hopper": "npm run verify:fixtures && npm run build:cached && node scripts/verify-real-hopper.mjs",
122
- "verify:apple-dispatch": "npm run build:cached && node scripts/verify-apple-dispatch.mjs",
141
+ "verify:apple-dispatch": "npm run build:cached && node scripts/verify/apple/dispatch.mjs",
123
142
  "verify:native-ui": "npm run build:cached && node scripts/verify-native-ui.mjs",
124
- "verify:keyed-archive": "npm run build:cached && node scripts/verify-keyed-archive.mjs",
143
+ "verify:keyed-archive": "npm run build:cached && node scripts/verify/apple/keyed-archive.mjs",
144
+ "verify:macos-bundle": "npm run build:cached && node scripts/verify/apple/macos-bundle.mjs",
125
145
  "verify:ghidra": "npm run build:cached && node scripts/verify-real-ghidra.mjs",
126
146
  "verify:ida": "npm run build:cached && node scripts/verify-real-ida.mjs",
127
147
  "verify:ghidra:switch": "npm run build:cached && node scripts/verify-real-ghidra-switch.mjs",
128
148
  "verify:ghidra:dos": "npm run build:cached && node scripts/verify-real-ghidra-dos.mjs",
129
149
  "verify:ghidra:com": "npm run build:cached && node scripts/verify-real-ghidra-com.mjs",
130
150
  "verify:ghidra:aarch64-jump-table": "npm run build:cached && node scripts/verify-real-ghidra.mjs --aarch64-jump-table",
131
- "verify:interface-builder": "npm run build:cached && node scripts/verify-interface-builder.mjs",
151
+ "verify:interface-builder": "npm run build:cached && node scripts/verify/apple/interface-builder.mjs",
132
152
  "verify:ghidra:cross-format": "npm run build:cached && node scripts/verify-real-ghidra.mjs --cross-format",
133
153
  "verify:ghidra:windows": "npm run build:cached && npm run build:ghidra-windows-fixture && node scripts/verify-real-ghidra-windows.mjs",
134
154
  "verify:browser": "npm run build:cached && node scripts/verify-real-browser.mjs",
155
+ "verify:browser:dom": "node scripts/verify-browser-dom-destinations.mjs",
156
+ "verify:browser:network": "npm run build:cached && node scripts/verify-browser-network.mjs",
135
157
  "verify:electron": "npm run build:cached && node scripts/verify-real-electron.mjs",
136
- "verify:inspector": "npm run build:cached && node scripts/verify-real-javascript-runtime-observation.mjs",
137
- "verify:javascript-runtime": "npm run build:cached && node scripts/verify-local-javascript-runtime.mjs",
138
- "verify:javascript:digests": "npm run build:cached && node scripts/verify-large-javascript-digests.mjs",
139
- "verify:application-workflows": "npm run build:cached && node scripts/verify-local-application-workflows.mjs",
140
- "verify:managed": "npm run build:cached && node scripts/verify-managed-conformance.mjs",
141
- "verify:firmware": "npm run build:cached && node scripts/verify-real-firmware.mjs",
142
- "fixtures:firmware": "node scripts/generate-firmware-fixtures.mjs",
143
- "verify:android": "npm run build:cached && node scripts/verify-real-android.mjs",
144
- "fixtures:android": "node scripts/fetch-android-fixtures.mjs",
158
+ "verify:inspector": "npm run build:cached && node scripts/verify/inspector/runtime-observation.mjs",
159
+ "verify:javascript-runtime": "npm run build:cached && node scripts/verify/javascript/runtime-observation.mjs",
160
+ "verify:javascript:digests": "npm run build:cached && node scripts/verify/javascript/digests.mjs",
161
+ "verify:javascript:output": "npm run build:cached && node scripts/verify/javascript/output.mjs",
162
+ "verify:application-workflows": "npm run build:cached && node scripts/verify/javascript/application-workflows.mjs",
163
+ "verify:managed": "npm run build:cached && node scripts/verify/managed/conformance.mjs",
164
+ "verify:firmware": "npm run build:cached && node scripts/verify/firmware/analysis.mjs",
165
+ "fixtures:firmware": "node scripts/fixtures/firmware/generate.mjs",
166
+ "verify:android": "npm run build:cached && node scripts/verify/android/analysis.mjs",
167
+ "fixtures:android": "node scripts/fixtures/android/fetch.mjs",
145
168
  "verify:agent": "npm run build:cached && node scripts/verify-agent-experience.mjs",
146
169
  "verify:hopper:linux": "npm run verify:fixtures && npm run build:cached && node scripts/verify-real-hopper-linux.mjs",
147
170
  "verify:setup:linux": "npm run build:cached && node scripts/verify-linux-setup-e2e.mjs",
@@ -156,14 +179,18 @@
156
179
  "config:print": "node scripts/print-mcp-config.mjs",
157
180
  "evidence:generate": "npm run build:cached && node scripts/generate-completion-ledger.mjs",
158
181
  "evidence:check": "npm run build:cached && node scripts/generate-completion-ledger.mjs --check",
182
+ "docs:dev": "vitepress dev docs",
183
+ "docs:build": "vitepress build docs",
184
+ "docs:preview": "vitepress preview docs",
159
185
  "docs:generate": "node scripts/run-exclusive.mjs docs npm run docs:generate:unlocked",
160
- "docs:generate:unlocked": "npm run metadata:generate && npm run build:cached && node scripts/generate-mcp-tool-catalog.mjs && node scripts/generate-skill-metadata.mjs && node scripts/generate-product-catalog.mjs && node scripts/generate-completion-ledger.mjs && node scripts/generate-error-schema.mjs",
186
+ "docs:generate:unlocked": "npm run metadata:generate && npm run build:cached && node scripts/generate-skill-metadata.mjs && node scripts/generate-product-catalog.mjs && node scripts/generate-completion-ledger.mjs && node scripts/generate-error-schema.mjs",
161
187
  "docs:check": "node scripts/run-exclusive.mjs docs turbo run docs:check:built",
162
188
  "docs:check:built": "node scripts/generate-package-metadata.mjs --check && node scripts/generate-mcp-tool-catalog.mjs --check && node scripts/generate-skill-metadata.mjs --check && node scripts/generate-product-catalog.mjs --check && node scripts/generate-completion-ledger.mjs --check && node scripts/check-doc-facts.mjs && node scripts/generate-error-schema.mjs --check",
163
189
  "docs:error-schema": "npm run build:cached && node scripts/generate-error-schema.mjs",
164
190
  "prepack": "node scripts/prepack.mjs",
165
191
  "prepare": "node scripts/prepare.mjs",
166
- "verify:asset-catalog": "npm run build:cached && node scripts/verify-asset-catalog.mjs",
192
+ "verify:asset-catalog": "npm run build:cached && node scripts/verify/apple/asset-catalog.mjs",
193
+ "verify:native-calls": "npm run build:cached && node scripts/verify-native-calls.mjs",
167
194
  "verify:native-ui:permissions": "npm run build:cached && node scripts/verify-native-ui.mjs --allow-permission-denial",
168
195
  "test:focused": "node scripts/run-development-tests.mjs focused",
169
196
  "build:windows-native": "node scripts/build-windows-native.mjs",
@@ -173,7 +200,18 @@
173
200
  "verify:ghidra:windows:package": "node scripts/verify-packaged-ghidra-windows.mjs",
174
201
  "build:ghidra:nativeaot": "node scripts/build-ghidra-nativeaot.mjs",
175
202
  "build:fixtures:nativeaot": "node scripts/generate-nativeaot-fixtures.mjs",
176
- "verify:ghidra:nativeaot": "npm run build:cached && node scripts/verify-real-ghidra-nativeaot.mjs"
203
+ "verify:ghidra:nativeaot": "npm run build:cached && node scripts/verify-real-ghidra-nativeaot.mjs",
204
+ "verify:browser:scripts": "npm run build:cached && node scripts/verify-browser-scripts.mjs",
205
+ "verify:browser:modules": "npm run build:cached && node scripts/verify-browser-modules.mjs",
206
+ "verify:test-discovery": "node scripts/verify-test-discovery.mjs",
207
+ "verify:javascript:recovery": "node scripts/verify/javascript/recovery.mjs",
208
+ "verify:module-boundaries": "node scripts/verify-module-boundaries.mjs",
209
+ "verify:browser:source-maps": "npm run build:cached && node scripts/verify-browser-source-maps.mjs",
210
+ "verify:browser:runtime": "npm run build:cached && node scripts/verify-browser-runtime.mjs",
211
+ "verify:web:network-captures": "npm run build:cached && node scripts/verify-web-network-captures.mjs",
212
+ "verify:binary:layout": "npm run build:cached && node scripts/verify-binary-layout.mjs",
213
+ "verify:evm:interface": "npm run build:cached && node scripts/verify-evm-interface.mjs",
214
+ "verify:recorded:crash": "npm run build:cached && node scripts/verify-recorded-crash.mjs"
177
215
  },
178
216
  "lint-staged": {
179
217
  "*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}": [
@@ -193,22 +231,33 @@
193
231
  "@modelcontextprotocol/server": "2.3.1",
194
232
  "@xterm/addon-serialize": "0.14.0",
195
233
  "@xterm/headless": "6.0.0",
196
- "@zip.js/zip.js": "2.8.26",
234
+ "@zip.js/zip.js": "2.15.0",
235
+ "ajv": "8.20.0",
236
+ "ajv-formats": "3.0.1",
197
237
  "canonicalize": "3.0.0",
198
238
  "cross-spawn": "7.0.6",
199
239
  "diff": "9.0.0",
240
+ "har-schema": "2.0.0",
200
241
  "ignore": "7.0.6",
201
242
  "incur": "0.6.1",
202
243
  "isomorphic-git": "1.38.7",
203
244
  "jsonc-parser": "3.3.1",
245
+ "lossless-json": "4.3.1",
246
+ "parse5": "8.0.1",
204
247
  "pino": "10.4.0",
205
248
  "playwright-core": "1.58.2",
206
249
  "plist": "5.0.0",
207
250
  "semver": "7.8.5",
208
- "smol-toml": "1.7.0",
251
+ "smol-toml": "1.9.0",
209
252
  "write-file-atomic": "7.0.0",
210
253
  "ws": "8.21.0",
211
- "zod": "4.4.3"
254
+ "zod": "4.4.3",
255
+ "evmole": "0.9.3"
256
+ },
257
+ "overrides": {
258
+ "vitepress": {
259
+ "vite": "6.4.4"
260
+ }
212
261
  },
213
262
  "devDependencies": {
214
263
  "@fast-check/vitest": "0.5.0",
@@ -218,7 +267,6 @@
218
267
  "@types/write-file-atomic": "4.0.3",
219
268
  "@types/ws": "8.18.1",
220
269
  "@vitest/coverage-v8": "5.0.3",
221
- "ajv": "8.20.0",
222
270
  "husky": "9.1.7",
223
271
  "jscpd": "5.0.12",
224
272
  "knip": "6.39.0",
@@ -227,6 +275,7 @@
227
275
  "oxlint": "1.87.0",
228
276
  "turbo": "2.11.7",
229
277
  "typescript": "7.0.2",
278
+ "vitepress": "1.6.4",
230
279
  "vitest": "5.0.3",
231
280
  "yaml": "2.9.0"
232
281
  }
@@ -20,11 +20,14 @@ import time
20
20
  # Keep this digest aligned with LinuxHopper.ts and rerun real-Hopper verification
21
21
  # before accepting another vendor build.
22
22
  SUPPORTED_HOPPER_SHA256 = {
23
- "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded"
23
+ "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded",
24
+ "1339f9e58377442b0c6fcb0dfc3cec20d593cc557408521fad9a00dbc6b8da13",
24
25
  }
25
26
  EXPECTED_SCREEN = (1280, 1024)
26
- EXPECTED_DIALOG = (189, 370, 901, 284)
27
- DEMO_CLICK = (305, 632)
27
+ DIALOG_TITLES = {"Registration", "Registration — Hopper Disassembler"}
28
+ HOPPER_WINDOW_TITLE = "Hopper Disassembler"
29
+ DEMO_CLICK_LEFT = 116
30
+ DEMO_CLICK_BOTTOM = 22
28
31
  PRIVATE_DISPLAY_UNAVAILABLE = 70
29
32
  X11_AUTHORIZATION_FAILED = 71
30
33
  UNSUPPORTED_HOPPER_BUILD = 72
@@ -196,6 +199,47 @@ def windows(x11: ctypes.CDLL, display: int, root: int) -> list[tuple[int, int, i
196
199
  return found
197
200
 
198
201
 
202
+ def window_title(x11: ctypes.CDLL, display: int, window: int) -> str | None:
203
+ title = ctypes.c_char_p()
204
+ if not x11.XFetchName(display, window, ctypes.byref(title)) or not title.value:
205
+ return None
206
+ try:
207
+ return title.value.decode("utf-8", "replace")
208
+ finally:
209
+ x11.XFree(ctypes.cast(title, ctypes.c_void_p))
210
+
211
+
212
+ def window_transient_for(
213
+ x11: ctypes.CDLL, display: int, window: int
214
+ ) -> int | None:
215
+ parent = ctypes.c_ulong()
216
+ if not x11.XGetTransientForHint(display, window, ctypes.byref(parent)):
217
+ return None
218
+ return int(parent.value)
219
+
220
+
221
+ def find_demo_dialog(
222
+ x11: ctypes.CDLL,
223
+ display: int,
224
+ observed: list[tuple[int, int, int, int, int]],
225
+ ) -> tuple[int, int, int, int, int] | None:
226
+ for candidate in observed:
227
+ window = candidate[0]
228
+ if window_title(x11, display, window) not in DIALOG_TITLES:
229
+ continue
230
+ parent = window_transient_for(x11, display, window)
231
+ if parent is None:
232
+ continue
233
+ if window_title(x11, display, parent) == HOPPER_WINDOW_TITLE:
234
+ return candidate
235
+ return None
236
+
237
+
238
+ def demo_click(dialog: tuple[int, int, int, int, int]) -> tuple[int, int]:
239
+ _window, x, y, _width, height = dialog
240
+ return x + DEMO_CLICK_LEFT, y + height - DEMO_CLICK_BOTTOM
241
+
242
+
199
243
  def configure_x11(x11: ctypes.CDLL, xtst: ctypes.CDLL) -> None:
200
244
  window_pointer = ctypes.POINTER(ctypes.c_ulong)
201
245
  x11.XOpenDisplay.argtypes = [ctypes.c_char_p]
@@ -212,6 +256,18 @@ def configure_x11(x11: ctypes.CDLL, xtst: ctypes.CDLL) -> None:
212
256
  ctypes.POINTER(XWindowAttributes),
213
257
  ]
214
258
  x11.XGetWindowAttributes.restype = ctypes.c_int
259
+ x11.XFetchName.argtypes = [
260
+ ctypes.c_void_p,
261
+ ctypes.c_ulong,
262
+ ctypes.POINTER(ctypes.c_char_p),
263
+ ]
264
+ x11.XFetchName.restype = ctypes.c_int
265
+ x11.XGetTransientForHint.argtypes = [
266
+ ctypes.c_void_p,
267
+ ctypes.c_ulong,
268
+ ctypes.POINTER(ctypes.c_ulong),
269
+ ]
270
+ x11.XGetTransientForHint.restype = ctypes.c_int
215
271
  x11.XQueryTree.argtypes = [
216
272
  ctypes.c_void_p,
217
273
  ctypes.c_ulong,
@@ -644,6 +700,7 @@ def run_launch(args: argparse.Namespace) -> int:
644
700
 
645
701
  deadline = time.monotonic() + 10
646
702
  observed: list[tuple[int, int, int, int, int]] = []
703
+ dialog: tuple[int, int, int, int, int] | None = None
647
704
  while time.monotonic() < deadline:
648
705
  if socket.exists():
649
706
  x11.XCloseDisplay(display)
@@ -659,7 +716,8 @@ def run_launch(args: argparse.Namespace) -> int:
659
716
  "owned Hopper process exited",
660
717
  )
661
718
  observed = windows(x11, display, root)
662
- if any(window[1:] == EXPECTED_DIALOG for window in observed):
719
+ dialog = find_demo_dialog(x11, display, observed)
720
+ if dialog is not None:
663
721
  break
664
722
  time.sleep(0.1)
665
723
  else:
@@ -675,8 +733,10 @@ def run_launch(args: argparse.Namespace) -> int:
675
733
  "expected Hopper demo dialog not found",
676
734
  )
677
735
 
736
+ assert dialog is not None
737
+ click_x, click_y = demo_click(dialog)
678
738
  input_results = (
679
- xtst.XTestFakeMotionEvent(display, -1, DEMO_CLICK[0], DEMO_CLICK[1], 0),
739
+ xtst.XTestFakeMotionEvent(display, -1, click_x, click_y, 0),
680
740
  xtst.XTestFakeButtonEvent(display, 1, True, 0),
681
741
  xtst.XTestFakeButtonEvent(display, 1, False, 0),
682
742
  )
@@ -695,9 +755,8 @@ def run_launch(args: argparse.Namespace) -> int:
695
755
  finally:
696
756
  if display is not None:
697
757
  x11.XCloseDisplay(display)
698
- if child is not None and child.poll() is None:
699
- child.terminate()
700
- child.wait()
758
+ if child is not None:
759
+ stop_process(child)
701
760
  stop_process(xvfb)
702
761
  capture.close()
703
762
 
package/scripts/rea.mjs CHANGED
@@ -19,7 +19,7 @@ const runtimeFiles = isMcpMode
19
19
  ? ["dist/main.js"]
20
20
  : isMcpDoctorMode
21
21
  ? ["dist/main.js", "dist/mcpDoctor.js"]
22
- : ["dist/cli.js", "dist/cliOutput.js"];
22
+ : ["dist/cli.js", "dist/cliOutput.js", "dist/cli/streamedJsonOutput.js"];
23
23
 
24
24
  if (!(await compiledRuntimeExists(runtimeFiles))) {
25
25
  process.stderr.write(
@@ -39,8 +39,11 @@ if (!(await compiledRuntimeExists(runtimeFiles))) {
39
39
  process.exitCode = result.exitCode;
40
40
  } else {
41
41
  const { createCli } = await import("../dist/cli.js");
42
+ const { createStreamedCliJsonOutput } =
43
+ await import("../dist/cli/streamedJsonOutput.js");
42
44
  const {
43
45
  renderCliOutputArgumentError,
46
+ renderEmptyFilteredCliOutput,
44
47
  sanitizeCliOutput,
45
48
  validateCliOutputArguments,
46
49
  } = await import("../dist/cliOutput.js");
@@ -49,9 +52,22 @@ if (!(await compiledRuntimeExists(runtimeFiles))) {
49
52
  process.stdout.write(renderCliOutputArgumentError(outputArguments));
50
53
  process.exitCode = 1;
51
54
  } else {
52
- await createCli().serve(args, {
53
- stdout: (output) => process.stdout.write(sanitizeCliOutput(output)),
55
+ let wroteOutput = false;
56
+ const resultOutput = createStreamedCliJsonOutput(args, process.stdout);
57
+ await createCli(process.env, resultOutput).serve(args, {
58
+ stdout: (output) => {
59
+ if (resultOutput?.handled) {
60
+ if (resultOutput.failed)
61
+ process.stderr.write(sanitizeCliOutput(output));
62
+ return;
63
+ }
64
+ const sanitized = sanitizeCliOutput(output);
65
+ if (sanitized.length > 0) wroteOutput = true;
66
+ process.stdout.write(sanitized);
67
+ },
54
68
  });
69
+ if (!wroteOutput && !resultOutput?.handled)
70
+ process.stdout.write(renderEmptyFilteredCliOutput(args) ?? "");
55
71
  }
56
72
  }
57
73
 
@@ -2,9 +2,9 @@
2
2
  name: reverse-engineer-anything
3
3
  description: Reverse engineer native, managed, Electron/JavaScript, packaged, firmware, and browser targets with REA. Use shipped-artifact or requested runtime evidence to explain features, compare versions, decompile code, or guide a reconstruction. Skip REA for ordinary source-repository architecture analysis.
4
4
  metadata:
5
- version: "26"
6
- tool_count: 125
7
- catalog_digest: "ed9c36900e9223561d38ba30a44921f4ff101d5eca989920f9edc9dc91df470b"
5
+ version: "33"
6
+ tool_count: 139
7
+ catalog_digest: "4c5f67d076baf821b5cb6d6fb2cc0f6c274e96b627b85b892577760a6f71ab1a"
8
8
  ---
9
9
 
10
10
  # REA
@@ -93,7 +93,27 @@ explicit path or endpoint and do not need it.
93
93
  consult the NativeAOT workflow in `references/native-and-artifacts.md` for
94
94
  optional metadata recovery and its supported host/layout boundary.
95
95
  - User-owned browser page already open: `list_browser_targets`.
96
+ - Retained HAR/native mitmproxy capture: `inspect_web_network_capture`. Select
97
+ original record ordinals when useful; inspect producer fields and byte/number
98
+ sidecars without fetching recorded URLs or claiming live attribution. See
99
+ [historical captures](https://github.com/morluto/rea/blob/main/docs/web-network-captures.md) for the exact upstream
100
+ profile and credential exclusions.
96
101
  - User-owned Electron runtime already open: `list_electron_targets`.
102
+ - Explicit local EVM bytecode carrier: `inspect_evm_interface` with caller-selected
103
+ `raw` or `hex` encoding. Preserve carrier/decoded digests and treat selectors,
104
+ argument strings and mutability as inferred candidates; this performs no chain
105
+ lookup or target execution. See the
106
+ [EVM bytecode guide](https://github.com/morluto/rea/blob/main/docs/evm-bytecode.md).
107
+ - Explicit Linux ELF file for offline layout, symbols, relocations or static
108
+ mitigation evidence: `inspect_binary_layout`. This target-free operation uses
109
+ caller-supplied pwntools without opening a disassembler database. Preserve its
110
+ raw locations and inference/coverage limits; see the
111
+ [offline binary guide](https://github.com/morluto/rea/blob/main/docs/binary-diagnostics.md).
112
+ - Supplied Linux x86-64 ELF core: `inspect_recorded_crash`. Read every recorded
113
+ thread, raw note and source-bound register without opening a live target.
114
+ Historical PIDs do not select live processes. Request `include_debugger_context`
115
+ only when core-only mapping candidates help; see the
116
+ [recorded crash guide](https://github.com/morluto/rea/blob/main/docs/recorded-crashes.md).
97
117
  - Native executable, library, or analysis database: `open_binary`, then
98
118
  use focused analysis tools directly; call `binary_overview` when metadata or
99
119
  inventory context is useful and available from the selected provider.
@@ -1,7 +1,7 @@
1
1
  # Android application artifacts
2
2
 
3
- Use the connected server's advertised Android tools. Repository main includes
4
- this family; npm 4.0.1 does not. A skill installation alone cannot add it to an
3
+ Use the connected server's advertised Android tools. Repository main and npm
4
+ 4.1.0 include this family. A skill installation alone cannot add it to an
5
5
  older server.
6
6
 
7
7
  Start with `inspect_android_package` on the caller's APK path for package
@@ -44,7 +44,7 @@ When advertised by the connected server, application trace and compare tools
44
44
  accept complete inline Evidence or
45
45
  `{"kind":"retained-evidence","evidence_id":"ev_<64 lowercase hex characters>"}`
46
46
  for their application input (`application`, or `left`/`right`). This notation is
47
- a template: replace it with the actual returned ID. npm 4.0.1 accepts only full
47
+ a template: replace it with the actual returned ID. Versions before 4.1.0 accept only full
48
48
  inline Evidence. Use the exact ID
49
49
  returned by the producer on the same MCP connection. Resolution does not run
50
50
  analysis or select a provider; findings remain inline. Native observation