REA: como testar a IA que desmonta qualquer programa
IA

REA: como testar a IA que desmonta qualquer programa

O REA liga Claude Code, Codex e Cursor a Ghidra, Hopper e IDA pra entender apps sem código-fonte. Passou de 128 mil estrelas no GitHub. Veja como funciona, os riscos legais e como testar.

Em cinco dias, um projeto saiu de uns 4 mil estrelas no GitHub pra mais de 50 mil, e nesta segunda já passa de 128 mil. É o REA, sigla de Reverse Engineer Anything: uma ferramenta de engenharia reversa com IA que liga o seu agente de IA (Claude Code, Codex, Cursor e companhia) a programas de engenharia reversa, pra ele abrir um app sem código-fonte e explicar como uma função funciona por dentro.

Se você viu nas últimas semanas clone de Photoshop feito com IA e jogo antigo reconstruído do executável, esse é o tipo de ferramenta que está por trás da onda. Vale entender o que ela faz de verdade, quem deveria testar e onde estão os riscos, inclusive jurídicos.

O que é o REA

O repositório morluto/rea se descreve como “um MCP para engenharia reversa de binários, aplicativos e comportamento em tempo de execução”. MCP é o padrão que os agentes de IA usam pra chamar ferramentas externas. Na prática, o REA dá ao agente acesso a analisadores como Hopper, Ghidra e IDA, além de leitores de JavaScript, apps Electron, assemblies .NET, APKs de Android e sites.

O pitch do site oficial é: “viu uma função num app que você queria no seu produto? Peça pro seu agente investigar”. A ferramenta devolve pseudocódigo, assembly, strings e referências, e o agente usa isso pra explicar o comportamento ou escrever uma versão parecida. Segundo o README, a análise roda localmente, mas o resultado vai pro modelo de IA que você usa, e esse modelo segue a política de dados do provedor.

Os exemplos que o próprio projeto mostra dão uma ideia do alcance. Um reconstrói em C o cálculo de som do jogo DX-Ball a partir do executável x86. Outro rastreia como a área de transferência do Notion passa do renderer pro processo principal do Electron. O terceiro recupera a lógica de padrão de tiros do Touhou 4, um jogo de PC-98 dos anos 90.

Por que explodiu agora

O projeto existe desde abril, mas a curva foi absurda em outubro. No Hacker News, onde o link chegou a 778 pontos e mais de 300 comentários em 10 de outubro, um usuário fez as contas: cerca de 4,2 mil estrelas em 5 de outubro, 10 mil no dia 7 e 54,6 mil no dia 10. Ele estranhou também os forks, que pularam de 438 pra mais de 10 mil. Hoje, pela API do GitHub, são 128 mil estrelas e quase 29 mil forks. No npm, o pacote rea-agents teve mais de 73 mil downloads na semana de 4 a 10 de outubro.

O timing ajuda a explicar. Os modelos de IA ficaram bons em ler assembly e pseudocódigo, e a comunidade passou a usar isso pra decompilar jogo, portar app e clonar software pago. Um usuário do HN comentou que o feed dele no YouTube encheu de clones de produtos da Adobe e do Office feitos com IA nos mesmos dias, e perguntou se era por causa do REA.

O que a galera está dizendo

A reação está longe de ser só aplauso. No mesmo tópico, um usuário ironizou o jeito de instalar sugerido no site, que é colar um prompt no agente pra ele rodar o setup sozinho: pra ele, é a evolução do velho “curl | bash”, aquele hábito de rodar script da internet sem ler. Outro levantou a dúvida que muita empresa deve estar se fazendo: se qualquer software pode ser desmontado assim, as empresas vão empurrar tudo pra SaaS, onde o código nem chega na sua máquina?

No YouTube, o vídeo “I Tested The Viral Github Repo To Reverse Engineer Anything”, do Nick Saraev, passou de 430 mil visualizações em um dia. O do canal Eric Tech, “How To Use REA To Clone Any Software In Minutes”, já tinha mais de 110 mil. O título deste último resume bem como a internet entendeu a ferramenta, e é justamente aí que mora o problema.

É legal usar?

