AI-translated from English; not yet reviewed by a fluent editor.

# Das Verhalten einer Electron-App mit REA untersuchen

> REA bildet Module und Electron-Grenzen einer lokalen App ab. Dieser Leitfaden zeigt, wie sich eine Funktion anhand von Belegen verfolgen und ihr Verhalten separat prüfen lässt.

By BIG CHANGE Editorial

Published: 2026-10-14T04:55:21.558Z
Updated: 2026-10-14T04:55:21.558Z
Canonical: https://bigchange.ai/blog/rea-static-electron-app-inspection-guide

![Conceptual charcoal illustration of an external storage drive beside a desktop monitor showing unlabeled file-tree and code-like lines.](https://bigchange.ai/api/media/file/rea-local-artifact-inspection-hero-v1.png)
AI-generated conceptual illustration by BIG CHANGE; no actual REA interface, application finding or runtime result is depicted.

REA kann eine lokale JavaScript- oder Electron-Anwendung anhand von Dateien abbilden, die Sie untersuchen dürfen, auch wenn Ihnen der Quellcodebaum fehlt. Das nützliche Ergebnis ist eine Belegkette für ein Verhalten: welches Modul es bereitstellt, wo ein Aufruf eine Prozessgrenze überquert und welche Teile noch separat geprüft werden müssen. Dieser Leitfaden nutzt die [aktuelle REA-Projektdokumentation](https://github.com/morluto/rea/blob/main/README.md), geprüft am 14. Oktober 2026. BIG CHANGE hat REA nicht auf einer Anwendung ausgeführt.

## Die große Veränderung

- **Was sich geändert hat:** REA gibt einem Programmieragenten eine strukturierte Karte von Modulen, Imports, Source Maps, Routen und Electron-IPC aus einem bereitgestellten App-Verzeichnis oder ASAR. Jeder Befund kann auf die Dateien zurückverweisen, aus denen er stammt.
- **Warum das wichtig ist:** Ein Entwickler kann für eine untersuchte Funktion eine benannte API oder einen IPC-Kanal durch die gepackte App verfolgen, bevor er entscheidet, was manuell geprüft werden soll. Dadurch wird die Frage enger und die Belege leichter überprüfbar.
- **Worauf Sie achten sollten:** Statische Codepfade sind Kandidaten, kein Beweis dafür, dass die App sie im Betrieb tatsächlich nutzt. Eine Aussage zu einem bestimmten Verhalten braucht weiterhin eine unabhängige Beobachtung oder einen Test am autorisierten Ziel.

## Vor dem Start

Dieser Ablauf richtet sich an Entwickler, denen eine lokale JavaScript- oder Electron-App gehört oder die sie untersuchen dürfen. Sie benötigen das extrahierte Anwendungsverzeichnis oder dessen `app.asar`-Datei und einen absoluten Pfad dorthin. Das [Paketmanifest](https://github.com/morluto/rea/blob/main/package.json) nennt `rea-agents` Version **6.4.0** und erfordert Node.js 22.19 oder neuer innerhalb der 22.x-Reihe, 24.11 oder neuer innerhalb 24.x oder Version 26 und neuer. npm wird ebenfalls benötigt. Unter Linux benötigt REAs statische JavaScript-/Electron-Analyse einen mit procps kompatiblen `ps` ps von REA `PATH` für Prüfungen der Prozesszugehörigkeit, wie der [Installationsleitfaden](https://github.com/morluto/rea/blob/main/docs/installation.md#linux-owned-process-prerequisite) erklärt. Das sind Anforderungen an den REA-Host, getrennt von denen der Ziel-App.

Der statische JavaScript-Ablauf benötigt weder Hopper, Ghidra, IDA, einen Browser noch einen laufenden Electron-Prozess. Diese Werkzeuge gehören zu anderen REA-Abläufen. Prüfen Sie Ihre Berechtigung für das Ziel und behalten Sie eine Kopie der Originaldateien, damit klar bleibt, welches Artefakt ein Ergebnis erzeugt hat. Verwenden Sie das [`morluto/rea` offizielle Repository](https://github.com/morluto/rea) oder das dort verlinkte npm-Paket; ein ähnlich benanntes Repository belegt keine Herkunft.

## 1. REA einrichten oder die einmalige CLI nutzen

Für einen verbundenen Programmieragenten lautet der [dokumentierte Einrichtungsbefehl](https://github.com/morluto/rea/blob/main/README.md#quick-start) :

```sh
npx rea-agents setup
```

Prüfen Sie die Änderungen, die der Agent an seiner Konfiguration vorschlägt, bestätigen Sie die gewünschten und starten Sie ihn dann neu. Für eine reine Terminalprüfung ruft der folgende dokumentierte Befehl das Paket für diesen Lauf auf. `@latest` wählt die zum Ausführungszeitpunkt aktuelle Version; notieren Sie die aufgelöste Version zusammen mit Ihren Belegen, da sich Ausgabedetails ändern können. Version 6.4.0 oben stand im Manifest, das für diesen Artikel am 14. Oktober geprüft wurde.

## 2. Die bereitgestellten Dateien analysieren

Ersetzen Sie den Beispielpfad durch den absoluten Pfad zum autorisierten App-Ordner oder ASAR:

```sh
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json > app-evidence.json
```

Der [CLI-Leitfaden](https://github.com/morluto/rea/blob/main/docs/cli.md) warnt, dass die vollständige Evidence sehr umfangreich sein kann. Speichern Sie sie als Datei und lesen Sie anschließend eine Zusammenfassung oder die Ansicht ausgewählter Module. Fügen Sie nicht das gesamte Ergebnis in einen Prompt ein. Wenn der Befehl fehlschlägt, bewahren Sie Fehler und Zielpfad für die Diagnose auf; auch ein Exitcode null kann mit teilweiser Abdeckung, Warnungen oder offenen Befunden einhergehen. Unter Windows zeigt das README einen Pfad wie `"D:/apps/example"`.

Die [Referenz zur Artefaktrekonstruktion](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) besagt, dass dieser Vorgang ausgewählte Dateien als Daten liest, ohne die App auszuführen. Er erfasst Artefaktpfade und Prüfsummen, analysiert verfügbares JavaScript und TypeScript und meldet mögliche Einstiegspunkte, Imports, Source Maps, Routen, Netzwerk-Endpunkte, Electron-Preload- und Renderer-Verbindungen, `contextBridge`-APIs, IPC-Aufrufe und -Handler sowie Anfragen für native Add-ons. Erwartet wird ein Evidence-Eintrag mit Graph, statischer Electron-Zusammenfassung, Abdeckung und Einschränkungen. Ein `.node`-Binding ist eine zu prüfende Beziehung, keine Dekodierung dieses nativen Moduls.

## 3. Eine eng umrissene Funktion verfolgen

Wählen Sie eine Funktion, deren Namen Sie auffinden können, etwa eine Menüaktion oder eine bereitgestellte API-Methode. Notieren Sie ihren benutzerseitigen Namen und suchen Sie im REA-Ergebnis nach dem zugehörigen Modul, einem wörtlichen IPC-Kanal oder einer Route. Folgen Sie den gemeldeten Quellstellen der Reihe nach: Aufruf im Renderer oder auf der Seite, Preload-Brücke, IPC-Übertragung, passender Handler im Hauptprozess und danach die Datei- oder Dienstoperation, die der Handler aufruft. Das [Electron-CSV-Beispiel](https://rea.tools/guides/javascript/) von REA zeigt das Muster mit `notes.exportCsv()` , dem Kanal `notes:export` und einem Writer im Hauptprozess. Diese Namen gehören zur Beispiel-App; Ihr Ziel verwendet andere.

Notieren Sie für jede Verbindung Artefakt-Hash, Dateipfad, Position und was der Code tatsächlich zeigt. Unterscheiden Sie einen wörtlichen Kanal mit eindeutigem Handler von einem berechneten Kanal oder einer mehrdeutigen Zuordnung. Prüfen Sie Abdeckungs- und Einschränkungsfelder, bevor Sie ein fehlendes Modul oder einen Handler als nicht vorhanden werten. Laut REA können fehlerhafte oder nicht verfügbare Dateien, fehlende ASAR-Begleitbytes, unaufgelöste Ausdrücke und begrenzte Analyse Beziehungen unbekannt lassen. Eine Source Map kann Namen des ursprünglichen Quellcodes offenlegen; der ursprüngliche Quellbaum wird jedoch nicht garantiert.

## 4. Das Verhalten unabhängig prüfen

Formulieren Sie eine falsifizierbare Aussage aus dem statischen Pfad, etwa: „Diese Aktion ruft diesen Kanal auf und der Handler schreibt diese Art Datei.“ Führen Sie dann in einer genehmigten Testumgebung nur diese Aktion aus und beobachten Sie das Ergebnis direkt: die erstellte Datei, einen geänderten Zustand oder eine unter Ihren Berechtigungen erfasste Spur. Notieren Sie App-Version, Artefakt-Hash, Testschritte und beobachtetes Ergebnis. Wenn Sie die App nicht ausführen dürfen, beschränken Sie die Aussage auf einen statischen Codepfad. REAs Beispiel sagt ausdrücklich, dass sich der abgeleitete Pfad durch Laufzeitaufzeichnung prüfen lässt; der statische Graph allein zeigt nicht, welcher Zweig lief.

Erfolgreich ist die Prüfung, wenn ein anderer Entwickler dieselben Quellstellen findet, die Grenzen der statischen Zuordnung erkennt und Ihre eng umrissene Prüfung wiederholen kann. Ein erfolgreicher Analysebefehl allein überprüft weder das Laufzeitverhalten noch eine originalgetreue Neuimplementierung der App.

## Wenn das Ergebnis unvollständig ist

Prüfen Sie zuerst, ob der Pfad auf ein vollständig extrahiertes Verzeichnis oder ASAR verweist und alle benötigten `.asar.unpacked` Begleitdateien vorhanden sind. Prüfen Sie Abdeckung und Diagnosen von REA; eine fehlende oder fehlerhafte Quelle ist unbekannt, kein negativer Befund. Für große Apps dokumentiert die [Referenz](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) genaue `--source-path` Auswahlmöglichkeiten; nicht ausgewählte Dateien bleiben aber außerhalb der Analyse. Ist ein wörtlicher IPC-Treffer mehrdeutig oder der Kanal berechnet, prüfen Sie die zitierten Dateien und grenzen Sie die Frage ein. Bleibt die Mehrdeutigkeit bestehen, halten Sie sie in den Abschlussnotizen fest.

Der REA-Code steht unter MIT-Lizenz, doch Zielsoftware und externe Analyse-Engines unterliegen eigenen Lizenzen und Bedingungen. Die statische Analyse verarbeitet Zieldateien lokal. Wenn Sie REA-Befunde an einen Programmieragenten senden, gelten die Datenrichtlinien seines Modellanbieters; übermitteln Sie keine Geheimnisse oder proprietären Ergebnisse, bevor Ihre Organisation die Nutzung freigegeben hat. Prüfen Sie Bedingungen und Kosten des Agenten und optionaler Engines. Verfahren und Paketversion wurden am **14. Oktober 2026** anhand der Dokumentation geprüft.

## Sources

- [REA-README](https://github.com/morluto/rea/blob/main/README.md) — Offizielle Identität, Einrichtung, JS-Analysebefehl, Ausgabe, Node- und Linux-ps-Anforderungen, lokale Verarbeitung und Datenschutzgrenzen.
- [REA-Paketmanifest](https://github.com/morluto/rea/blob/main/package.json) — rea-agents 6.4.0 und erforderlicher Node-Bereich.
- [Leitfaden zur JavaScript- und Electron-Analyse](https://rea.tools/guides/javascript/) — Ausgearbeitetes Beispiel zum Verfolgen von Renderer, Preload und IPC bis zum Handler im Hauptprozess; die Beispielaufzeichnungen stammen von REA 4.1.0.
- [Rekonstruktion von JavaScript-Artefakten](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) — Statischer Umfang, Quellauswahl, Integrität, Abdeckung und Bedeutung nicht aufgelöster Pfade.
- [CLI und Evidence](https://github.com/morluto/rea/blob/main/docs/cli.md) — CLI-Befehl, umfangreiche Evidence-Ausgabe und Grenzen von Exitcodes.
- [REA-Installationsleitfaden](https://github.com/morluto/rea/blob/main/docs/installation.md) — Die Linux-Voraussetzung eines procps-kompatiblen ps gilt ausdrücklich für statische JavaScript-/Electron-Analyse; der Leitfaden enthält Hinweise zur Fehlerbehebung.
