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

# Suriin ang asal ng isang Electron app gamit ang REA

> Minamapa ng REA ang mga module at hangganan ng Electron sa isang lokal na app. Ipinapakita ng gabay na ito kung paano sundan ang isang feature batay sa ebidensiya at hiwalay na tingnan ang asal nito.

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.

Kayang imapa ng REA ang lokal na JavaScript o Electron application mula sa mga file na awtorisado kang siyasatin, kahit wala sa iyo ang source tree nito. Ang kapaki-pakinabang na resulta ay bakas ng ebidensiya para sa isang asal: aling module ang naglalantad nito, saan tumatawid sa hangganan ng proseso ang isang tawag, at aling bahagi pa ang kailangang suriin nang hiwalay. Ginagamit ng gabay na ito ang [kasalukuyang dokumentasyon ng proyektong REA](https://github.com/morluto/rea/blob/main/README.md), na sinuri noong Oktubre 14, 2026. Hindi nagpatakbo ang BIG CHANGE ng REA sa isang application.

## Ang malaking pagbabago

- **Ano ang nagbago:** Nagbibigay ang REA sa coding agent ng nakabalangkas na mapa ng mga module, import, source map, route at Electron IPC mula sa ibinigay na app directory o ASAR. Maaaring bumalik ang bawat finding sa mga file na pinagmulan nito.
- **Bakit mahalaga:** Maaaring sundan ng developer na nagsisiyasat ng isang feature ang pinangalanang API o IPC channel sa naka-package na app bago magpasya kung ano ang susuriin nang mano-mano. Mas tiyak ang tanong at mas madaling beripikahin ang ebidensiya.
- **Ano ang dapat bantayan:** Mga kandidato lang ang static code path, hindi patunay na sinusundan iyon ng app habang ginagamit. Kailangan pa rin ng hiwalay na obserbasyon o test sa awtorisadong target para sa pahayag tungkol sa isang partikular na asal.

## Bago magsimula

Para ito sa developer na may-ari ng lokal na JavaScript o Electron app, o may pahintulot na siyasatin ito. Kailangan mo ang na-extract na application directory o ang `app.asar` file nito at isang absolute path patungo roon. Nakalista sa [package manifest](https://github.com/morluto/rea/blob/main/package.json) naglilista ng `rea-agents` bersyon **6.4.0** at nangangailangan ito ng Node.js 22.19 o mas bago sa 22.x line, 24.11 o mas bago sa 24.x line, o bersiyong 26 pataas. Kailangan din ang npm. Sa Linux, kailangan ng static JavaScript/Electron analysis ng REA ang prosesong tugma sa procps `ps` sa REA `PATH` para sa pagsusuri ng pagmamay-ari ng proseso, gaya ng paliwanag ng [gabay sa pag-install](https://github.com/morluto/rea/blob/main/docs/installation.md#linux-owned-process-prerequisite) nito. Mga requirement ito ng REA host, hiwalay sa kailangan ng target app.

Hindi kailangan ng Hopper, Ghidra, IDA, browser o tumatakbong Electron process ang static JavaScript workflow. Para ang mga tool na iyon sa ibang REA workflow. Tiyaking may karapatan kang siyasatin ang target at magtabi ng kopya ng orihinal na mga file para matukoy kung aling artifact mismo ang gumawa ng bawat resulta. Gamitin ang [`morluto/rea` opisyal na repository](https://github.com/morluto/rea) o ang npm package na naka-link doon; hindi pinatutunayan ng kahawig na pangalan ng repository ang pinagmulan.

## 1. I-set up ang REA o gamitin ang one-off CLI

Para sa nakakonektang coding agent, ang [dokumentadong setup command](https://github.com/morluto/rea/blob/main/README.md#quick-start) ay:

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

Suriin ang mga pagbabagong iminumungkahi nito sa configuration ng agent, aprubahan ang gusto mo, pagkatapos ay i-restart ang agent. Kung terminal inspection lang ang kailangan, tinatawag ng susunod na dokumentadong command ang package para sa run na iyon. `@latest` ang pipili sa release na kasalukuyan kapag pinatakbo; itala ang nalutas na version kasama ng ebidensiya dahil maaaring magbago ang output details. Ang 6.4.0 sa itaas ang nasa manifest noong sinuri ang artikulong ito noong Oktubre 14.

## 2. Suriin ang mga ibinigay na file

Palitan ang halimbawang path ng absolute path sa awtorisadong app folder o ASAR:

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

Nagbababala ang [CLI guide](https://github.com/morluto/rea/blob/main/docs/cli.md) na maaaring napakalaki ng buong Evidence. I-save ito bilang file at basahin ang summary o piling module view. Huwag idikit ang buong resulta sa prompt. Kung pumalya ang command, itabi ang error at target path para ma-diagnose; maaari pa ring may bahagyang coverage, babala o hindi pa nalulutas na finding kahit zero ang exit status. Sa Windows, nagpapakita ang README ng path gaya ng `"D:/apps/example"`.

Sinasabi ng [artifact reconstruction reference](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) na binabasa ng operasyong ito ang mga napiling file bilang data nang hindi pinapatakbo ang app. Inililista nito ang artifact path at digest, sinusuri ang available na JavaScript at TypeScript, at nag-uulat ng posibleng entrypoint, import, source map, route, network endpoint, preload at renderer link ng Electron, `contextBridge` API, IPC call at handler, at request para sa native add-on. Inaasahang resulta ang Evidence record na may graph, static Electron summary, coverage at limitasyon. Ang isang `.node` binding ay ugnayang dapat siyasatin, hindi pagde-decode ng native module na iyon.

## 3. Sundan ang isang makitid na feature

Pumili ng feature na may matutukoy na pangalan, gaya ng menu action o exposed API method. Itala ang pangalang nakikita ng user at hanapin sa resulta ng REA ang katugmang module, literal IPC channel o route. Sundan nang sunod-sunod ang iniulat na source location: renderer o page call, preload bridge, IPC transmission, katugmang main-process handler, at pagkatapos ay ang file o service operation na tinatawag nito. Ipinakikita ng [Electron CSV example](https://rea.tools/guides/javascript/) ng REA ang ganitong pattern sa `notes.exportCsv()` , channel na `notes:export` at main-process writer. Sa sample app ang mga pangalang iyon; iba ang nasa target mo.

Para sa bawat link, itala ang artifact digest, file path, lokasyon at ang aktuwal na ipinakikita ng code. Ihiwalay ang literal na channel na may katugmang handler sa computed channel o malabong pares. Tingnan ang coverage at limitations bago ipalagay na wala ang module o handler. Sinasabi ng REA na maaaring manatiling hindi alam ang mga ugnayan kung malformed o unavailable ang file, kulang ang ASAR companion bytes, hindi nalutas ang expression o limitado ang analysis. Maaaring ilantad ng source map ang orihinal na source name, pero hindi ipinapangako ng tool na maibabalik ang orihinal na source tree.

## 4. Hiwalay na suriin ang asal

Sumulat ng mapapabulaanang pahayag mula sa static trail, gaya ng “tinatawag ng action na ito ang channel na ito at ganitong file ang isinusulat ng handler.” Pagkatapos, sa aprubadong test environment, gawin lang ang aksiyong iyon at direktang obserbahan ang resulta: nalikhang file, nagbagong state o trace na kinolekta sa ilalim ng sarili mong pahintulot. Itala ang app version, artifact digest, mga hakbang sa test at naobserbahang resulta. Kung wala kang pahintulot na patakbuhin ang app, limitahan ang pahayag sa static code path. Tahasang sinasabi ng halimbawa ng REA na masusuri ang hinulaang path sa runtime capture; hindi ipinakikita ng static graph lang kung aling branch ang tumakbo.

Tagumpay ang pagsusuri kapag matutukoy ng ibang developer ang parehong source location, makikita ang hangganan ng static pairing at mauulit ang makitid mong check. Hindi kusang bineberipika ng matagumpay na analysis command ang runtime behavior o pinatutunayan ang tapat na muling pagpapatupad ng app.

## Kung hindi kumpleto ang resulta

Tiyaking tumuturo muna ang path sa kumpletong na-extract na directory o ASAR at naroon ang anumang kailangang `.asar.unpacked` kasamang file. Suriin ang coverage at diagnostics ng REA; ang nawawala o pumalyang source ay hindi alam, hindi negatibong finding. Para sa malaking app, [reference](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) ang mga eksaktong `--source-path` pagpili, ngunit nananatiling labas sa scope ng analysis ang mga file na hindi pinili. Kung malabo ang literal IPC match o computed ang channel, siyasatin ang mga binanggit na file at paliitin ang tanong. Panatilihin sa final notes ang anumang natitirang kalabuan.

MIT ang lisensya ng code ng REA, ngunit may sarili pa ring lisensya at tuntunin ang target software at anumang panlabas na analysis engine. Lokal na pinoproseso ng static analysis ang mga target file. Kung ipapasa mo sa coding agent ang findings ng REA, may sariling data policy ang model provider nito; huwag magpadala ng lihim o proprietary na output hangga’t hindi aprubado iyon ng organisasyon mo. Suriin ang tuntunin at gastos ng agent at opsyonal na engine bago gamitin. Sinuri ang procedure at package version noong **Oktubre 14, 2026** batay sa dokumentasyon.

## Sources

- [REA README](https://github.com/morluto/rea/blob/main/README.md) — Opisyal na identity, setup, JS analysis command, output, Node at Linux ps requirement, lokal na pagproseso at hangganan ng privacy.
- [REA package manifest](https://github.com/morluto/rea/blob/main/package.json) — rea-agents 6.4.0 at saklaw ng Node engine.
- [JavaScript at Electron Analysis guide](https://rea.tools/guides/javascript/) — Worked example para sundan ang renderer, preload at IPC hanggang main-process handler; REA 4.1.0 ang sample records.
- [JavaScript artifact reconstruction](https://github.com/morluto/rea/blob/main/docs/javascript-artifact-reconstruction.md) — Static scope, source selection, integrity, coverage at kahulugan ng unresolved path.
- [CLI at Evidence](https://github.com/morluto/rea/blob/main/docs/cli.md) — CLI command, malaking Evidence output at limitasyon ng exit status.
- [REA installation guide](https://github.com/morluto/rea/blob/main/docs/installation.md) — Tahasan ding kailangan ng static JavaScript/Electron analysis ang procps-compatible ps sa Linux; may gabay sa recovery.