Depende muito do que você faz com ela. No Brasil, a Lei de Software (9.609/98) protege programa de computador como obra, no regime de direito autoral, e prevê pena pra quem viola esse direito. Além disso, a maioria dos termos de uso de app comercial proíbe engenharia reversa por contrato.

O próprio README do projeto avisa que o REA é pra pesquisa legal, educação, interoperabilidade, preservação de software e análise de programas que você possui ou tem autorização pra examinar. Estudar como algo funciona pra aprender, auditar um app que você usa ou entender um formato de arquivo pra fazer seu programa conversar com ele é uma coisa. Copiar código, tirar proteção ou distribuir um clone com a cara do original é outra, e esse segundo grupo é o que costuma terminar em notificação. Não sou advogado. Se for usar isso no trabalho, pergunte ao jurídico antes, principalmente se o código analisado for de terceiros.

Como usar o REA (passo a passo)

O REA é gratuito, open source (licença MIT) e roda via npm. Use só o link oficial do GitHub ou o pacote rea-agents no npm. Projeto viral atrai pacote falso com nome parecido.

Requisitos, segundo o README: Node.js na linha 22 (a partir da 22.19), na linha 24 (a partir da 24.11) ou versão 26 em diante, npm e um agente que aceite servidor MCP local. Pra analisar binário nativo (.exe, por exemplo), você precisa de Hopper, Ghidra ou IDA. Pra JavaScript, Electron e .NET, não precisa de nada extra.

  1. Instale o Node.js LTS pelo site oficial e confira a versão com node -v no terminal.
  2. Rode npx rea-agents setup. O assistente pergunta quais agentes configurar e mostra as mudanças antes de aplicar, com backup da configuração atual.
  3. Leia o plano antes de aprovar. Se ele oferecer instalar o Hopper, você pode recusar e usar o Ghidra, que é gratuito.
  4. Reinicie o agente e teste com algo seu ou de código aberto. O README sugere um pedido no estilo “entenda como a busca funciona neste app e me mostre as evidências”.
  5. O setup funciona com Claude Code, Codex, Cursor, Gemini CLI e outros agentes listados no guia de instalação do repositório. No Linux, o README pede o comando ps (pacote procps) no PATH pra análises com Ghidra, JADX e JavaScript.
  6. Pra testar sem agente, dá pra analisar um app Electron instalado com npx -y rea-agents@latest analyze-javascript-application /caminho/do/app --json.
  7. Se quiser o comando rea fixo no terminal, instale com npm install --global rea-agents e confira com rea --help. O projeto muda rápido, então atualize com rea update (ou rode de novo npx rea-agents@latest setup se usa npx).

Dois cuidados. O primeiro: o setup altera a configuração do seu agente, então rode numa máquina pessoal, não no PC da empresa sem autorização. O segundo: tudo que o REA encontra vai pro modelo de IA. Se você analisar um programa interno do trabalho, o conteúdo pode ir parar no provedor do modelo.

O que isso muda pra você

Se você programa, o REA é uma ferramenta de estudo muito boa. Entender como um app resolve um problema, sem precisar dominar Ghidra por meses, encurta caminho. Pra quem trabalha com segurança, analisar malware e auditar app suspeito fica mais acessível. Se você não programa, o efeito chega de outro jeito: vai aparecer cada vez mais clone grátis de app pago, e nem todo clone é seguro ou vai continuar existindo.

O veredito do NM

Eu acho o REA impressionante como ferramenta e preocupante como moda. Pra aprender, preservar jogo antigo e auditar software, ele é um presente. Já a promessa de “clonar qualquer software em minutos” vende uma ideia errada, de que copiar o produto dos outros virou coisa sem consequência. Se for testar, teste com app seu ou open source, leia o que o setup vai mudar e trate qualquer clone feito assim como protótipo, não como produto pra lançar.

Imagem: captura oficial do REA abrindo a ponte de análise dentro do Hopper ao inspecionar um binário nativo, via repositório morluto/rea no GitHub.

Imagem de capa: captura oficial do REA rodando análise no Hopper, do repositório morluto/rea no GitHub.

Recomendados pra você

Comentários (0)

Deixe seu comentário