REA 是目前網路上最危險的東西,但 99% 的人根本不知道怎麼用它
你每個月花錢訂閱的那些 App,它們的功能其實早就躺在你的電腦裡了
動態設計軟體、Office、TradingView、你的筆記 App 等等——這些全只是你硬碟裡的一堆程式碼
而所有公司都在賭一件事:你永遠不會去翻它的底
現在,一個開源 repo 只要一行指令,就能讓你的 Claude Code 擁有同樣的技能
在 alpha 之前 — 訂閱我的 substack 獲取更多最新 alpha —
https://substack.com/@0xcodila
https://x.com/MatthewBerman/status/2108245653843509415
這三天它徹底洗版了。「軟體已死」、「閉源玩完了」
https://x.com/RoundtableSpace/status/2109165852578992582
大多數人只看了截圖、存了書籤,卻從來沒動手試過
所以在這堂完整課程裡,我會用最白話的方式告訴你一切:
- 逆向工程到底是什麼
- REA 能讀取哪些東西,從桌面軟體到遊戲都行
- 「這不就是偷嗎?」的誠實解答
- 如何照著官方文件一步步安裝
- 大家已經重做了什麼:Adobe、Office、TradingView、遊戲
- 一般人和專業人士每天怎麼用它
- 一整包可以直接複製貼上的提示詞
所以,先存個書籤,打開終端機,跟著一步步來吧
Part 1 - 搞懂它
01. 什麼是逆向工程(以及什麼是 REA)
逆向工程其實很簡單
你盯著一個做好的 App,在沒有原始碼的情況下,搞清楚它內部是怎麼運作的
就這樣。你想把某個功能理解透徹,好到能解釋它、修改它,或自己重做一個版本
REA(Reverse Engineer Anything)做的就是這件事,而且苦差事都交給你的 AI agent 去做。官方 README 用一句話就說清楚了:
「看到喜歡的功能。搞懂它的運作原理,一路挖到二進位層級。」
技術上來說它是這樣的:
- 一個 MCP server + CLI,可以接進 Claude Code、Codex、Cursor、Gemini CLI 和其他 agents
- 它在本機執行。你的 App 絕對不會被上傳到任何地方
- 每個結論都附帶證據:哪個函式、哪個檔案、哪次呼叫,以及還有哪些未知部分
你用大白話提問。REA 檢查程式。你的 agent 負責解釋、做出你的版本並測試 REA repo

最棒的範例就在官網上
舉個例子:為什麼 Windows 小算盤在你輸入 200 + 10% 時會顯示 220?
沒有 REA,你得手動解譯分支、追蹤呼叫。有了 REA,你只要開口問
程式碼給出的答案:按下 + 之後,% 按鈕會取第一個數字的百分比。200 的 10% 是 20,所以 200 + 20 = 220。而按下 × 之後,10% 就直接變成 0.1
或者為什麼 Chrome 恐龍遊戲會越跑越快:速度從 6 開始,每次更新加 0.001,到 13 封頂
你不用讀程式碼。你只要問問題,就能拿到規則
REA 是 MIT 授權的開源專案,由 @morluto 開發
第一版在 2026 年 7 月 12 日發布。三個月後,GitHub stars 突破 100K+
https://x.com/celineodier/status/2109281121749856655
02. REA 能讀取什麼
這是官方清單,我幫你翻譯成人話 What you can analyze
- 用 JavaScript/Electron 做的桌面 App(Notion、Slack、Discord、Obsidian 等等)。不用額外裝東西
- 網站:頁面結構、腳本、網路請求。你需要 Chrome 家族的瀏覽器
- 已儲存的網路流量(瀏覽器匯出的 HAR 檔)
- 程式和遊戲(.exe、Mac app、老 DOS 遊戲):偽代碼、組合語言、字串、呼叫。需要 Ghidra、Hopper 或 IDA
- .NET apps:不需要額外工具
- Android apps (APK):需要 JDK 和 JADX
- 智能合約 bytecode:Linux x64
- 韌體、WASM、Go 二進位檔等等
以下是幾乎沒人提到的部分:
很多 Unity 遊戲的邏輯是用 .NET code 打包的。而 REA 讀 .NET 完全不需要額外工具
這就是為什麼有人能在 30 分鐘內,把自己買的一款 Steam 遊戲丟進 Unity 裡打開:
https://x.com/AIWarper/status/2109060856466264566
所以現在 agent 幫你把整件事都做完了

