How abdullah9202/rea works
REA is a local reverse-engineering MCP server and CLI. An agent or terminal user requests an investigation; REA routes analysis to suitable tools and returns findings with evidence and limitations. Distinct capability branches cover native binaries, JavaScript/Electron, browser behavior, Android, and structured application data. The README documents these workflows; the source index confirms selected server, service, and provider relationships. Several capability implementations were not sampled, so their internal wiring is not inferred.
Main entry points: ReverseEngineeringService.ts Analysis Service · registerReverseEngineeringTools.ts Reverse Tools · main.ts MCP Server · reverseEngineeringCommands.ts Analysis CLI
Components 21
User Entry
- MCP Server
src/main.ts - Analysis CLI
src/cli/reverseEngineeringCommands.ts
Analysis Core
- Reverse Tools
src/server/registerReverseEngineeringTools.ts - Tool Contracts
src/contracts/reverseEngineeringToolContracts.ts - Analysis Service
src/application/reverse/ReverseEngineeringService.ts - Evidence Model
src/domain/evidence.ts
Native Analysis
- Ghidra Provider
src/ghidra/GhidraClient.ts - Hopper Provider
src/hopper/HopperClient.ts - IDA Provider
src/ida/IdaSessionClient.ts - Cutter Provider
src/cutter/CutterBridgeClient.ts - Debugger Sessions
src/gdb/GdbSessionManager.ts - Rizin Sessions
src/rizin/RizinDebugSessionManager.ts
Application Analysis
- JavaScript Analysis
src/javascript/analysis/JavaScriptAnalysisWorker.ts - Android Analysis
src/android/JadxProvider.ts - APK Decoding
src/apktool/ApktoolProvider.ts
Runtime and Data
- Browser Capture
src/application/BrowserObservationService.ts - Web Runtime
src/application/WebRuntimeService.ts - SQLite Inspection
src/sqlite/SqliteDatabaseInspection.ts
Other components
- AI Agent
- CLI User
- Local Target
Connections 20
- AI Agent → MCP Server: requests analysis
README.md - CLI User → Analysis CLI: runs analysis
README.md - MCP Server → Reverse Tools: serves tools
- Analysis CLI → Analysis Service: invokes workflows
src/cli/reverseEngineeringCommands.ts - Reverse Tools → Analysis Service: invokes workflows
src/server/registerReverseEngineeringTools.ts - Reverse Tools → Tool Contracts: uses contracts
src/server/registerReverseEngineeringTools.ts - Analysis Service → Evidence Model: produces findings
src/application/reverse/ReverseEngineeringService.ts - Analysis Service → Ghidra Provider: selects providers
- Analysis Service → Hopper Provider: selects providers
- Analysis Service → IDA Provider: selects providers
- Analysis Service → Cutter Provider: selects providers
- Analysis Service → Debugger Sessions: runs commands
- Analysis Service → Rizin Sessions: runs commands
- AI Agent → JavaScript Analysis: investigates apps
README.md - AI Agent → Android Analysis: investigates apps
README.md - AI Agent → APK Decoding: inspects packages
README.md - AI Agent → Browser Capture: captures behavior
README.md - AI Agent → Web Runtime: inspects websites
README.md - AI Agent → SQLite Inspection: inspects databases
README.md - Local Target → Analysis Service: supplies artifact
README.md