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.
- package/README.md +173 -568
- package/bridge/android/ReaJadxBridge.java +247 -0
- package/bridge/mitmproxy/capture.py +210 -0
- package/bridge/native/NativeUIChildren.swift +27 -0
- package/bridge/native/ReaNativeUI.swift +30 -16
- package/bridge/native/rea_lldb_tracer.py +303 -0
- package/bridge/process/ProcessRunTokenReader.swift +263 -0
- package/bridge/process/ProcessRunTokenReaderMain.swift +35 -0
- package/bridge/pwndbg/core_context.py +101 -0
- package/bridge/pwndbg/launch.py +39 -0
- package/bridge/pwndbg/launch_impl.py +34 -0
- package/bridge/pwntools/decoder_runtime.py +59 -0
- package/bridge/pwntools/layout.py +39 -0
- package/bridge/pwntools/layout_impl.py +309 -0
- package/bridge/pwntools/recorded_crash.py +39 -0
- package/bridge/pwntools/recorded_crash_impl.py +143 -0
- package/dist/android/AndroidTargetSnapshot.js +5 -3
- package/dist/android/JadxAnalysis.js +8 -6
- package/dist/android/JadxConfiguration.js +19 -3
- package/dist/android/JadxMcpTransport.js +43 -16
- package/dist/android/JadxProtocol.js +8 -0
- package/dist/android/JadxProvider.js +118 -28
- package/dist/android/JadxRelease.js +8 -0
- package/dist/android/JadxSession.js +32 -18
- package/dist/application/AppBundleExecutable.js +141 -0
- package/dist/application/BinaryTargetResolver.js +9 -64
- package/dist/application/CapabilityInventory.js +82 -3
- package/dist/application/ClientConfigurationDocument.js +72 -12
- package/dist/application/ClientRegistrationStatus.js +7 -8
- package/dist/application/DirectAnalysis.js +109 -37
- package/dist/application/DirectAnalysisStatus.js +4 -5
- package/dist/application/DoctorDiagnostics.js +3 -3
- package/dist/application/EnhancedTools.js +4 -4
- package/dist/application/EvidenceBundleCommands.js +1 -1
- package/dist/application/EvidenceBundleFiles.js +1 -1
- package/dist/application/InvestigationProviders.js +6 -0
- package/dist/application/LinuxHopper.js +8 -2
- package/dist/application/OptionalObservationProviders.js +3 -0
- package/dist/application/ReconstructionCoverageService.js +2 -6
- package/dist/application/ReconstructionObligationCandidates.js +10 -3
- package/dist/application/ReferenceSourceImport.js +2 -0
- package/dist/application/ReferenceSourceImportEntries.js +20 -3
- package/dist/application/ReferenceSourceImportTypes.js +5 -0
- package/dist/application/Setup.js +10 -2
- package/dist/application/SetupClientConfiguration.js +19 -16
- package/dist/application/SetupHost.js +18 -3
- package/dist/application/SetupPlan.js +1 -1
- package/dist/application/Uninstall.js +23 -17
- package/dist/application/UpdateMaintenance.js +3 -3
- package/dist/application/ValidateSelectedWebScript.js +27 -0
- package/dist/application/WebModuleTraceService.js +209 -0
- package/dist/application/WebNetworkCaptureService.js +132 -0
- package/dist/application/WebRuntimeService.js +73 -0
- package/dist/application/WebScriptExportService.js +115 -0
- package/dist/application/WebSourceLocationService.js +160 -0
- package/dist/application/WindowsCapabilities.js +1 -1
- package/dist/application/{AndroidAnalysisService.js → android/AndroidAnalysisService.js} +6 -6
- package/dist/application/{AndroidApplicationService.js → android/AndroidApplicationService.js} +3 -3
- package/dist/application/{AppleApplicationService.js → apple/AppleApplicationService.js} +5 -5
- package/dist/application/{AnalysisClientCleanup.js → binary/AnalysisClientCleanup.js} +2 -2
- package/dist/application/{AnalysisProviderEvaluation.js → binary/AnalysisProviderEvaluation.js} +4 -4
- package/dist/application/{AnalysisProviderRegistry.js → binary/AnalysisProviderRegistry.js} +5 -5
- package/dist/application/{AnalysisSnapshotCache.js → binary/AnalysisSnapshotCache.js} +55 -14
- package/dist/application/{AnalysisSnapshotFiles.js → binary/AnalysisSnapshotFiles.js} +4 -4
- package/dist/application/{BinarySession.js → binary/BinarySession.js} +50 -20
- package/dist/application/{BinarySessionComposition.js → binary/BinarySessionComposition.js} +2 -1
- package/dist/application/{BinarySessionExecution.js → binary/BinarySessionExecution.js} +9 -7
- package/dist/application/{BinarySessionOpen.js → binary/BinarySessionOpen.js} +22 -9
- package/dist/application/{BinarySessionRecords.js → binary/BinarySessionRecords.js} +48 -40
- package/dist/application/{CompositeProvider.js → binary/CompositeProvider.js} +2 -2
- package/dist/application/{LazyAnalysisProvider.js → binary/LazyAnalysisProvider.js} +6 -6
- package/dist/application/{SessionProviderRouter.js → binary/SessionProviderRouter.js} +7 -7
- package/dist/application/binaryDiagnostics/BinaryLayoutService.js +57 -0
- package/dist/application/binaryDiagnostics/RecordedCrashPort.js +1 -0
- package/dist/application/binaryDiagnostics/RecordedCrashService.js +60 -0
- package/dist/application/evm/EvmInterfacePort.js +1 -0
- package/dist/application/evm/EvmInterfaceService.js +62 -0
- package/dist/application/firmware/FirmwareAnalysisPort.js +1 -0
- package/dist/application/{FirmwareAnalysisService.js → firmware/FirmwareAnalysisService.js} +5 -5
- package/dist/application/{EvidenceLedger.js → investigation/EvidenceLedger.js} +44 -7
- package/dist/application/investigation/InvestigationRecordPort.js +1 -0
- package/dist/application/investigation/InvestigationRecords.js +69 -0
- package/dist/application/{UnknownEvidence.js → investigation/UnknownEvidence.js} +1 -1
- package/dist/application/{ElectronActiveEvidence.js → javascript/ElectronActiveEvidence.js} +3 -3
- package/dist/application/javascript/ElectronActiveObservationPort.js +1 -0
- package/dist/application/{ElectronActiveObservationService.js → javascript/ElectronActiveObservationService.js} +3 -3
- package/dist/application/{ElectronBoundaryAnalysis.js → javascript/ElectronBoundaryAnalysis.js} +1 -1
- package/dist/application/{ElectronBoundaryGraphContext.js → javascript/ElectronBoundaryGraphContext.js} +1 -1
- package/dist/application/{ElectronEvidence.js → javascript/ElectronEvidence.js} +2 -2
- package/dist/application/javascript/ElectronObservationPort.js +1 -0
- package/dist/application/{ElectronObservationService.js → javascript/ElectronObservationService.js} +3 -3
- package/dist/application/{JavaScriptApplicationEvidence.js → javascript/JavaScriptApplicationEvidence.js} +3 -4
- package/dist/application/{JavaScriptApplicationEvidenceGraph.js → javascript/JavaScriptApplicationEvidenceGraph.js} +5 -5
- package/dist/application/{JavaScriptApplicationService.js → javascript/JavaScriptApplicationService.js} +25 -12
- package/dist/application/{JavaScriptApplicationWorkflowEvidence.js → javascript/JavaScriptApplicationWorkflowEvidence.js} +3 -3
- package/dist/application/{JavaScriptApplicationWorkflowService.js → javascript/JavaScriptApplicationWorkflowService.js} +12 -12
- package/dist/application/{JavaScriptArtifactAnalysis.js → javascript/JavaScriptArtifactAnalysis.js} +50 -47
- package/dist/application/javascript/JavaScriptArtifactAnalysisTypes.js +1 -0
- package/dist/application/{JavaScriptArtifactGraphAccumulator.js → javascript/JavaScriptArtifactGraphAccumulator.js} +16 -2
- package/dist/application/{JavaScriptArtifactGraphBuilder.js → javascript/JavaScriptArtifactGraphBuilder.js} +2 -2
- package/dist/application/{JavaScriptArtifactGraphContext.js → javascript/JavaScriptArtifactGraphContext.js} +1 -1
- package/dist/application/{JavaScriptArtifactGraphDocuments.js → javascript/JavaScriptArtifactGraphDocuments.js} +27 -3
- package/dist/application/{JavaScriptArtifactGraphFindings.js → javascript/JavaScriptArtifactGraphFindings.js} +20 -7
- package/dist/application/{JavaScriptArtifactGraphStructure.js → javascript/JavaScriptArtifactGraphStructure.js} +1 -1
- package/dist/application/{JavaScriptArtifactPathResolution.js → javascript/JavaScriptArtifactPathResolution.js} +80 -36
- package/dist/application/{JavaScriptArtifactReconstruction.js → javascript/JavaScriptArtifactReconstruction.js} +26 -17
- package/dist/application/{JavaScriptJsonModules.js → javascript/JavaScriptJsonModules.js} +1 -1
- package/dist/application/{JavaScriptModuleRelationships.js → javascript/JavaScriptModuleRelationships.js} +2 -2
- package/dist/application/javascript/JavaScriptRecoveryPort.js +1 -0
- package/dist/application/javascript/JavaScriptRecoveryService.js +52 -0
- package/dist/application/{JavaScriptReturnShapeProjection.js → javascript/JavaScriptReturnShapeProjection.js} +3 -3
- package/dist/application/{JavaScriptRuntimeObservationEvidence.js → javascript/JavaScriptRuntimeObservationEvidence.js} +2 -2
- package/dist/application/javascript/JavaScriptRuntimeObservationPort.js +1 -0
- package/dist/application/{JavaScriptRuntimeObservationService.js → javascript/JavaScriptRuntimeObservationService.js} +3 -3
- package/dist/application/{JavaScriptRuntimeReconciliationEvidence.js → javascript/JavaScriptRuntimeReconciliationEvidence.js} +3 -3
- package/dist/application/{JavaScriptRuntimeReconciliationService.js → javascript/JavaScriptRuntimeReconciliationService.js} +6 -6
- package/dist/application/{JavaScriptSemanticGraphAsyncProjection.js → javascript/JavaScriptSemanticGraphAsyncProjection.js} +8 -8
- package/dist/application/{JavaScriptSemanticGraphBuilder.js → javascript/JavaScriptSemanticGraphBuilder.js} +150 -73
- package/dist/application/{JavaScriptSemanticGraphChildProcessProjection.js → javascript/JavaScriptSemanticGraphChildProcessProjection.js} +15 -16
- package/dist/application/{JavaScriptSemanticGraphConstruction.js → javascript/JavaScriptSemanticGraphConstruction.js} +43 -2
- package/dist/application/{JavaScriptSemanticGraphDataProjection.js → javascript/JavaScriptSemanticGraphDataProjection.js} +8 -8
- package/dist/application/{JavaScriptSemanticGraphFingerprintProjection.js → javascript/JavaScriptSemanticGraphFingerprintProjection.js} +1 -1
- package/dist/application/{JavaScriptSemanticGraphFlowProjection.js → javascript/JavaScriptSemanticGraphFlowProjection.js} +7 -11
- package/dist/application/{JavaScriptSemanticGraphObjectProjection.js → javascript/JavaScriptSemanticGraphObjectProjection.js} +4 -4
- package/dist/application/javascript/JavaScriptSemanticGraphProjection.js +144 -0
- package/dist/application/{JavaScriptSemanticGraphResourceProjection.js → javascript/JavaScriptSemanticGraphResourceProjection.js} +4 -4
- package/dist/application/{JavaScriptSemanticGraphValueProjection.js → javascript/JavaScriptSemanticGraphValueProjection.js} +5 -5
- package/dist/application/{JavaScriptSemanticTraceService.js → javascript/JavaScriptSemanticTraceService.js} +6 -6
- package/dist/application/{ManagedApplicationGraphService.js → managed/ManagedApplicationGraphService.js} +7 -7
- package/dist/application/{ManagedMemberComparisonService.js → managed/ManagedMemberComparisonService.js} +10 -10
- package/dist/application/{ManagedNativeVerificationService.js → managed/ManagedNativeVerificationService.js} +7 -7
- package/dist/application/{ManagedReconstructionService.js → managed/ManagedReconstructionService.js} +7 -7
- package/dist/application/{NativeApiInspection.js → native/NativeApiInspection.js} +1 -1
- package/dist/application/{NativeCallRoutes.js → native/NativeCallRoutes.js} +3 -3
- package/dist/application/{NativeDispatchMetadataInspection.js → native/NativeDispatchMetadataInspection.js} +4 -4
- package/dist/application/{NativeUiActionTrace.js → native/NativeUiActionTrace.js} +7 -7
- package/dist/application/{NativeValueTrace.js → native/NativeValueTrace.js} +6 -6
- package/dist/application/{ProcessCli.js → process/ProcessCli.js} +15 -11
- package/dist/application/{ProcessEvidence.js → process/ProcessEvidence.js} +4 -4
- package/dist/{application/ArtifactInventory/hash.js → artifacts/ArtifactHash.js} +4 -2
- package/dist/artifacts/ArtifactPaths.js +3 -3
- package/dist/artifacts/ArtifactProvider.js +37 -40
- package/dist/artifacts/ArtifactProviderMetadata.js +37 -0
- package/dist/artifacts/AsarArtifactReader.js +195 -23
- package/dist/artifacts/AsarEntryStream.js +76 -0
- package/dist/artifacts/DirectoryArtifactReader.js +41 -7
- package/dist/artifacts/NativeDmgArtifactReader.js +161 -9
- package/dist/artifacts/ZipArtifactReader.js +3 -0
- package/dist/{application → artifacts/apple}/AppleAssetCatalogAnalysis.js +4 -4
- package/dist/artifacts/apple/DylibResolutionReader.js +259 -0
- package/dist/{application → artifacts/apple}/InterfaceBuilderAnalysis.js +125 -51
- package/dist/artifacts/{KeyedArchiveReader.js → apple/KeyedArchiveReader.js} +21 -27
- package/dist/artifacts/apple/MachoLoadCommandReader.js +294 -0
- package/dist/artifacts/apple/NibViewHierarchy.js +150 -0
- package/dist/{application → artifacts/extraction}/ArtifactExtraction.js +10 -10
- package/dist/{application → artifacts/inventory}/ArtifactGraphConstruction.js +3 -3
- package/dist/{application → artifacts/inventory}/ArtifactInventory.js +4 -4
- package/dist/{application/ArtifactInventory → artifacts/inventory}/classify.js +2 -2
- package/dist/{application/ArtifactInventory → artifacts/inventory}/reader.js +5 -5
- package/dist/{application/ArtifactInventory → artifacts/inventory}/scanCanonical.js +3 -3
- package/dist/{application/ArtifactInventory → artifacts/inventory}/scanReader.js +5 -5
- package/dist/{application → artifacts/javascript}/JavaScriptArtifactFiles.js +27 -6
- package/dist/artifacts/javascript/JavaScriptArtifactReader.js +6 -0
- package/dist/artifacts/readStableArtifact.js +68 -0
- package/dist/browser/BrowserScenarioSecrets.js +50 -8
- package/dist/browser/CdpAuthorizedMainFrame.js +4 -4
- package/dist/browser/CdpAuthorizedTarget.js +22 -0
- package/dist/browser/CdpBrowserProvider.js +4 -15
- package/dist/browser/CdpCaptureDocuments.js +33 -21
- package/dist/browser/CdpCaptureEventBodyShapes.js +3 -3
- package/dist/browser/CdpCaptureEventHandlers.js +116 -28
- package/dist/browser/CdpCaptureEventHelpers.js +6 -6
- package/dist/browser/CdpCaptureEvents.js +9 -0
- package/dist/browser/CdpCaptureStorage.js +10 -8
- package/dist/browser/CdpCaptureStorageFingerprints.js +24 -22
- package/dist/browser/CdpCaptureValues.js +2 -2
- package/dist/browser/CdpCommandRejection.js +17 -0
- package/dist/browser/CdpConnection.js +51 -11
- package/dist/browser/CdpElectronInspection.js +10 -10
- package/dist/browser/CdpElectronProvider.js +3 -6
- package/dist/browser/CdpElectronScriptEvents.js +6 -6
- package/dist/browser/CdpElectronScripts.js +2 -2
- package/dist/browser/CdpElectronWorkers.js +4 -4
- package/dist/browser/CdpObservationSession.js +18 -23
- package/dist/browser/CdpPageCapture.js +4 -4
- package/dist/browser/CdpPageCaptureScripts.js +2 -2
- package/dist/browser/CdpPageCaptureWorkers.js +9 -9
- package/dist/browser/CdpSafeMetadata.js +48 -10
- package/dist/browser/CdpScreenshot.js +5 -5
- package/dist/browser/CdpTargetEvents.js +8 -0
- package/dist/browser/CdpTargetSession.js +2 -2
- package/dist/browser/CdpWebMcpDiscovery.js +22 -16
- package/dist/browser/PlaywrightBrowserScenarioProvider.js +7 -6
- package/dist/browser/PlaywrightElectronActiveProvider.js +15 -9
- package/dist/browser/PlaywrightScenarioEvents.js +59 -51
- package/dist/browser/PlaywrightScenarioSession.js +8 -1
- package/dist/browser/WebSourceMapFetcher.js +37 -53
- package/dist/browser/assets/LocalWebScriptArtifacts.js +87 -0
- package/dist/browser/assets/PageScriptCapture.js +32 -0
- package/dist/browser/assets/PublishWebScripts.js +74 -0
- package/dist/browser/assets/ScenarioScriptCapture.js +76 -0
- package/dist/browser/assets/ScriptCaptureAdapters.js +57 -0
- package/dist/browser/assets/WebArtifactReads.js +56 -0
- package/dist/browser/assets/WebSourceLocationArtifacts.js +40 -0
- package/dist/browser/execution/CdpEventListeners.js +79 -0
- package/dist/browser/execution/CdpExecutionCapture.js +135 -0
- package/dist/browser/execution/CdpExecutionCollection.js +57 -0
- package/dist/browser/execution/CdpExecutionWindow.js +100 -0
- package/dist/browser/execution/CdpListenerSelector.js +22 -0
- package/dist/browser/execution/CdpPreciseCoverage.js +48 -0
- package/dist/browser/execution/CdpRuntimeInitiator.js +18 -0
- package/dist/browser/execution/CdpRuntimeProtocol.js +106 -0
- package/dist/browser/execution/CdpRuntimeRequests.js +81 -0
- package/dist/browser/execution/CdpRuntimeSession.js +163 -0
- package/dist/browser/execution/CdpRuntimeSources.js +223 -0
- package/dist/browser/execution/CdpWebRuntimeProvider.js +51 -0
- package/dist/browser/history/CaptureFailures.js +101 -0
- package/dist/browser/history/CaptureFormatError.js +10 -0
- package/dist/browser/history/CaptureRedaction.js +65 -0
- package/dist/browser/history/CaptureRelease.js +12 -0
- package/dist/browser/history/HarCapture.js +165 -0
- package/dist/browser/history/HarCaptureAdapter.js +20 -0
- package/dist/browser/history/HarCaptureProcess.js +57 -0
- package/dist/browser/history/HarJson.js +91 -0
- package/dist/browser/history/HarSchema.js +72 -0
- package/dist/browser/history/HistoricalCaptureDecoder.js +186 -0
- package/dist/browser/history/HistoricalCaptureFormatAdapter.js +1 -0
- package/dist/browser/history/MitmproxyCaptureAdapter.js +42 -0
- package/dist/browser/modules/NativeModuleResolver.js +210 -0
- package/dist/browser/modules/WebModuleArtifacts.js +40 -0
- package/dist/browser/network/PlaywrightNetworkContent.js +71 -0
- package/dist/browser/network/PlaywrightScenarioNetwork.js +180 -0
- package/dist/browser/providerIdentities.js +24 -0
- package/dist/catalogIdentity.js +23 -15
- package/dist/cli/androidCommands.js +13 -3
- package/dist/cli/applicationCommands.js +39 -8
- package/dist/cli/artifactCommands.js +27 -2
- package/dist/cli/binaryDiagnosticsCommands.js +39 -0
- package/dist/cli/browserAdvancedCommands.js +27 -9
- package/dist/cli/coreAnalysisCommands.js +6 -494
- package/dist/cli/coreBinaryCommands.js +211 -0
- package/dist/cli/coreNativeCommands.js +293 -0
- package/dist/cli/electronCommands.js +29 -27
- package/dist/cli/evmCommands.js +24 -0
- package/dist/cli/firmwareCommands.js +9 -6
- package/dist/cli/javascriptApplicationAnalysis.js +17 -4
- package/dist/cli/javascriptRecoveryCommands.js +45 -0
- package/dist/cli/jsonOutput.js +133 -0
- package/dist/cli/managedCommands.js +4 -4
- package/dist/cli/managedProjectGraphCommand.js +1 -1
- package/dist/cli/nativeCallCommands.js +35 -0
- package/dist/cli/processCommands.js +1 -1
- package/dist/cli/referenceSourceImportStatus.js +6 -1
- package/dist/cli/streamedJsonOutput.js +56 -0
- package/dist/cli/utilityCommands.js +49 -23
- package/dist/cli/webModuleCommands.js +56 -0
- package/dist/cli/webNetworkCaptureCommands.js +40 -0
- package/dist/cli/webRuntimeCommands.js +60 -0
- package/dist/cli/webScriptCommands.js +31 -0
- package/dist/cli/webSourceLocationCommands.js +42 -0
- package/dist/cli.js +19 -3
- package/dist/cliBrowserContext.js +4 -2
- package/dist/cliBrowserScenarioCommands.js +6 -5
- package/dist/cliCommandNames.js +14 -0
- package/dist/cliJavaScriptRuntimeCommands.js +6 -4
- package/dist/cliJsonInput.js +38 -2
- package/dist/cliOutput.js +52 -11
- package/dist/composition/android.js +3 -0
- package/dist/composition/auxiliaryAnalysisProviders.js +30 -0
- package/dist/composition/binary.js +25 -0
- package/dist/composition/binaryDiagnostics.js +8 -0
- package/dist/composition/browserObservation.js +3 -0
- package/dist/composition/browserScenario.js +3 -0
- package/dist/composition/directAnalysis.js +17 -0
- package/dist/composition/electronObservation.js +3 -0
- package/dist/composition/electronScenario.js +3 -0
- package/dist/composition/evm.js +4 -0
- package/dist/composition/firmware.js +3 -0
- package/dist/composition/javascriptRecovery.js +3 -0
- package/dist/composition/javascriptRuntimeObservation.js +3 -0
- package/dist/composition/optionalObservationProviders.js +49 -0
- package/dist/composition/webModules.js +5 -0
- package/dist/composition/webNetworkCaptures.js +6 -0
- package/dist/composition/webRuntime.js +4 -0
- package/dist/composition/webSourceLocations.js +5 -0
- package/dist/config/parseConfig.js +22 -3
- package/dist/contracts/{androidToolContracts.js → android/androidToolContracts.js} +5 -5
- package/dist/contracts/applicationToolContracts.js +43 -8
- package/dist/contracts/artifactToolContracts.js +8 -2
- package/dist/contracts/browserCaptureToolInputSchema.js +43 -0
- package/dist/contracts/browserScenarioToolContracts.js +1 -1
- package/dist/contracts/browserToolContracts.js +4 -3
- package/dist/contracts/enhancedInputs.js +1 -1
- package/dist/contracts/errorSchemas.js +8 -1
- package/dist/contracts/evm/evmToolContracts.js +20 -0
- package/dist/contracts/{firmwareToolContracts.js → firmware/firmwareToolContracts.js} +5 -5
- package/dist/contracts/investigationExamples.js +2 -2
- package/dist/contracts/{applicationWorkflowInputContracts.js → javascript/applicationWorkflowInputContracts.js} +6 -6
- package/dist/contracts/{electronToolContracts.js → javascript/electronToolContracts.js} +6 -6
- package/dist/contracts/{javascriptApplicationWorkflowExamples.js → javascript/javascriptApplicationWorkflowExamples.js} +3 -3
- package/dist/contracts/javascript/javascriptRecoveryToolContracts.js +23 -0
- package/dist/contracts/{javascriptRuntimeObservationToolContracts.js → javascript/javascriptRuntimeObservationToolContracts.js} +3 -3
- package/dist/contracts/{javascriptRuntimeReconciliationExample.js → javascript/javascriptRuntimeReconciliationExample.js} +5 -5
- package/dist/contracts/{managedToolContracts.js → managed/managedToolContracts.js} +10 -6
- package/dist/contracts/{managedWorkflowExamples.js → managed/managedWorkflowExamples.js} +1 -1
- package/dist/contracts/{managedWorkflowToolContracts.js → managed/managedWorkflowToolContracts.js} +6 -6
- package/dist/contracts/mobileApplicationGraphExamples.js +105 -0
- package/dist/contracts/native/binaryDiagnosticsToolContracts.js +42 -0
- package/dist/contracts/{nativeToolContracts.js → native/nativeToolContracts.js} +31 -8
- package/dist/contracts/officialToolContracts.js +15 -12
- package/dist/contracts/process/processCaptureExample.js +2 -0
- package/dist/contracts/sessionLifecycleInputs.js +22 -5
- package/dist/contracts/sessionStatusContract.js +10 -2
- package/dist/contracts/sessionToolContracts.js +9 -2
- package/dist/contracts/sessionToolSchemas.js +10 -3
- package/dist/contracts/toolContractExamples.js +1 -1
- package/dist/contracts/toolContracts.js +19 -7
- package/dist/contracts/toolEffects.js +62 -0
- package/dist/contracts/toolOutputSchemaGroups.js +23 -19
- package/dist/contracts/toolOutputSchemaPrimitives.js +1 -1
- package/dist/contracts/webNetworkCaptureToolContracts.js +24 -0
- package/dist/contracts/webRuntimeToolContracts.js +43 -0
- package/dist/contracts/webScriptToolContracts.js +68 -0
- package/dist/domain/analysisErrorBase.js +15 -0
- package/dist/domain/analysisErrorCore.js +63 -7
- package/dist/domain/analysisErrorPresentation.js +29 -1
- package/dist/domain/analysisErrorProjection.js +53 -2
- package/dist/domain/analysisSnapshot.js +166 -2
- package/dist/domain/{androidApplication.js → android/androidApplication.js} +7 -6
- package/dist/domain/apple/appleApplication.js +277 -0
- package/dist/domain/{appleAssetCatalog.js → apple/appleAssetCatalog.js} +2 -2
- package/dist/domain/apple/appleBundleAnatomy.js +236 -0
- package/dist/domain/apple/dyldPaths.js +81 -0
- package/dist/domain/apple/dylibResolution.js +367 -0
- package/dist/domain/apple/dylibResolutionFindings.js +75 -0
- package/dist/domain/{interfaceBuilderGraph.js → apple/interfaceBuilderGraph.js} +47 -314
- package/dist/domain/apple/interfaceBuilderKeyedArchive.js +411 -0
- package/dist/domain/{keyedArchive.js → apple/keyedArchive.js} +10 -9
- package/dist/domain/apple/plistValue.js +35 -0
- package/dist/domain/artifactInventoryEvidence.js +12 -2
- package/dist/domain/artifactInventorySnapshot.js +1 -0
- package/dist/domain/artifactOperationError.js +5 -1
- package/dist/domain/artifactPathSyntax.js +26 -0
- package/dist/domain/browserNetworkEvidence.js +82 -0
- package/dist/domain/browserObservation.js +1 -1
- package/dist/domain/browserObservationError.js +2 -0
- package/dist/domain/browserObservationSchemas.js +15 -1
- package/dist/domain/browserScenarioCapture.js +22 -0
- package/dist/domain/browserScenarioCaptureValues.js +25 -0
- package/dist/domain/browserScenarioDiff.js +6 -3
- package/dist/domain/browserScenarioDiffEvidence.js +35 -1
- package/dist/domain/browserScenarioValues.js +21 -3
- package/dist/domain/browserSession.js +2 -7
- package/dist/domain/bundleComparison.js +2 -1
- package/dist/domain/callPath.js +52 -44
- package/dist/domain/callPathSchemas.js +1 -1
- package/dist/domain/canonicalDigest.js +13 -1
- package/dist/domain/changedBehavior.js +3 -3
- package/dist/domain/comparisonStatus.js +11 -0
- package/dist/domain/conformanceTrustGate.js +0 -16
- package/dist/domain/evidence.js +17 -5
- package/dist/domain/evidenceBundle.js +98 -35
- package/dist/domain/evm/evmInterface.js +63 -0
- package/dist/domain/explicitSensitiveFailure.js +92 -0
- package/dist/domain/explicitSensitiveValues.js +10 -0
- package/dist/domain/{firmwareAnalysis.js → firmware/firmwareAnalysis.js} +10 -3
- package/dist/domain/functionComparisonNormalization.js +11 -13
- package/dist/domain/hopperValues.js +2 -2
- package/dist/domain/inputIssueProjection.js +17 -2
- package/dist/domain/{electronActiveObservation.js → javascript/electronActiveObservation.js} +9 -4
- package/dist/domain/{electronObservation.js → javascript/electronObservation.js} +5 -11
- package/dist/domain/{electronStaticAnalysisBrowser.js → javascript/electronStaticAnalysisBrowser.js} +4 -3
- package/dist/domain/{electronStaticAnalysisIpc.js → javascript/electronStaticAnalysisIpc.js} +2 -2
- package/dist/domain/{electronStaticAnalysisNative.js → javascript/electronStaticAnalysisNative.js} +12 -13
- package/dist/domain/javascript/electronStaticAnalysisTypes.js +1 -0
- package/dist/domain/{electronStaticAnalysisValues.js → javascript/electronStaticAnalysisValues.js} +3 -3
- package/dist/domain/javascript/htmlArtifactReferences.js +40 -0
- package/dist/domain/{javascriptApplicationAnalysis.js → javascript/javascriptApplicationAnalysis.js} +2 -2
- package/dist/domain/{javascriptApplicationChangeGraph.js → javascript/javascriptApplicationChangeGraph.js} +1 -1
- package/dist/domain/{javascriptApplicationEvidenceSchemas.js → javascript/javascriptApplicationEvidenceSchemas.js} +6 -4
- package/dist/domain/{javascriptApplicationGraph.js → javascript/javascriptApplicationGraph.js} +2 -2
- package/dist/domain/{javascriptApplicationGraphSchemas.js → javascript/javascriptApplicationGraphSchemas.js} +2 -2
- package/dist/domain/{javascriptApplicationVersionComparison.js → javascript/javascriptApplicationVersionComparison.js} +2 -2
- package/dist/domain/{javascriptApplicationVersionComparisonSchemas.js → javascript/javascriptApplicationVersionComparisonSchemas.js} +3 -3
- package/dist/domain/{javascriptApplicationVersionItems.js → javascript/javascriptApplicationVersionItems.js} +2 -2
- package/dist/domain/{javascriptApplicationVersionKeys.js → javascript/javascriptApplicationVersionKeys.js} +16 -9
- package/dist/domain/javascript/javascriptArtifactFiles.js +1 -0
- package/dist/domain/{javascriptAstFingerprint.js → javascript/javascriptAstFingerprint.js} +38 -22
- package/dist/domain/javascript/javascriptAstValues.js +23 -0
- package/dist/domain/{javascriptExportShapeComparison.js → javascript/javascriptExportShapeComparison.js} +21 -5
- package/dist/domain/{javascriptExportShapeComparisonSchemas.js → javascript/javascriptExportShapeComparisonSchemas.js} +2 -2
- package/dist/domain/{javascriptExportShapeSelection.js → javascript/javascriptExportShapeSelection.js} +1 -1
- package/dist/domain/{javascriptExportShapeVariants.js → javascript/javascriptExportShapeVariants.js} +1 -11
- package/dist/domain/{javascriptFeatureSeed.js → javascript/javascriptFeatureSeed.js} +4 -3
- package/dist/domain/{javascriptFeatureTrace.js → javascript/javascriptFeatureTrace.js} +2 -2
- package/dist/domain/{javascriptFeatureTraceSchemas.js → javascript/javascriptFeatureTraceSchemas.js} +32 -18
- package/dist/domain/{javascriptFeatureTraversal.js → javascript/javascriptFeatureTraversal.js} +6 -2
- package/dist/domain/{javascriptNativeHandoff.js → javascript/javascriptNativeHandoff.js} +1 -1
- package/dist/domain/javascript/javascriptRecovery.js +88 -0
- package/dist/domain/{javascriptRuntimeLoadState.js → javascript/javascriptRuntimeLoadState.js} +1 -1
- package/dist/domain/{javascriptRuntimeObservation.js → javascript/javascriptRuntimeObservation.js} +2 -2
- package/dist/domain/{javascriptRuntimeReconciliationActive.js → javascript/javascriptRuntimeReconciliationActive.js} +3 -3
- package/dist/domain/{javascriptRuntimeReconciliationGraph.js → javascript/javascriptRuntimeReconciliationGraph.js} +1 -1
- package/dist/domain/{javascriptRuntimeReconciliationMatching.js → javascript/javascriptRuntimeReconciliationMatching.js} +2 -2
- package/dist/domain/{javascriptRuntimeReconciliationParsing.js → javascript/javascriptRuntimeReconciliationParsing.js} +5 -5
- package/dist/domain/{javascriptRuntimeReconciliationResult.js → javascript/javascriptRuntimeReconciliationResult.js} +2 -2
- package/dist/domain/{javascriptRuntimeReconciliationSchemas.js → javascript/javascriptRuntimeReconciliationSchemas.js} +4 -4
- package/dist/domain/{javascriptRuntimeStaticCandidates.js → javascript/javascriptRuntimeStaticCandidates.js} +1 -1
- package/dist/domain/{javascriptSemanticAnalysis.js → javascript/javascriptSemanticAnalysis.js} +40 -14
- package/dist/domain/{javascriptSemanticAsyncEffects.js → javascript/javascriptSemanticAsyncEffects.js} +2 -1
- package/dist/domain/{javascriptSemanticCallResolution.js → javascript/javascriptSemanticCallResolution.js} +10 -5
- package/dist/domain/{javascriptSemanticCalls.js → javascript/javascriptSemanticCalls.js} +7 -4
- package/dist/domain/{javascriptSemanticChildProcesses.js → javascript/javascriptSemanticChildProcesses.js} +4 -2
- package/dist/domain/{javascriptSemanticDataEffectHelpers.js → javascript/javascriptSemanticDataEffectHelpers.js} +7 -6
- package/dist/domain/{javascriptSemanticDataEffects.js → javascript/javascriptSemanticDataEffects.js} +8 -6
- package/dist/domain/{javascriptSemanticFingerprints.js → javascript/javascriptSemanticFingerprints.js} +40 -16
- package/dist/domain/{javascriptSemanticGraph.js → javascript/javascriptSemanticGraph.js} +23 -7
- package/dist/domain/{javascriptSemanticGraphSchemas.js → javascript/javascriptSemanticGraphSchemas.js} +3 -3
- package/dist/domain/javascript/javascriptSemanticMemberMutations.js +116 -0
- package/dist/domain/javascript/javascriptSemanticMutationValues.js +53 -0
- package/dist/domain/{javascriptSemanticObjects.js → javascript/javascriptSemanticObjects.js} +5 -5
- package/dist/domain/{javascriptSemanticPrimitives.js → javascript/javascriptSemanticPrimitives.js} +1 -1
- package/dist/domain/{javascriptSemanticProjection.js → javascript/javascriptSemanticProjection.js} +31 -44
- package/dist/domain/{javascriptSemanticPromises.js → javascript/javascriptSemanticPromises.js} +77 -22
- package/dist/domain/{javascriptSemanticProvenance.js → javascript/javascriptSemanticProvenance.js} +4 -1
- package/dist/domain/{javascriptSemanticQuery.js → javascript/javascriptSemanticQuery.js} +1 -1
- package/dist/domain/{javascriptSemanticQueryAssessment.js → javascript/javascriptSemanticQueryAssessment.js} +1 -1
- package/dist/domain/{javascriptSemanticQueryIdentity.js → javascript/javascriptSemanticQueryIdentity.js} +1 -1
- package/dist/domain/{javascriptSemanticQuerySchemas.js → javascript/javascriptSemanticQuerySchemas.js} +3 -3
- package/dist/domain/javascript/javascriptSemanticRequireOrigin.js +25 -0
- package/dist/domain/{javascriptSemanticResources.js → javascript/javascriptSemanticResources.js} +2 -1
- package/dist/domain/{javascriptSemanticReturns.js → javascript/javascriptSemanticReturns.js} +1 -1
- package/dist/domain/{javascriptSemanticTraceSchemas.js → javascript/javascriptSemanticTraceSchemas.js} +2 -2
- package/dist/domain/javascript/javascriptSemanticTraversal.js +55 -0
- package/dist/domain/javascript/javascriptSemanticValueTypes.js +1 -0
- package/dist/domain/{javascriptSemanticValues.js → javascript/javascriptSemanticValues.js} +72 -48
- package/dist/domain/{javascriptStaticAnalysis.js → javascript/javascriptStaticAnalysis.js} +7 -4
- package/dist/domain/{javascriptStaticAnalysisBundler.js → javascript/javascriptStaticAnalysisBundler.js} +14 -11
- package/dist/domain/{javascriptStaticAnalysisCalls.js → javascript/javascriptStaticAnalysisCalls.js} +2 -2
- package/dist/domain/{javascriptStaticAnalysisHelpers.js → javascript/javascriptStaticAnalysisHelpers.js} +231 -40
- package/dist/domain/{sourceToBundleComparison.js → javascript/sourceToBundleComparison.js} +2 -2
- package/dist/domain/{sourceToBundleComparisonSchemas.js → javascript/sourceToBundleComparisonSchemas.js} +4 -4
- package/dist/domain/{sourceToBundleSignals.js → javascript/sourceToBundleSignals.js} +2 -2
- package/dist/domain/jsonValue.js +4 -0
- package/dist/domain/localPath.js +2 -0
- package/dist/domain/{managedApplicationGraph.js → managed/managedApplicationGraph.js} +4 -4
- package/dist/domain/{managedApplicationGraphNodes.js → managed/managedApplicationGraphNodes.js} +1 -1
- package/dist/domain/{managedArtifact.js → managed/managedArtifact.js} +1 -1
- package/dist/domain/{managedMemberComparison.js → managed/managedMemberComparison.js} +4 -4
- package/dist/domain/{managedMemberComparisonCoverage.js → managed/managedMemberComparisonCoverage.js} +2 -1
- package/dist/domain/{managedMemberComparisonItems.js → managed/managedMemberComparisonItems.js} +97 -40
- package/dist/domain/{managedMemberComparisonMatch.js → managed/managedMemberComparisonMatch.js} +22 -11
- package/dist/domain/{managedNativeVerification.js → managed/managedNativeVerification.js} +1 -1
- package/dist/domain/{managedNativeVerificationMatch.js → managed/managedNativeVerificationMatch.js} +3 -3
- package/dist/domain/{managedNativeVerificationSchemas.js → managed/managedNativeVerificationSchemas.js} +6 -5
- package/dist/domain/{managedReconstruction.js → managed/managedReconstruction.js} +3 -3
- package/dist/domain/native/binaryLayout.js +357 -0
- package/dist/domain/native/nativeCallObservation.js +164 -0
- package/dist/domain/{nativeFunctionAnnotations.js → native/nativeFunctionAnnotations.js} +1 -1
- package/dist/domain/{nativeInspection.js → native/nativeInspection.js} +1 -1
- package/dist/domain/{nativeInvestigationGraph.js → native/nativeInvestigationGraph.js} +13 -4
- package/dist/domain/{nativeLoadImage.js → native/nativeLoadImage.js} +1 -1
- package/dist/domain/{nativeUiObservation.js → native/nativeUiObservation.js} +20 -6
- package/dist/domain/{objcSwiftMetadata.js → native/objcSwiftMetadata.js} +17 -39
- package/dist/domain/native/recordedCrash.js +266 -0
- package/dist/domain/native/recordedCrashNoteCoverage.js +73 -0
- package/dist/domain/process/processCapture.js +316 -0
- package/dist/domain/{processCaptureExample.js → process/processCaptureExample.js} +5 -0
- package/dist/domain/process/processCaptureParsing.js +54 -0
- package/dist/domain/{processCaptureValidation.js → process/processCaptureValidation.js} +18 -2
- package/dist/domain/{processComparison.js → process/processComparison.js} +1 -1
- package/dist/domain/{processObservation.js → process/processObservation.js} +1 -1
- package/dist/domain/{processScenario.js → process/processScenario.js} +17 -17
- package/dist/domain/{processTraceSpecification.js → process/processTraceSpecification.js} +1 -1
- package/dist/domain/propertyListKeys.js +69 -0
- package/dist/domain/providerCleanupError.js +5 -2
- package/dist/domain/providerSelectionError.js +4 -2
- package/dist/domain/reconstructionCoverageEvaluation.js +46 -24
- package/dist/domain/reconstructionCoverageInput.js +7 -0
- package/dist/domain/reconstructionVerification.js +3 -3
- package/dist/domain/reconstructionVerificationSchemas.js +1 -1
- package/dist/domain/residualUnknown.js +3 -2
- package/dist/domain/runtimeVersion.js +2 -0
- package/dist/domain/sourceMapEnvelope.js +38 -0
- package/dist/domain/staticRuntimeCorrelation.js +3 -3
- package/dist/domain/unicodeCodePointOrder.js +11 -6
- package/dist/domain/webBundleAnalyzerAst.js +2 -34
- package/dist/domain/webBundleAnalyzerInspection.js +12 -9
- package/dist/domain/webCaptureDiff.js +1 -0
- package/dist/domain/webEventListeners.js +28 -0
- package/dist/domain/webExecution.js +74 -0
- package/dist/domain/webMcpDiscovery.js +1 -7
- package/dist/domain/webModuleImports.js +104 -0
- package/dist/domain/webModuleTrace.js +106 -0
- package/dist/domain/webNetworkCapture.js +118 -0
- package/dist/domain/webNetworkCaptureCoordinates.js +58 -0
- package/dist/domain/webRuntime.js +69 -0
- package/dist/domain/webScreenshot.js +1 -7
- package/dist/domain/webScriptArtifacts.js +39 -0
- package/dist/domain/webScriptExport.js +86 -0
- package/dist/domain/webScriptExportError.js +13 -0
- package/dist/domain/webScriptExportPlan.js +108 -0
- package/dist/domain/webSourceLocation.js +106 -0
- package/dist/domain/webSourcePosition.js +21 -0
- package/dist/dotnet/ManagedArtifactInspector.js +1 -1
- package/dist/dotnet/ManagedExceptionRegionValidation.js +41 -0
- package/dist/dotnet/ManagedMemberInspector.js +5 -3
- package/dist/dotnet/ManagedMemberInspectorCore.js +72 -32
- package/dist/dotnet/ManagedMemberInstructionDecoder.js +23 -7
- package/dist/dotnet/ManagedMemberRows.js +19 -6
- package/dist/dotnet/ManagedMetadataHeaps.js +20 -2
- package/dist/dotnet/ManagedMetadataInventory.js +38 -28
- package/dist/dotnet/ManagedMetadataInventoryRows.js +24 -10
- package/dist/dotnet/ManagedMethodBodyReader.js +7 -1
- package/dist/dotnet/ManagedNativeBoundaryHelpers.js +37 -19
- package/dist/dotnet/ManagedNativeBoundaryInspector.js +59 -51
- package/dist/dotnet/ManagedPeReader.js +11 -0
- package/dist/dotnet/ManagedStaticProvider.js +3 -33
- package/dist/dotnet/ManagedStaticProviderMetadata.js +36 -0
- package/dist/evaluation/CodexAgentEval.js +2 -1
- package/dist/evm/EvmBytecodeCarrier.js +21 -0
- package/dist/evm/EvmWorkerLimits.js +40 -0
- package/dist/evm/EvmoleFailures.js +126 -0
- package/dist/evm/EvmoleInterfaceAdapter.js +53 -0
- package/dist/evm/EvmoleInterfaceProvider.js +273 -0
- package/dist/evm/EvmoleInterfaceWorker.js +87 -0
- package/dist/evm/EvmoleRelease.js +16 -0
- package/dist/firmware/FirmwareCommand.js +1 -0
- package/dist/firmware/FirmwareProvider.js +18 -12
- package/dist/firmware/FirmwarePublication.js +1 -1
- package/dist/firmware/FirmwareRelease.js +1 -1
- package/dist/firmware/FirmwareReports.js +12 -0
- package/dist/firmware/FirmwareVersion.js +80 -0
- package/dist/generatedPackageMetadata.js +2 -2
- package/dist/ghidra/GhidraFunctionValues.js +5 -5
- package/dist/ghidra/GhidraInstallation.js +38 -34
- package/dist/ghidra/GhidraInstallationPolicy.js +140 -0
- package/dist/ghidra/GhidraInventoryValues.js +1 -1
- package/dist/ghidra/GhidraLauncher.js +13 -4
- package/dist/ghidra/GhidraLoadImageAttest.js +36 -0
- package/dist/ghidra/GhidraLoadImageValues.js +1 -1
- package/dist/ghidra/GhidraProvider.js +17 -235
- package/dist/ghidra/GhidraProviderCapabilities.js +8 -15
- package/dist/ghidra/GhidraProviderClient.js +209 -0
- package/dist/ghidra/GhidraResponseBuffer.js +7 -1
- package/dist/ghidra/extensions/nativeaot/NativeAotReport.js +17 -1
- package/dist/hopper/BridgeLauncher.js +2 -0
- package/dist/hopper/HopperProvider.js +2 -48
- package/dist/hopper/HopperProviderCapabilities.js +73 -0
- package/dist/hopper/HopperResponseStream.js +7 -1
- package/dist/hopper/LinuxPrivateDisplayProbe.js +8 -6
- package/dist/ida/IdaProviderCapabilities.js +3 -11
- package/dist/ida/IdaSessionClient.js +12 -0
- package/dist/{browser → inspector}/JavaScriptRuntimeScope.js +16 -5
- package/dist/{browser → inspector}/V8InspectorCaptureProjection.js +46 -8
- package/dist/{browser → inspector}/V8InspectorEndpoint.js +1 -1
- package/dist/{browser → inspector}/V8InspectorProvider.js +10 -13
- package/dist/inspector/providerIdentity.js +6 -0
- package/dist/javascript/recovery/RecoveryFiles.js +122 -0
- package/dist/javascript/recovery/WakaruCommand.js +119 -0
- package/dist/javascript/recovery/WakaruExecution.js +100 -0
- package/dist/javascript/recovery/WakaruProvider.js +96 -0
- package/dist/javascript/recovery/WakaruPublication.js +102 -0
- package/dist/javascript/recovery/WakaruRelease.js +29 -0
- package/dist/javascript/recovery/WakaruReport.js +134 -0
- package/dist/javascript/sourceMaps/SourceMapCodecProcess.js +37 -0
- package/dist/javascript/sourceMaps/SourceMapCodecProtocol.js +20 -0
- package/dist/javascript/sourceMaps/SourceMapCommand.js +177 -0
- package/dist/javascript/sourceMaps/SourceMapDecoder.js +61 -0
- package/dist/javascript/sourceMaps/SourceMapFormat.js +185 -0
- package/dist/javascript/sourceMaps/TraceSourceMap.js +138 -0
- package/dist/main/shutdown.js +8 -2
- package/dist/main/transport.js +24 -7
- package/dist/main.js +4 -18
- package/dist/native/AppleDispatchCoverage.js +58 -0
- package/dist/native/AppleDispatchMetadata.js +71 -509
- package/dist/native/AppleMachoFixups.js +292 -0
- package/dist/native/AppleMachoSelection.js +188 -0
- package/dist/native/AppleObjcCategories.js +59 -0
- package/dist/native/AppleObjcDispatchFacets.js +257 -0
- package/dist/native/AppleObjcProperties.js +68 -0
- package/dist/native/AppleObjcProtocols.js +2 -1
- package/dist/native/AppleSwiftDispatchFacets.js +150 -0
- package/dist/native/CommandRunner.js +2 -1
- package/dist/native/LldbCallTracer.js +278 -0
- package/dist/native/NativeCallObservation.js +135 -0
- package/dist/native/NativeMacOSProvider.js +151 -75
- package/dist/native/NativeMacOSProviderMetadata.js +47 -0
- package/dist/native/NativeMachoInspection.js +45 -14
- package/dist/native/NativeUiHelperRuntime.js +7 -3
- package/dist/native/NativeUiObservation.js +8 -4
- package/dist/native/NativeUiOutputBudget.js +8 -0
- package/dist/native/parsers/codesign.js +40 -5
- package/dist/native/parsers/demangle.js +6 -2
- package/dist/native/parsers/dyldInfo.js +13 -4
- package/dist/native/parsers/echoedPath.js +14 -0
- package/dist/native/parsers/lipo.js +14 -0
- package/dist/native/parsers/otool.js +1 -1
- package/dist/native/parsers/plist.js +174 -19
- package/dist/native/pwndbg/PwndbgCoreContext.js +160 -0
- package/dist/native/pwntools/PwntoolsDecoder.js +203 -0
- package/dist/native/pwntools/PwntoolsFailures.js +180 -0
- package/dist/native/pwntools/PwntoolsLayoutProvider.js +36 -0
- package/dist/native/pwntools/PwntoolsRecordedCrashProvider.js +75 -0
- package/dist/native/pwntools/PwntoolsRelease.js +19 -0
- package/dist/native/pwntools/PwntoolsResourceLimits.js +76 -0
- package/dist/native/pwntools/RecordedCrashSourceBindings.js +46 -0
- package/dist/native/pwntools/RecordedCrashStructureBindings.js +101 -0
- package/dist/process/DarwinProcessRunTokenReader.js +294 -0
- package/dist/process/ExecFileOutput.js +2 -0
- package/dist/process/OwnedCommand.js +113 -0
- package/dist/process/ProcessOwnership.js +263 -33
- package/dist/process/ProcessOwnershipObservation.js +161 -24
- package/dist/process/ProviderProcess.js +68 -20
- package/dist/{application → process/capture}/FilesystemSnapshot.js +20 -5
- package/dist/{application → process/capture}/ProcessCaptureCapability.js +16 -1
- package/dist/{application → process/capture}/ProcessCaptureError.js +17 -1
- package/dist/process/capture/ProcessCaptureLifecycle.js +615 -0
- package/dist/process/capture/ProcessHarness.js +452 -0
- package/dist/{application → process/capture}/ProcessSampling.js +2 -2
- package/dist/reference/ReferenceSourceReaderEntries.js +6 -1
- package/dist/server/createServer.js +70 -6
- package/dist/server/mcpClientMetadata.js +6 -3
- package/dist/server/promptCompletion.js +10 -3
- package/dist/server/registerAndroidTools.js +1 -1
- package/dist/server/registerApplicationTools/compareExportShapes.js +2 -2
- package/dist/server/registerApplicationTools/compareSourceToBundle.js +2 -2
- package/dist/server/registerApplicationTools/compareVersions.js +2 -2
- package/dist/server/registerApplicationTools/projectMobileApplicationGraph.js +43 -0
- package/dist/server/registerApplicationTools/traceFeature.js +1 -1
- package/dist/server/registerApplicationTools/traceSemantics.js +1 -1
- package/dist/server/registerApplicationTools.js +2 -0
- package/dist/server/registerBinaryDiagnosticsTools.js +17 -0
- package/dist/server/registerBrowserScenarioTool.js +6 -2
- package/dist/server/registerBrowserTools.js +13 -2
- package/dist/server/registerCloseLifecycleTool.js +1 -1
- package/dist/server/registerElectronTools.js +21 -7
- package/dist/server/registerEvidenceTools.js +1 -1
- package/dist/server/registerEvmTools.js +17 -0
- package/dist/server/registerJavaScriptRecoveryTool.js +17 -0
- package/dist/server/registerJavaScriptRuntimeObservationTools.js +9 -4
- package/dist/server/registerManagedTools.js +3 -3
- package/dist/server/registerManagedWorkflowTools/compareManagedMembers.js +2 -2
- package/dist/server/registerManagedWorkflowTools/contract.js +1 -1
- package/dist/server/registerManagedWorkflowTools/importManagedReconstruction.js +1 -1
- package/dist/server/registerManagedWorkflowTools/projectManagedApplicationGraph.js +1 -1
- package/dist/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.js +2 -2
- package/dist/server/registerNativeTools.js +1 -1
- package/dist/server/registerProcessComparisonTool.js +1 -1
- package/dist/server/registerPrompts.js +5 -1
- package/dist/server/registerRecordedCrashTools.js +17 -0
- package/dist/server/registerSessionTools.js +3 -3
- package/dist/server/registerWebModuleTool.js +17 -0
- package/dist/server/registerWebNetworkCaptureTool.js +28 -0
- package/dist/server/registerWebRuntimeTools.js +31 -0
- package/dist/server/registerWebScriptTool.js +18 -0
- package/dist/server/registerWebSourceLocationTool.js +17 -0
- package/dist/server/sessionAvailabilityPolicy.js +27 -12
- package/dist/server/sessionToolPolicies.js +1 -1
- package/dist/server/toolResult.js +1 -1
- package/dist/windows/WindowsOwnedProcess.js +3 -1
- package/install.sh +12 -2
- package/native/windows/README.md +5 -0
- package/native/windows/build/manifest.json +2 -2
- package/native/windows/build/rea-windows-x64.node +0 -0
- package/package.json +75 -26
- package/scripts/hopper-demo-x11.py +67 -8
- package/scripts/rea.mjs +19 -3
- package/skills/reverse-engineer-anything/SKILL.md +23 -3
- package/skills/reverse-engineer-anything/references/android-applications.md +2 -2
- package/skills/reverse-engineer-anything/references/javascript-applications.md +1 -1
- package/skills/reverse-engineer-anything/references/native-and-artifacts.md +61 -23
- package/third_party/README.md +60 -0
- package/third_party/evmole/LICENSE +21 -0
- package/third_party/evmole/README.md +22 -0
- package/third_party/pwndbg/LICENSE.md +21 -0
- package/third_party/pwndbg/README.md +23 -0
- package/third_party/pwntools/README.md +40 -0
- package/dist/application/AuthorizedArtifactInventory.js +0 -7
- package/dist/application/JavaScriptSemanticGraphProjection.js +0 -38
- package/dist/application/ProcessCaptureLifecycle.js +0 -299
- package/dist/application/ProcessHarness.js +0 -275
- package/dist/application/StoreFileLock.js +0 -124
- package/dist/application/runtime.js +0 -53
- package/dist/contracts/processCaptureExample.js +0 -2
- package/dist/domain/appleApplication.js +0 -181
- package/dist/domain/bytecodeProvider.js +0 -178
- package/dist/domain/customProtocolCapture.js +0 -137
- package/dist/domain/eventProcessTree.js +0 -225
- package/dist/domain/javascriptAstValues.js +0 -13
- package/dist/domain/javascriptSemanticTraversal.js +0 -30
- package/dist/domain/mobileApplicationInvestigation.js +0 -159
- package/dist/domain/packageAnalysis.js +0 -123
- package/dist/domain/peInspection.js +0 -197
- package/dist/domain/processCapture.js +0 -177
- package/dist/domain/processCaptureParsing.js +0 -21
- package/dist/domain/protocolCapture.js +0 -217
- package/dist/domain/runtimeIdentification.js +0 -212
- package/dist/generatedMcpToolCatalog.js +0 -37
- package/dist/native/NativeHostCapabilities.js +0 -23
- /package/dist/application/{AndroidAnalysisPort.js → DirectAnalysisDependencies.js} +0 -0
- /package/dist/application/{BinarySessionPort.js → WebModulePorts.js} +0 -0
- /package/dist/application/{ElectronActiveObservationPort.js → WebNetworkCapturePort.js} +0 -0
- /package/dist/application/{ElectronObservationPort.js → WebRuntimePort.js} +0 -0
- /package/dist/application/{FirmwareAnalysisPort.js → WebScriptArtifactPort.js} +0 -0
- /package/dist/application/{JavaScriptArtifactAnalysisTypes.js → WebSourceLocationPorts.js} +0 -0
- /package/dist/application/{JavaScriptRuntimeObservationPort.js → android/AndroidAnalysisPort.js} +0 -0
- /package/dist/application/{ArtifactExtractionDestination.js → artifacts/ArtifactExtractionDestination.js} +0 -0
- /package/dist/application/{AbortablePromise.js → binary/AbortablePromise.js} +0 -0
- /package/dist/{domain/electronStaticAnalysisTypes.js → application/binary/BinarySessionPort.js} +0 -0
- /package/dist/application/{BinarySessionStatus.js → binary/BinarySessionStatus.js} +0 -0
- /package/dist/{domain/javascriptSemanticValueTypes.js → application/binaryDiagnostics/BinaryLayoutPort.js} +0 -0
- /package/dist/application/{ElectronBoundaryGraph.js → javascript/ElectronBoundaryGraph.js} +0 -0
- /package/dist/application/{ElectronBoundaryGraphIpc.js → javascript/ElectronBoundaryGraphIpc.js} +0 -0
- /package/dist/application/{ElectronBoundaryGraphNative.js → javascript/ElectronBoundaryGraphNative.js} +0 -0
- /package/dist/application/{ElectronBoundaryGraphWindows.js → javascript/ElectronBoundaryGraphWindows.js} +0 -0
- /package/dist/application/{JavaScriptArtifactGraphBundlers.js → javascript/JavaScriptArtifactGraphBundlers.js} +0 -0
- /package/dist/application/{JavaScriptArtifactGraphEvidence.js → javascript/JavaScriptArtifactGraphEvidence.js} +0 -0
- /package/dist/application/{JavaScriptArtifactReconstructionInput.js → javascript/JavaScriptArtifactReconstructionInput.js} +0 -0
- /package/dist/application/{JavaScriptSemanticGraphEvidence.js → javascript/JavaScriptSemanticGraphEvidence.js} +0 -0
- /package/dist/artifacts/{NibArchive.js → apple/NibArchive.js} +0 -0
- /package/dist/{application/ArtifactInventory → artifacts/inventory}/policy.js +0 -0
- /package/dist/{application/ArtifactInventory → artifacts/inventory}/types.js +0 -0
- /package/dist/domain/{androidAnalysis.js → android/androidAnalysis.js} +0 -0
- /package/dist/domain/{electronStaticAnalysis.js → javascript/electronStaticAnalysis.js} +0 -0
- /package/dist/domain/{javascriptExportShapeComparisonIdentity.js → javascript/javascriptExportShapeComparisonIdentity.js} +0 -0
- /package/dist/domain/{javascriptRuntimeReconciliation.js → javascript/javascriptRuntimeReconciliation.js} +0 -0
- /package/dist/domain/{javascriptRuntimeReconciliationRuntime.js → javascript/javascriptRuntimeReconciliationRuntime.js} +0 -0
- /package/dist/domain/{javascriptSemanticCoverage.js → javascript/javascriptSemanticCoverage.js} +0 -0
- /package/dist/domain/{javascriptSemanticDerivedAnalysis.js → javascript/javascriptSemanticDerivedAnalysis.js} +0 -0
- /package/dist/domain/{javascriptSemanticGraphSerialization.js → javascript/javascriptSemanticGraphSerialization.js} +0 -0
- /package/dist/domain/{javascriptSemanticIr.js → javascript/javascriptSemanticIr.js} +0 -0
- /package/dist/domain/{javascriptSemanticQueryRelations.js → javascript/javascriptSemanticQueryRelations.js} +0 -0
- /package/dist/domain/{javascriptSemanticState.js → javascript/javascriptSemanticState.js} +0 -0
- /package/dist/domain/{javascriptSourceParser.js → javascript/javascriptSourceParser.js} +0 -0
- /package/dist/domain/{javascriptStaticAnalysisFindings.js → javascript/javascriptStaticAnalysisFindings.js} +0 -0
- /package/dist/domain/{javascriptStaticAnalysisState.js → javascript/javascriptStaticAnalysisState.js} +0 -0
- /package/dist/domain/{javascriptStaticAnalysisTypes.js → javascript/javascriptStaticAnalysisTypes.js} +0 -0
- /package/dist/domain/{managedApplicationGraphCoverage.js → managed/managedApplicationGraphCoverage.js} +0 -0
- /package/dist/domain/{managedApplicationGraphNodeCoverage.js → managed/managedApplicationGraphNodeCoverage.js} +0 -0
- /package/dist/domain/{nativeApiBoundary.js → native/nativeApiBoundary.js} +0 -0
- /package/dist/domain/{nativeDataType.js → native/nativeDataType.js} +0 -0
- /package/dist/domain/{nativeInstruction.js → native/nativeInstruction.js} +0 -0
- /package/dist/domain/{nativeMetadataRecovery.js → native/nativeMetadataRecovery.js} +0 -0
- /package/dist/domain/{nativeValueFlow.js → native/nativeValueFlow.js} +0 -0
- /package/dist/domain/{nativeValueTrace.js → native/nativeValueTrace.js} +0 -0
- /package/dist/domain/{processEvidenceProvider.js → process/processEvidenceProvider.js} +0 -0
- /package/dist/domain/{processTraceComparison.js → process/processTraceComparison.js} +0 -0
- /package/dist/domain/{processTraceDimensionProjection.js → process/processTraceDimensionProjection.js} +0 -0
- /package/dist/domain/{processTraceEvaluation.js → process/processTraceEvaluation.js} +0 -0
- /package/dist/{application → process/capture}/ProcessCaptureEnvironment.js +0 -0
- /package/dist/{application → process/capture}/ProcessCaptureJournal.js +0 -0
- /package/dist/{application → process/capture}/ProcessFilesystemEffects.js +0 -0
- /package/dist/{application → process/capture}/ProcessNormalization.js +0 -0
- /package/dist/{application → process/capture}/ProcessScenarioRuntimeValidation.js +0 -0
- /package/dist/{application → process/capture}/ProcessTimer.js +0 -0
- /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
|
|
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
|
-
|
|
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" =~
|
|
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-(
|
|
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")
|
package/native/windows/README.md
CHANGED
|
@@ -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": "
|
|
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": "
|
|
8
|
+
"artifactSha256": "9914815706dcd4ef94d01543e31cb0b20035e98d5011d4b4e7f8e509823c8b1d"
|
|
9
9
|
}
|
|
Binary file
|
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
|
+
"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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
137
|
-
"verify:javascript-runtime": "npm run build:cached && node scripts/verify
|
|
138
|
-
"verify:javascript:digests": "npm run build:cached && node scripts/verify
|
|
139
|
-
"verify:
|
|
140
|
-
"verify:
|
|
141
|
-
"verify:
|
|
142
|
-
"
|
|
143
|
-
"
|
|
144
|
-
"
|
|
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-
|
|
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
|
|
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.
|
|
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.
|
|
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
|
-
|
|
27
|
-
|
|
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
|
-
|
|
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,
|
|
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
|
|
699
|
-
child
|
|
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
|
-
|
|
53
|
-
|
|
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: "
|
|
6
|
-
tool_count:
|
|
7
|
-
catalog_digest: "
|
|
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
|
|
4
|
-
|
|
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.
|
|
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
|