03. 等等... 這不就是偷嗎?
我們來聊聊房間裡的大象!
REA 一爆紅,X 上一半的人在喊「盜版」,另一半在喊「軟體已死」
Chamath 甚至在 All-In 節目上說,有人把整套 Adobe 都「反編譯」了
https://x.com/firesidealpha/status/2108761607857992104
好笑的地方來了。那支影片被加上了 Community Note
那些 Adobe 替代品並不是反編譯出來的。開發者稱它們為
淨室重新實作(clean-room reimplementations)
這一則註解就把整個法律遊戲講透了。讓我解釋一下什麼是淨室,因為一旦你懂了,一切就通了
淨室是 40 年前的老招
Step 1: 一組團隊研究原版,寫下它做了什麼。不是程式碼,而是行為
Step 2: 另一組完全不同的團隊,只靠那份描述來打造新產品。他們永遠看不到原始碼
結果是一樣的東西,但裡面零行原版的程式碼 Clean-room design
PC 產業就是這樣誕生的。80 年代初,Compaq 用這招重做了 IBM 的 BIOS,花了大約 100 萬美元。這就是為什麼其他品牌能做出「IBM 相容」PC
而且法院一直挺逆向工程:
- 1992 年,Sega v. Accolade。 Accolade 拆解 Sega Genesis 遊戲來做自己的相容遊戲。法院認定,當拆解程式碼是理解其運作方式的唯一途徑時,可能屬於合理使用 Sega v. Accolade
- 2000 年,Sony v. Connectix。 Sony 以 0-3 敗訴。最終的模擬器裡完全沒有 Sony 的程式碼
當然,歷史也有另一面
2010-2011 年間,駭客破解了 PS3 的安全機制並公開了 root key。Sony 告了 George Hotz(geohot),他在 2011 年 4 月和解,同意不再破解 Sony 產品 TechSpot
所以我的真心話是
在自己電腦上讀 App 來搞懂它,這叫學習
根據行為用自己的程式碼重做一個功能,這一直是業界的做法
直接複製他們的程式碼、破解付費功能、或公開別人反編譯的原始碼,這才是會被告的部分
連 REA 團隊自己都說得很白:它是為了合法研究、教育、互通性、軟體保存,以及你擁有或有權檢查的軟體 Disclaimer
研究原版。推出你自己的。 這就是本文所有內容的鐵律

