REAはReverse Engineer Anythingの略です。MCPサーバー、つまりAIコーディングエージェントが呼び出せるツールのセットです。これを使うと、ソースコードがなくても、パソコンにインストールされたアプリをエージェントが調べられます。機能の裏にあるアプリの部分を見つけ、その機能の仕組みを説明し、結論ごとに根拠を示します。
MITライセンスのオープンソースで、Node.jsで動きます。Claude Code、Codex、Cursor、Gemini CLI、Grok Buildなど、ローカルMCPサーバーに対応したエージェントで使えます。2026年10月22日時点で、リポジトリのGitHubスターは約359,000、npmの最新バージョンは2026年10月18日の6.7.0でした。
調べられるもの
REAはエージェントを、さまざまな対象向けのツールにつなぎます。主なものは次のとおりです。
- JavaScriptやElectronのアプリ。デスクトップのチャットアプリやメモアプリの多くがこれです。REAはモジュール、import、アプリの各部分のやり取りを見つけます。
- ウェブサイト。Chrome系のブラウザを使います。REAはページの構造、スクリプト、ネットワークリクエストを報告します。
- ネイティブのプログラム。Hopper、Ghidra、IDAのどれかがあれば、REAは疑似コード、アセンブリ、文字列、関数どうしの呼び出しを返します。
- AndroidのAPK、.NETのプログラム、UnityやGodotのゲームファイル、保存したネットワークキャプチャ。
JavaScriptと.NETの静的な調査はファイルを読むだけで、アプリを実行しません。ネイティブの解析には上の3つのエンジンのどれかが必要です。
エージェントの使い方
セットアップのあとは、普通の言葉でエージェントに頼みます。たとえば次のように。
Understand how search works in the Notes app,
show me the evidence, and build a similar
feature for my project.
エージェントはREAを呼び出してアプリを調べ、機能の裏にあるコードをたどります。REAは、見つけたこと、それがどこにあったか、確認できなかったことを返します。そのうえでエージェントが機能を説明したり、自分のバージョンを書いてテストしたりします。
プロジェクトのサイトには実際の例があります。Notionのデスクトップアプリでクリップボード機能をたどった例や、1990年代のゲームDX-Ballの音の計算を、元とバイト単位で一致するまで作り直した例です。
パソコンに残るもの
REAはアプリをあなたのパソコン上で解析し、アップロードしません。結果はエージェントに渡り、エージェントの裏にあるAIモデルはその提供元のデータ規約に従います。
REAが見られるのはパソコンの中にあるものだけです。課金やアカウントのように会社のサーバーで動く処理はアプリの中にないので、REAには読めません。
向いていない使い方
REAの動画では「どんなアプリでもクローンできる」とよく言われます。でもプロジェクトはそうは言っていません。目的は、機能の仕組みを理解して、自分のバージョンを作ることです。規約では、他人の保護されたコードや素材のコピー、DRMやライセンス確認の回避、ゲームのチート作りに使わないよう求めています。自分のソフトか、調べる許可があるソフトに使ってください。
インストール方法
Node.js 22.19以降とnpmが必要です。これを実行してエージェントを選びます。
npx rea-agents setup
セットアップはREAをエージェントに追加し、対応する指示を加え、その前に元の設定をバックアップします。終わったらエージェントを再起動してください。ターミナルからもREAを使うには次のとおりです。
npm install --global rea-agents
rea --help
公式の入手先は、リポジトリmorluto/rea、rea.tools、npmのrea-agentsパッケージです。似た名前のリポジトリはこのプロジェクトのものではありません。