본문 바로가기
日本語/AI

[AI] REAとは?AIでリバースエンジニアリングするOSS、1日約6万DL

by Kor-IT 2026. 10. 13.
반응형

REA(Reverse Engineer Anything)とは:コーディングエージェントにソースコードなしでプログラムを解析させるMCPサーバー

 

REA(Reverse Engineer Anything)は、ソースコードのないプログラムをコーディングエージェントに解析させる、オープンソースのMCPサーバー兼CLIです。MITライセンスで公開されています。

 

Claude Code・Codex・Cursorなどのエージェントにつないで使い、結論ごとに根拠と未確認の点が付いて返ってきます。npmパッケージのダウンロード数は、2026年10月11日(UTC)の1日だけで5万9,665件に達しました。

 

公式ドキュメントが示すインストール方法はnpmパッケージ rea-agents で、exe形式のインストーラーはありません。一方、名前の似た別のGitHubリポジトリは rea.exe を実行するよう案内しています。この記事では、REAでできること、インストールとOS別の解析エンジン、使う前の注意点、日本の著作権法との関係を整理します。

 

2026年10月13日時点(REA 6.4.0)。REA公式リポジトリ・公式サイト・npmの記録と、e-Gov法令検索の著作権法、文化庁の改正法Q&Aをもとにまとめました。法的助言ではありません。

 

ほかの言語で読む:한국어 · English · Tiếng Việt · Bahasa Indonesia

 

 

REAの概要

項目 内容
正式名称 Reverse Engineer Anything
形態 ローカルMCPサーバー+CLI
開発者 個人アカウントのmorluto
ライセンス MIT(REA自体は無料)
公式の入手先 GitHub morluto/rea、npm rea-agents
最新版 6.4.0(10月11日)
必要なもの Node.js 22.19以上など

 

MCP(Model Context Protocol)は、AIエージェントが外部ツールを呼び出すための仕組みです。REAはこの仕組みで、逆コンパイラーなどの解析ツールをエージェントから使えるようにします。

 

 

REAでできること

リバースエンジニアリングとは、ソースコードを見ずに、完成したプログラムそのものを調べて動きを明らかにすることです。これまでは人が逆コンパイラーを開き、アセンブリや関数呼び出しを一つずつ追う必要がありました。REAを入れると、エージェントが対象を開いてコードを追い、分かったことを根拠と一緒に返します。その結果をもとに、動作を説明したり、似た機能を自分で作ってテストしたりします。

 

公式サイトの例を見るとイメージしやすくなります。

 

  • Windowsの電卓:「200 + 10%」がなぜ220になるのかを調べると、+ の後の % は最初の数のパーセント(200の10%=20)を足す処理だと分かります。× や ÷ の後では100で割るだけです
  • Chromeの恐竜ゲーム:実行中のスクリプトから、速度が6で始まり、ぶつからない間は更新ごとに0.001ずつ上がり、13で止まるというルールを読み取ります。そのうえで、速度を調整できる小さなゲームとして作り直します

 

元のソースコードを復元するツールではありません。公式の免責事項も、逆コンパイルやAIの分析結果は不完全だったり誤っていたりすることがあるため、重要な結論は根拠で確認するよう求めています。

 

解析できる対象

対象ごとに必要なツールが違います。よく使いそうなものを挙げます。

 

対象 返ってくるもの 必要なもの
ネイティブ実行ファイル 疑似コード、アセンブリ Hopper、Ghidra、IDAのいずれか
JavaScript、Electron モジュール、IPC、ルート Node.jsのみ
.NETアセンブリ メタデータ、CIL 追加ツールの記載なし
Android APK マニフェスト、クラス JADXとJDK
Webサイト 構造、スクリプト、通信 Chrome系ブラウザー
ファームウェア 領域、抽出結果 BinwalkかUnblob(Linux)

 

ほかにGoのバイナリ、WASM、SQLite、HARファイル、Flutterアプリなども扱えます。JavaScriptと.NETの解析はファイルを読むだけで実行しません。一方、プロセスを動かしたり、ブラウザーや端末につないだりして観察する機能は、自分の権限で対象を実行したり、対象とやり取りしたりします。

 

 

どれくらい広がったか