Part 2 · 安裝
03. 5 分鐘安裝 REA
照順序來 Get started
Step 1. 檢查 Node.js
打開終端機執行:
1node -v2npm -v
你需要 Node 22.19+、24.11+ 或 26+。不支援 23 和 25 版
如果版本太舊或出現「command not found」,請安裝 Node 24 LTS:
macOS(用 Homebrew):
1brew install node
關掉 Terminal,重新打開,然後:
1fnm install 242fnm default 24
Windows(PowerShell):
1winget install OpenJS.NodeJS.LTS
如果有詢問就按 Y。關掉 PowerShell,重新打開,執行 node -v
如果 Windows 之後跳出「running scripts is disabled」,執行一次這個:
1Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Step 2. 準備一個 agent
我用的是 Claude Code。它需要付費的 Claude 方案。設定頁面:code.claude.com/docs/en/setup
Codex、Cursor、Gemini CLI、OpenCode 等也都可以
Step 3. 執行 REA 安裝
最簡單的方法: 把這段貼進 Claude Code,讓它全包:
1使用 npx rea-agents@latest setup 安裝 REA 並將它連接到這個 coding agent。先給我安裝計畫讓我確認,然後驗證安裝結果。
或自己跑:
1npx rea-agents@latest setup
接下來會發生什麼:
- npm 會問你要不要下載套件。選 yes
- REA 會列出可用的 agents。選 Claude Code
- REA 會列出它要做的所有變更計畫。你沒點頭就不會動任何东西。 它也會備份你目前的設定
- 它會加入 MCP 連線以及對應的調查技能
安裝過程也會問你要不要裝 Hopper,這是一個用來讀取程式的獨立引擎。在 Mac 上它會下載官方安裝檔並打開,你選 demo mode 就好。這是選配的,現在可以先說 no
Step 4. 重啟你的 agent
- 終端機裡的 Claude Code:退出再開一個新 session
- 桌面 App(Claude Desktop、Cursor):用 ⌘Q 完全關閉。只關視窗是不夠的
Step 5. 檢查
1npx -y rea-agents@latest doctor --client claude_code --json
doctor 只會檢查,絕對不會改任何東西。如果哪裡失敗了,它會告訴你下一步該怎麼做
想永久使用簡短的 rea 指令:
你的成果: Claude Code 現在有 REA 工具了。問它「你有什麼 REA 工具?」,它就會列出來
1npm install --global rea-agents2rea --help

04. 2 分鐘完成你的第一次逆向工程
別一開始就挑大魔王。REA 為此準備了官方練習 App First investigation
它是一個超小的「Notes」App,裡面有個 Export notes 按鈕。你的任務:找出匯出到底去了哪裡
把這段貼進 Claude Code:
1將 https://rea.tools/examples/notes-example.zip 下載到新的 example 資料夾並解壓縮。使用 REA 找出我點擊 Export notes 時發生了什麼事。
然後問:
1顯示 notes.csv 寫在哪裡、包含哪些欄位,以及相關的檔案和行號。
你應該會得到一次點擊的完整路徑:
- 頁面(renderer.js)處理按鈕事件
- 橋接(preload.js)送出 notes:export 訊息
- 處理器(main.js)把帶有 id 和 title 的 notes.csv 寫進你的 Downloads 資料夾
恭喜。這就是逆向工程
你剛剛在一個不是你寫的 App 裡追蹤了一個功能,而且每一步都有證據
現在好玩的來了。你電腦上每個 Electron App 都是同樣的玩法,而且你知道它們住在哪:
- Mac: /Applications/<App>.app/Contents/Resources/app.asar(對 App 按右鍵 → 顯示套件內容)
- Windows: C:\Users\<you>\AppData\Local\Programs\<App>\resources\app.asar
- Linux: 通常是 /opt/<App>/resources/app.asar
而且你可以直接在終端機分析它,不用啟動 App:
1npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json
小提示: 在 Mac 上,按住 Option 對資料夾按右鍵,選「Copy as Pathname」。或直接把資料夾拖進終端機

