REA(Reverse Engineer Anything)是一款旨在讓編碼代理(Coding Agent)具備反向工程能力的工具。透過安裝 REA,用戶可以指示代理檢查程式碼、解釋軟體運作邏輯,並協助重建功能。REA 支援多種目標類型,包括原生二進位檔案(執行檔與函式庫)、JavaScript 與 Electron 應用程式(含 ASAR 歸檔),以及瀏覽器與執行時活動的捕獲與比較。
安裝方式為在終端機執行 `npx rea-agents@latest setup`,或在編碼代理中輸入特定指令以生成並批准設置計畫。REA 的核心工作流程是:REA 讀取目標程式碼或執行時狀態,將反編譯後的程式碼、呼叫關係或設定值提供給編碼代理,代理則基於這些資訊解釋邏輯或生成新程式碼。
官方展示了兩個應用案例: 1. **Chrome 恐龍遊戲速度規則還原**:REA 透過本地調試連接檢查了 wayou 的 Chromium 衍生瀏覽器版本中的恐龍遊戲,提取了 `index.js` 中的速度加速規則(初始速度 6,每次更新增加 0.001,上限 13)。代理利用這些規則重建了一個可調整速度的迷你遊戲。測試顯示,在禁用障礙物和自動調度的受控瀏覽器檢查中,經過 4,000 次更新後速度為 10.0,10,000 次後達到 13.0。 2. **Windows 計算器百分比按鈕邏輯還原**:REA 檢查了 Windows 計算器(版本 11.2508.4.0, x64)的安裝應用程式庫。透過分析組裝指令與微軟公開原始碼的對應關係,REA 揭示了百分比按鈕在不同運算符下的邏輯差異:在加法或減法後,百分比應用於第一個數字(例如 200 + 10% 計算為 200 + 20 = 220);而在乘法或除法後,百分比僅轉換為小數(例如 200 × 10% 計算為 200 × 0.1 = 20)。代理據此重建了能正確處理加法和乘法的計算器邏輯。
此外,REA 還提供了對網站克隆、遊戲可執行檔重建(如 DX-Ball)以及原生二進位檔案中函式、字串和呼叫關係的檢查能力。
事件背景
反向工程是指通過檢查程式本身來理解軟體運作方式,目標是充分理解功能以進行解釋、修改或重建。REA 作為一款工具,旨在將此過程整合到 AI 編碼代理的工作流中,使代理能夠透過檢查二進位檔案、JavaScript 模組或瀏覽器執行時狀態來獲取程式的實際代碼與設定,而非僅依賴靜態分析或猜測。
社群觀察
社群討論涉及 AI 輔助反向工程的品質與限制。用戶 InvisibleUp 指出,某些 AI 生成的反編譯結果(如東方 Project 遊戲)品質可能優於預期,變數命名合理且註解清晰,但檔案結構可能更偏向 AI 使用而非反映原始開發者意圖。用戶 SyzygyRhythm 分享經驗,認為頂級模型在無需額外工具的情況下也能有效修復 Windows 遠端桌面客戶端的長期 Bug,透過 NOP 填充和堆疊偏移調整解決問題。用戶 mgaldys4 批評 REA 的 Android 逆向支援仍依賴 jadx MCP,導致大型 APK 預處理耗時過長,無法滿足大規模分析需求,並提到自己開發了 droidasc 以解決記憶體膨脹和解析緩慢的問題。其他用戶討論了 AI 生成商業應用克隆(如 Adobe、Office)的趨勢,以及對「液態軟體」(Liquid Software)未來形態的展望,認為計算機將成為能即時響應指令的實體,無需傳統作業系統或驅動程式。