リポジトリが作られたのは2026年4月、npmの最初の版は7月12日です。週間ダウンロード数は9月21日の週が142件、9月28日の週が1,291件でしたが、10月5日の週には13万2,518件まで増えました。急増の理由は公式資料には書かれていません。

 

rea-agentsのnpmダウンロード数(1日あたり)
npmの公開ダウンロード統計
rea-agents
rea-agentsのnpmダウンロード数(1日あたり)0件20,000件40,000件60,000件10/710/810/910/1010/11rea-agents · 10/7 · 5,032件rea-agents · 10/8 · 9,000件rea-agents · 10/9 · 19,983件rea-agents · 10/10 · 34,790件rea-agents · 10/11 · 59,665件
10月6日は集計が0のため10月7日から表示、10月12日以降は集計前 · 出典:npmダウンロードAPI

 

1日のダウンロード数は10月7日の5,032件から、10月11日には5万9,665件へと4日で約12倍になりました。npmのダウンロード数には自動インストールも含まれるため、実際の利用者数とは一致しません。10月13日時点でGitHubのスターは約16万7,000です。

 

開発の速さも目立ちます。メジャーバージョンが10月5日〜8日(UTC)の間に4.0、5.0、6.0と3回上がりました。6.2では結果の形式が変わって移行ガイドが出ており、6.3にも互換性のない変更が入っています。

 

반응형

 

インストールと使い方

Node.js 22.19以上(22系)、24.11以上(24系)、または26以上とnpmが必要です。23系・25系とプレリリース版には対応していません。ターミナルで次のコマンドを実行します。

 

npx rea-agents@latest setup

 

セットアップでは、つなぐエージェントを選んだ後、変更する設定ファイル、入れる外部ソフトウェア、接続先のアドレスが計画として表示されます。承認するまで何も変更されず、変更前に既存の設定がバックアップされます。終わったらエージェントを再起動し、あとは「REAでこのアプリの検索機能がどう動くか、根拠付きで説明して」のように普通の言葉で頼みます。

 

セットアップが対応するエージェントは、Claude Code、Claude Desktop、Codex、Cursor、Gemini CLI、VS Code、GitHub Copilot CLIなど20種類です。一覧にないエージェントでも、ローカルMCPサーバーに対応していれば手動で登録できます。

 

やりたいこと コマンド
状態の確認 rea doctor
更新(グローバル) rea update
削除 rea uninstall
キャッシュも削除 rea uninstall --purge-data

 

rea コマンドは npm install --global rea-agents でグローバルに入れた場合に使えます。npxだけで使っている場合は、セットアップをもう一度実行すれば更新できます。

 

解析エンジンとOS

ネイティブ実行ファイルを深く解析するには、逆コンパイラーが一つ必要です。REAはつなぐだけで、ライセンスは提供しません。

 

エンジン 費用 Windows
Ghidra 無料(NSA、Apache 2.0) 試験段階、読み取りのみ
IDA Proは有料、Freeは非商用 Proは検証済み(別のMCP経由)
Hopper 有料、デモ版あり 非対応

 

WindowsではHopperが使えず、Ghidra連携もまだ試験段階で読み取りのみです。Ghidraは12.1とJDK 21以上をあらかじめ入れておく必要があります。

 

IDAは別のMCPプラグインをつなぐ方式です。REAのドキュメントにある検証環境は、WindowsのIDA Pro 9.3とmacOS(arm64)のIDA Professional 9.1です。IDA Freeは非商用のみで、逆コンパイルはクラウドで行います。REAのIDA Free連携は試験段階で、Windowsではまだ試していないとドキュメントに書かれています。IDA用ネイティブプラグイン(ida-free-mcp 1.1.2)は初期設定ですべてのアドレス(0.0.0.0)で接続を受け付けます。そのため、ファイアウォールで制限するよう案内されています。

 

 

名前の似た別組織のリポジトリに注意

公式リポジトリ morluto/rea とは別に、10月10日に作られた rea-tools/rea というリポジトリがあります。公式のフォークではなく別の組織のリポジトリで、Node.jsなしで rea.exe と gui_setup.exe をダウンロードして実行する方法を案内しています。トピックには「download-rea」「rea-installer」などが並びます。このリポジトリの実行ファイルが安全かどうかは確認していません。

 

