
REAとは
REA(Reverse Engineer Anything)は、Windows 10および11 x64向けのエージェント指向リバースエンジニアリングデスクです。バイナリ、JavaScript、Electronアプリケーション、.NETソフトウェアを対象とした1つのMCPワークフローを提供します。
このプロジェクトは、構築済みアプリケーションをローカルで分析し、その証拠を報告するため、元のソースコードにアクセスする必要はありません。ワークフローでは、Hopper、Ghidra、IDAのいずれかがすでに利用可能な場合に使用できます。また、付属のCLIとエージェント設定により、分析対象を扱うための開始点が提供されます。

主な機能
- 1つのMCPワークフロー:バイナリ、JavaScript、Electron、.NETの各対象を横断して作業できます。
- 証拠に基づくローカル分析:構築済みアプリを調査し、報告された証拠をもとに追加調査を進められます。
- CLIとエージェント設定:付属のコマンドまたは同梱CLIで環境を設定できます。
- オプションのリバースエンジニアリングバックエンド:すでに利用している場合は、Hopper、Ghidra、IDAをREAに接続できます。
- ノートの保存:分析ノートは
files/notes/に保存されます。 - 最近の更新:バージョン6.3.0では、ストリーミングJSONの入出力、Electronの整合性チェック、ブラウザとWebMCPの処理、Ghidra・Hopper・IDAの修正、エージェントスキルのバージョン固定が追加されました。
必要条件
REAをインストールする前に、以下を準備してください。
- Windows 10またはWindows 11 x64システム。
npxを使用する場合はNode.js。- 既存のリバースエンジニアリングバックエンドに接続する場合はHopper、Ghidra、またはIDA。これらのツールは任意です。
REAのインストールと設定
1. x64パッケージをダウンロードする
REAのx64 ZIPアーカイブをダウンロードし、Windowsマシン上で展開します。同梱のコマンドラインツールがサポートファイルにアクセスできるよう、展開したファイルはまとめて保持してください。
2. エージェント設定を実行する
Node.jsが利用可能な状態で、ターミナルからエージェント設定コマンドを実行します。
npx rea-agents@latest setupダウンロードしたパッケージに同梱されているCLIも使用できます。READMEでは、どちらもサポートされる設定方法として示されています。

3. オプションのバックエンドを設定する
Hopper、Ghidra、またはIDAがすでにインストールされている場合は、設定または構成のワークフロー中に、該当するツールをREAに指定します。REAはリバースエンジニアリングデスク用にこれらのバックエンドをサポートしています。WindowsでのGhidraのホストパス対応は実験的と説明されているため、その構成を使用する場合はCLIガイドを確認してください。
基本的な使い方
エージェントに対象を調査させる
設定が完了したら、調査するバイナリまたはアプリケーションをエージェントに指定します。READMEの基本ワークフローは意図的にシンプルです。エージェントに対象を分析させ、その後、報告された証拠を確認します。
- 調査する構築済みバイナリまたはアプリケーションを選択します。
- REAのワークフローから対象を利用できるようにします。
- エージェントにバイナリまたはアプリの調査を依頼します。
- 調査結果と裏付けとなる証拠を確認します。
files/notes/に作成されたノートを確認します。
REAは構築済みアプリケーションを扱うため、ソースコードは必要ありません。そのため、パッケージ化またはコンパイル済みの出力しか利用できないアプリケーションの調査に適しています。

保存されたノートを確認する
調査記録としてノートディレクトリを使用します。
files/notes/分析の完了後に生成されたノートを読み、後から確認できるよう調査結果と証拠を保存します。記録を残しておくと、対象間の観察結果を比較したり、以前の調査に戻ったりしやすくなります。
高度なヒント
対象に適したバックエンドを使う
REAは複数の分析領域を1つのMCPワークフローにまとめますが、すでにHopper、Ghidra、またはIDAを利用している場合は、オプションのバックエンドも役立ちます。すべての対象を同じように扱うのではなく、既存のワークフローに合うツールをREAに指定してください。
調査ではアプリケーションの種類を分ける
REAはバイナリ、JavaScript、Electron、.NETに対応しています。Electron対象では、6.3.0リリースにElectronの整合性チェックが含まれています。同じリリースではブラウザとWebMCPの処理も追加されているため、分析を計画する際はこれらのアプリケーション種別を明示的に考慮してください。
ストリーミングJSON統合を使う
バージョン6.3.0はJSONのストリーミング入出力に対応しています。外部エージェントや自動化ワークフローで分析データを段階的に交換する必要がある場合に便利ですが、READMEでは追加のコマンドラインフラグや詳細なメッセージスキーマは指定されていません。
エージェントスキルのバージョンを管理する
6.3.0リリースにはエージェントスキルのバージョン固定が含まれています。再現性が重要な場合は、記録なしにバージョンを変更せず、設定したスキルのバージョンをプロジェクトで使用するバージョンに合わせてください。
推測ではなく証拠を使う
REAはローカル分析から得られた証拠を報告するよう設計されています。結論の根拠として報告された証拠と保存済みノートを扱い、各調査の状況をfiles/notes/に記録してください。

よくある質問
アプリケーションのソースコードは必要ですか?
いいえ。REAは構築済みアプリケーションを調査し、証拠を報告します。
WindowsでGhidraを使用できますか?
WindowsでのGhidraのホストパス対応は実験的です。関連する設定の詳細についてはCLIガイドを参照してください。
Hopper、Ghidra、IDAは必須ですか?
いいえ。これらは任意のバックエンドです。要件一覧では任意項目として記載されていますが、導入ワークフローでは同梱のCLIとnpx rea-agents@latest setupコマンドもサポートされています。
結論
REAは、コンパイル済みアプリケーションやパッケージ化されたアプリケーションを対象とした、エージェント支援によるリバースエンジニアリングのための、Windowsに特化したワークフローを提供します。x64パッケージをダウンロードして展開し、エージェントのセットアップを実行します。必要に応じて任意のバックエンドに接続し、エージェントに対象を調査させてください。その後、files/notes/にある証拠とメモを使って調査を整理します。
