REA (Reverse Engineer Anything) is a toolkit that equips a coding agent with the ability to inspect and explain how software works, according to the project’s landing page at rea.tools. The page describes the setup process, which involves running npx rea-agents@latest setup to install the package and connect it to a coding agent, after which the user can approve the plan and verify installation. Once installed, REA enables the agent to read a program’s code, extract rules, and reproduce behavior in a new implementation.

The site provides two illustrative examples. In the first, the agent examines the browser‑based Chrome dinosaur game. By reading the game’s update function, REA identifies the speed rule: the current speed starts at 6 and increases by 0.001 each frame as long as it stays below the maximum of 13, stopping when a collision occurs. After 4,000 updates the speed reaches approximately 10.0, and after 10,000 updates it reaches the cap of 13.0. Using this rule, the agent builds a mini‑game that replicates the acceleration while allowing the speed to be adjusted via a parameter.
In the second example, the agent inspects the Windows Calculator to understand why entering 200 + 10% yields 220. REA discovers two branches for the percentage operator. When the preceding operation is multiplication or division, the percentage is calculated as current / 100. For addition or subtraction, it is calculated as current * previous / 100. Applying these rules reproduces the calculator’s behavior: with addition, 10 % of 200 equals 20, giving 220; with multiplication, 10 % becomes 0.1, so 200 × 0.1 equals 20. The page includes assembly snippets that show how the button’s handler distinguishes the operation codes.
Beyond these demos, REA’s documentation outlines additional capabilities. Users can trace CSV export in a sample Notes app, inspect native binaries for functions, strings, and call relationships, map JavaScript/Electron modules and IPC channels, and capture browser or process activity for comparative analysis. The site invites users to point REA at any target—such as cloning the rea.tools website itself or reconstructing a game from its executable—by supplying a description of what they wish to understand or build. Support resources include a FAQ, a Discord chat, and a GitHub issue tracker for bugs and feature requests.