公式リポジトリと公式サイトのrea.toolsにはexe形式でのインストールの案内がなく、最近の公式リリース(6.1〜6.4)にも実行ファイルは添付されていません。インストールはnpmの rea-agents(npx含む)で行い、出どころを確認できない実行ファイルは使わないのが安全です。npmのページでメンテナーがmorlutoか、リポジトリがgithub.com/morluto/reaを指しているかを確認できます。

 

 

使う前に確認したいこと

データの行き先と、対象が実際に動くかどうかを先に押さえておきます。

 

  • 解析はローカル、結果はモデル提供元へ:公式FAQによると、REAは手元のマシンで対象を解析します。ただし結果を読むのはエージェントなので、使っているAIモデル提供元のデータポリシーに従います。それ以外のアップロードについては書かれていません
  • 実行する機能は隔離環境で:プロセスやブラウザー、端末を扱う機能は自分の権限で動きます。免責事項は、エージェントが作った計画やスクリプトを先に確認し、信頼できない対象は隔離環境で扱うよう求めています
  • REAが対応しない用途:DRM・ライセンス認証・チート対策の回避、ゲームのチート作り、権限のないシステムでの認証回避、独自ソフトウェアのコピー、AIモデル提供元のポリシー回避には対応しないと明記しています
  • 商用ツールは正規ライセンスで:IDA Pro・Hopper・JEBは各社のライセンスが別途必要で、クラックや共有キーは認めていません

 

반응형

 

日本で使う前に確認したいこと

REAの免責事項は、国やソフトウェアのライセンスによってリバースエンジニアリングが制限されることがあると書いています。日本では、著作権法と文化庁の解説が手がかりになります。

 

  • 著作権法 第30条の4:著作物に表現された思想や感情を「享受」する目的でない利用は、必要と認められる限度で認められます。文化庁の平成30年改正Q&Aは、その例として「プログラムの調査解析」、いわゆるリバース・エンジニアリングを挙げています
  • ただし書き:著作物の種類や用途、利用の態様に照らして著作権者の利益を不当に害する場合は対象外です
  • 実行の扱い:同条第3号の括弧書きは、プログラムの著作物について「電子計算機における実行」を例から除いています。REAの実行を伴う観察機能を使う場合は、この点も含めて別に確認が必要です
  • 技術的な制限の回避(第113条第6項・第7項):視聴や実行を制限する仕組み(技術的利用制限手段)の回避は、研究や技術開発の目的上正当な範囲など一部の例外を除き、侵害とみなされます(第6項)。コピー防止や利用制限の回避を機能とする指令符号を公衆に譲渡するなどの行為も、侵害とみなされます(第7項)
  • 契約と他の法律:ソフトウェアの利用規約がリバースエンジニアリングを禁じている場合は、契約上の問題になり得ます。他人のサーバーやサービスに無断で入り込む行為は、著作権法とは別の法律の問題になり得ます

 

まとめると、「調べて理解する」段階は第30条の4の対象になり得ます。一方、解析結果をもとに「似た機能を作る」段階は別の行為として考える必要があります。著作権法の一般的な考え方として、元のプログラムの表現を再現すれば、複製や翻案に当たる可能性があります。会社で使う場合は、対象ソフトウェアの規約と社内のセキュリティ規程を先に確認し、判断に迷うときは弁護士などの専門家に相談してください。

 

公式サイトには日本語ページ(rea.tools/ja)もあり、エージェントに貼り付けるセットアップ用の依頼文も日本語で用意されています。ただ、訳が不自然な箇所もあるため、コマンドや数値は英語ページかGitHubで確認すると確実です。

 

 

まとめ

  • REAは、コーディングエージェントにリバースエンジニアリングのツールをMCPでつなぐ無料のOSSで、結論ごとに根拠と限界を添えて返します
  • インストールは npx rea-agents@latest setup の1行で、承認するまで設定は変わりません
  • ネイティブ解析にはGhidra・IDA・Hopperのどれかが必要で、Windowsでは選択肢が限られます
  • 公式ドキュメントにexeのインストール案内はありません。出どころ不明の実行ファイルは使わないようにします
  • 日本では第30条の4が手がかりになりますが、ただし書き、技術的制限の回避、利用規約は別に確認が必要です

 

参考

 

반응형

댓글