05. 為你想讀的東西加上對應的引擎
桌面 JavaScript App 不需要加任何東西。其他的就要加一個引擎
程式和遊戲:Ghidra(免費,NSA 出品)
你需要 Ghidra 12.1.x 和 JDK 21 或更新版本
macOS / Linux:
1export GHIDRA_INSTALL_DIR=/absolute/path/to/ghidra_12.1.4_PUBLIC2export JAVA_HOME=/absolute/path/to/jdk-213npx -y rea-agents@latest doctor --provider ghidra --json4npx rea-agents@latest setup
Windows PowerShell:
1$env:GHIDRA_INSTALL_DIR = "C:/tools/ghidra_12.1.4_PUBLIC"2$env:JAVA_HOME = "C:/tools/jdk-21"3npx -y rea-agents@latest doctor --provider ghidra --json4npx rea-agents@latest setup
Windows 支援還在實驗階段,且僅限唯讀
然後就能看任何函式:
1npx -y rea-agents@latest function /absolute/path/to/program main --provider ghidra --json
程式和遊戲:Hopper(Mac/Linux,商業軟體但有 demo)
再跑一次 setup 就好。它會找到 Hopper 或問你要不要裝。在 Mac 上,第一次啟動選 demo mode 或你的授權
程式和遊戲:IDA(如果你已經買了)
已在 Windows 上透過現有的 IDA MCP 設定驗證過 Get started
Android apps: 完整的 JDK 17+ 和 jadx-headless-mcp 0.7.1 Android guide
1export REA_JADX_MCP_JAR=/absolute/path/jadx-headless-mcp-0.7.1-all.jar2rea inspect-android-package /path/App.apk
網站: 任何 Chrome 家族瀏覽器
智能合約: Linux x64
保持更新(REA 幾乎每天都在推修復):
1rea update
或用 npx rea-agents@latest setup。想移除的話:rea uninstall
如果你的 agent 看不到 REA: 重啟它,然後再跑一次 doctor --client claude_code --json
https://x.com/lauriewired/status/2109018088872239310

Part 3 - 大家已經重做了什麼
06. Adobe、Office、TradingView 和遊戲
這裡開始變瘋狂了
AI 不只是學會讀軟體。大家已經在重做整個產品了
- Adobe
ArtCraft 重做了七款 Adobe App 作為免費開源替代品:Photoshop、Illustrator、Premiere、Lightroom、After Effects、InDesign 和 Acrobat。用 Rust 寫成,並靠 Claude Opus 5.5 幫忙
https://x.com/Pirat_Nation/status/2108437553615425881
還記得淨室嗎?就是這個。ArtCraft 稱這些為淨室重新實作,完全沒碰 Adobe 的原始碼。它們還在早期 alpha 階段,但它們真的存在,而且免費
- Microsoft Office
接著他們盯上了 Office。WordCraft、GridCraft 和 DeckCraft:也就是 Word、Excel 和 PowerPoint
https://x.com/Pirat_Nation/status/2109358375209427301
- TradingView
這個我最愛。把平台的行為摸透,用 Opus 5.5 轉成規格書,然後用自己的程式碼打造專屬的圖表引擎和回測系統
https://x.com/RohOnChain/status/2109347169316839434
說句公道話:自己做交易終端沒問題。免費用別人的付費指標就不行了。做你自己的
- 遊戲
這是 AI 逆向工程最先爆發的地方
《超級瑪利歐陽光》的原生 PC 移植版:花了約 365 個 agent 小時和 17.3B tokens,同時用了 Claude 和 Codex Repo
https://x.com/chasemdev/status/2102957888477995067
PS1 遊戲 Tomba! 現在透過靜態重編譯器在 PC 上跑了。開發者以前完全沒經驗,用 Claude Code + Ghidra 搞了大概三週 Write-up
而在 REA 官方部落格上,有人用 AI agents 重做了一款東方 Project 遊戲:697 個函式、696 個完全吻合,約 12 天就能玩 The industrial revolution in reverse engineering
Kotaku 甚至報導了 Halo、GTA: Vice City 和 The Simpsons: Hit & Run 的瀏覽器版本,據說都歸功於 AI 輔助反編譯。這些是非官方的,很可能會被下架,而這正好就是上一章提到的那條界線 Kotaku
怎麼複製這些成果: 挑一個你在付費的工具或你擁有的遊戲,問 REA 某個功能是怎麼運作的,寫出規格書,然後做出你自己的版本。提示詞在 Step 10

Part 4 - 每天都用上它
逆向工程最初是為了相容性、安全性和保存而發明的
但在日常生活中,我會這樣用它
07. 給新手
1. 「這個 App 在我手機上到底在幹嘛?」
拿任何 Android App 的 APK:你的券商、交易所、或是 Telegram 上那個「免費訊號」App。問它:
1對這個 APK 使用 REA。列出所有權限、所有分析或追蹤 SDK,以及這個 App 連線的所有網域。每個發現都要顯示對應的 class 和 method。
官方證明這招有用:REA 拆解了 Aegis 驗證器 App(3,077 個 classes),精確找出它產生 6 位數登入碼的方式,並重做了它。重做版通過了全部 133 個測試案例 Aegis case
2. 「這個檔案安全嗎?」
逆向工程就是大家抓惡意軟體的方式。當一個假的 113 GB「GTA 6 build」流傳時,有人拆解了那些檔案,發現它是假的而且塞滿惡意軟體
https://x.com/gamingskew/status/2091221918561317355
3. 「這個 token 是騙局嗎?」
大多數 memecoin 都不會公開原始碼。REA 能讀取原始合約 bytecode 並還原它的函式 EVM guide
1rea inspect-evm-interface ./runtime.hex hex --json
然後問:
1對這個合約 bytecode 使用 REA。列出所有能改變狀態的函式。標記任何看起來像 mint、blacklist、pause、fee change 或 owner-only transfer 的東西。標示哪些是確認的,哪些是推測的。
這裡的函式名稱是從 bytecode 猜出來的,所以看到紅旗請當作「要再深挖」。而且這個指令目前只能在 Linux x64 上跑
4. 「我想要那個付費功能」
別去破解它。重做它。問 REA 那個功能是怎麼運作的,然後讓 Claude 用公開資料和開源元件做出你自己的版本

08. 給專業人士
REA 內建了引導式工作流程,但幾乎沒人知道。它們直接整合在 MCP server 裡 Guided prompts:
- investigate_feature: 從發現功能一路追蹤到精確的函式
- compare_application_versions: 比較 App 的兩個版本,看看更新到底改了什麼
- verify_reconstruction: 用保存的證據核對你的重做版
- trace_crash: 把崩潰連接到背後的程式碼路徑
- audit_residual_unknowns: 列出還沒證實的部分
- prepare_bounded_process_capture: 在實際執行前,規劃一個安全、受限的 runtime 實驗
專業循環就是 調查 → 規格 → 建構 → 驗證
1使用 REA 調查 [feature] 在 [app] 中是如何運作的。撰寫 SPEC.md:行為、輸入、輸出、邊界情況,不要複製程式碼。然後根據 SPEC.md 在 ./my-version 中建構它,根據觀察到的行為撰寫測試,並執行到全部通過為止。
這招能走多遠?看看官方 showcase:
- DX-Ball(1996 年):REA 還原了 sound-pan 函式並用 C 重做。它通過了 3,205 個 original-x86 測試案例,並完美重現全部 63 個編譯位元組 DX-Ball
- Notion: REA 追蹤了複製功能的運作方式,從頁面經過 IPC 橋接一直到系統剪貼簿 Notion
而東方 Project 重做案帶來的教訓,對認真想做這件事的人來說簡直是黃金:
- 給 agent 明確的目標和驗收標準
- 把筆記和檢查結果放進 git,這樣下一個 session 才能接續
- 把 agent 的每個解釋都當成待驗證的假設
- 測試你的測試。 曾經有一個壞掉的比對邏輯讓錯誤的函式過關了
資安圈已經在大規模跑這套了。一位研究員用 8 個 MCP servers、300+ 工具、Ghidra、radare2 和 Frida 搭了一條 AI pipeline,並表示光靠 bug bounty 就回本了:
https://x.com/cr3ghost/status/2098033761317446083
錢在哪裡: 資安研究和 bug bounty、把舊軟體搬上新系統、讓不同工具互相溝通,以及幫企業搞懂他們弄丟原始碼的軟體

09. REA 做不到什麼
我希望你信任這篇文章,所以以下是真實的限制
- 它碰不到伺服器。 它只能讀你機器上的東西。在公司伺服器上跑的程式碼從來沒送到你手上。它不能駭銀行或轉帳 Why it can't hack your bank
- 反編譯出來的程式碼不是原始碼。 它是重建品。這就是為什麼驗證步驟很重要
- 硬骨頭依然難啃。 被 stripped 的 C++ 二進位檔比 Unity .NET 遊戲難搞得多
- 你的 agent 可能會拒絕。 某些韌體和主機目標會觸發模型的安全規則
- 商業工具需要正版授權。 REA 不會給你 IDA、Hopper 或 JEB 的授權,也不允許用破解版

10. 提示詞懶人包
存起來。只要裝好 REA,這些提示詞在 Claude Code 裡都能直接用
安裝:
1使用 npx rea-agents@latest setup 安裝 REA 並將它連接到這個 coding agent。先給我安裝計畫讓我確認,然後驗證安裝結果。
你的第一次測試
1將 https://rea.tools/examples/notes-example.zip 下載到新的 example 資料夾並解壓縮。使用 REA 找出我點擊 Export notes 時發生了什麼事。
萬用款:
1搞懂 Notes app 裡的搜尋功能是如何運作的,給我看證據,並為我的專案做一個類似的功能。
即時功能:
1弄清楚 Discord 是如何即時顯示誰正在打字的,給我看證據,並為我的專案做一個類似的東西。
小算盤:
1對這個 APK 使用 REA。列出所有權限、所有分析或追蹤 SDK,以及這個 App 連線的所有網域。每個發現都要顯示對應的 class 和 method。
1用 REA 檢查 Windows 計算機的 % 按鈕。還原 + 和 × 之後的規則,然後做一個同時用到這兩種運算的小型計算機。
小遊戲:
1檢查恐龍小遊戲,並做出一個可以調整速度的版本。
重現一款遊戲:
1從執行檔重現一款遊戲,並與原版進行比對測試。
複製一個網站:
1複製 rea.tools 網站。
手機 App 審查:
1用 REA 分析這個 APK。列出所有權限、所有分析或追蹤 SDK,以及 App 連線的所有網域。每一項發現都要標出對應的 class 和 method。
Token 檢查:
1用 REA 分析這份合約 bytecode。列出所有能改變狀態的函式。標記任何看起來像 mint、blacklist、pause、fee change 或 owner-only transfer 的地方。註明哪些是已確認的,哪些是推測的。
專業級重建:
1用 REA 研究 [app] 裡的 [feature] 是怎麼運作的。寫一份 SPEC.md:行為、輸入、輸出、邊界情況,不要直接複製程式碼。接著根據 SPEC.md 在 ./my-version 裡實作出來,依照觀察到的行為撰寫測試,並反覆執行直到全部通過。
更新改了什麼:
1用 REA 的 compare_application_versions workflow 比對 [app] 的 [old version] 和 [new version]。告訴我到底改了什麼,並附上證據。
你的「一晚搞定」行動清單
別只是收藏起來。今晚就動手:
- 安裝 REA,用 setup prompt 完成設定(5 分鐘)
- 練習官方 Notes 範例(2 分鐘)
- 挑一個你每天都在用的電腦軟體
- 問一個問題,針對你最喜歡的一項功能
- 拿到規格:它做了什麼、一步步的流程,還有證據
- 做出你的版本,根據規格在全新資料夾裡實作
就這樣。只要一個晚上,你看待軟體的方式將徹底改變
典範轉移
以前「閉源」代表「你永遠不會知道」→ 現在它的意思是「拿出證據給我看」
https://x.com/karpathy/status/2109361546505966046
REA 不是駭客工具
它是用來閱讀「不是你寫的軟體」的工具
真正的 alpha 不在那 100K stars,也不是那些瘋傳的截圖
真正的 alpha 是:別人 App 裡讓你羨慕的每一項功能,現在你都能看懂了:
- 讓 REA 找出功能和證據
- 讓 Claude 寫出規格並做出你的版本
- 讓測試證明它真的跑得動
多數人會繼續花錢買那些他們一下午就能搞懂的功能
而少數學會閱讀軟體的人,想做出什麼都行——而且完全免費。
下次動手開發前,先把這篇教學存進書籤 →





