Dá para clonar um app com IA?
Não do jeito que a promessa vende. Testei o REA com o Claude Code em um app grande, o Telegram, e o pedido de um clique entregou uma cópia da aparência: a tela igual, sem o aplicativo funcionando por trás.
O que a IA faz bem é outra coisa. Ela investiga uma função específica de um app, explica como essa função se comporta e ajuda você a construir a sua versão com código novo. A frase que resume o teste: não se clona um app, se reconstrói uma função.
Abaixo estão o teste completo, as partes de um app que a IA alcança e as que não alcança, o método em cinco passos que usei, quanto a sessão custou e os cuidados legais e com a conta.
O que é o REA
REA vem de Reverse Engineer Anything, engenharia reversa de qualquer coisa. É um projeto open source (repositório oficial no GitHub) que dá ao seu agente de IA, como o Claude Code ou o Codex, ferramentas para olhar dentro de programas prontos sem ter o código-fonte.
Ele tem três partes:
- Uma skill: instruções que dizem ao modelo como conduzir a investigação.
- Um servidor MCP: a ponte que deixa o agente usar essas ferramentas de dentro da conversa.
- Motores de análise: programas especializados que o REA aciona quando precisa, como o JADX para apps Android e o Ghidra para programas compilados. O Ghidra é gratuito e foi criado pela Agência de Segurança Nacional dos EUA.
Na prática, você pede em português (por exemplo, "investiga como funciona o timer desse app") e o agente decide quais ferramentas usar. Os motores não vêm junto com o REA: quando o arquivo exige, o próprio agente pede para instalar e configurar.
O README do projeto avisa que existem cópias com nome parecido. Instale só a partir do link oficial.
O teste com o Telegram: o que um clique entregou
Pedi ao Claude Code que baixasse o APK oficial do Telegram e tentasse recriar o app com o REA, tratando-o como código fechado. O Telegram é open source, mas eu queria ver como a ferramenta se comporta num caso difícil.
A primeira resposta já colocou os pés no chão. O app tem mais de 16 mil classes e uma biblioteca nativa, e recriar 100% numa sessão não é viável. O agente ofereceu algumas partes possíveis e eu escolhi a mais fácil: o clone visual.
O clone visual compilou. Como eu não tinha celular nem emulador conectado, pedi uma representação em HTML, e ela ficou idêntica à tela do Telegram. Só que é isso: uma tela parecida não é um aplicativo funcionando.
O motivo é simples de entender. Quando um programa é compilado, os nomes que o programador deu às funções somem ou viram códigos como N5 ou EA1. Isso se chama código ofuscado. A IA precisa deduzir o que cada pedaço faz a partir do comportamento, e quanto mais ofuscado, mais tempo e mais tokens.
Depois pedi um mapa de tudo o que o REA conseguia extrair. Aqui o resultado foi útil de verdade: 802 métodos de comunicação com o servidor, dos quais 729 aparecem no código do app, e uma lista de 74 funcionalidades organizadas em cinco fases, prontas para implementar uma a uma. Isso é um plano de trabalho, não um clone.
As três camadas de um app (e a que a IA não alcança)
Todo aplicativo é feito de camadas:
- A tela: o que você vê e toca.
- A lógica no aparelho: o que roda no seu celular ou computador.
- A lógica no servidor: o que roda nos computadores da empresa.
O REA trabalha com as duas primeiras, porque elas estão no arquivo que você baixou. A terceira nunca chega até você. O feed do TikTok, por exemplo, é decidido no servidor: não existe arquivo no seu celular que explique por que aquele vídeo apareceu. No máximo, a IA encontra pistas no app que ajudam a deduzir como algo funciona.

Por isso a primeira pergunta, antes de gastar tokens, é: a função que eu quero mora no aparelho ou no servidor?
Quando o REA faz diferença (e quando é desnecessário)
Nem todo caso precisa de engenharia reversa. Pedi ao Claude que abrisse o jogo 2048 no navegador e dissesse como ele funciona. Resposta: toda a lógica está no JavaScript que o site manda para o seu computador. É texto legível, e o Claude analisa isso sozinho, sem REA.
A regra que tirei dos testes:
- Site ou app web: peça direto ao Claude Code. Ele lê o código que chega ao navegador.
- App pequeno: muitas vezes é mais rápido descrever o que você quer ("um app com esta funcionalidade, parecido com este") do que fazer engenharia reversa.
- APK de Android, programa .exe ou biblioteca nativa: aqui o REA faz diferença, porque o código já foi transformado em formato de máquina.
O método em cinco passos: reconstruir uma função
Em vez de "clona esse app", o caminho que funcionou foi este:
- Achar a pista: escolher a função que interessa e localizar onde ela está.
- Entender o comportamento: pedir ao agente que explique o que a função faz, com a evidência que encontrou.
- Escrever a receita: transformar isso numa especificação, um texto que descreve o comportamento sem copiar o código.
- Reescrever do seu jeito: gerar código novo a partir da especificação.
- Colocar na sua tela: encaixar a função no seu projeto, com a sua interface.
Testei isso com um app de hábitos popular e de código fechado, com 4,7 estrelas e cerca de 93 mil avaliações. O agente baixou o APK, conferiu que a assinatura batia com a versão do Google Play e montou um mapa de funcionalidades: tipos de atividade, formas de medir (sim ou não, valor numérico, timer, checklist), frequências e registro diário.
Ele descobriu também que o app funciona quase todo offline, com um banco de dados local de 13 tabelas. Isso é bom sinal: quanto menos o servidor participa, mais funcionalidades dá para entender.
Depois pedi uma especificação do timer (cronômetro, contagem regressiva e intervalos pomodoro com presets) e um HTML para ver funcionando. O resultado tinha a mesma lógica do app original, escrita com código novo. O agente mapeou ainda como o app separa o plano grátis do premium, ou seja, quais recursos ficam travados e o que aparece ao tocar neles. Isso serve para estudar o modelo de negócio e desenhar o do seu projeto, não para destravar nada no app original.

O pedido que abre esse processo é simples. Adapte ao seu caso:
Quero estudar como este app funciona para criar a minha própria versão de algumas funções. Use o REA para fazer um mapa de todas as funcionalidades que você conseguir identificar, organizadas em fases, para implementarmos uma a uma. Para cada uma, diga se depende do servidor.Programa de Windows: o caso do 7-Zip com Ghidra
O último teste foi com um programa nativo, o 7-Zip. Para esse tipo de arquivo, o REA precisa do Ghidra, que não vem instalado. O agente pediu a instalação, eu autorizei, e ele seguiu o guia de análise nativa do REA.
Resultado: 3.481 funções reais, todas sem nome. Para saber o que cada uma faz, é preciso descompilar uma a uma, e o Ghidra devolve uma aproximação do código original (pseudocódigo), porque parte da informação se perdeu na compilação.
Também houve atrito. Uma das consultas foi interrompida no meio, e o Claude Code ainda não enxergava o Ghidra porque a conexão com o REA tinha sido aberta antes da configuração. A solução é fechar e abrir a sessão de novo.
Esse caso mostra o tamanho real do trabalho. Com programas nativos, a engenharia reversa é lenta, gasta muitos tokens e está sujeita a interrupções. Funciona melhor como lupa para uma função específica do que como copiadora.
Quanto custou a sessão
Muita gente pergunta quantos tokens isso consome. No Claude Code, o comando /usage mostra o consumo da sessão. Depois dos testes com o Telegram, o app de hábitos e o 7-Zip, todos na mesma sessão:
- US$ 17,71 seria o custo se eu estivesse pagando a API da Anthropic diretamente. Com o plano de assinatura, isso não é cobrado à parte, mas mostra o tamanho do uso.
- 91% do limite da sessão foi consumido. Mais um pouco e eu teria que esperar o reset.
- 10% do limite semanal, que vale para todos os modelos.
A dica prática: abra uma sessão nova para cada app que for analisar. Assim o /usage mostra quanto custou investigar aquele app, e você decide com números se vale continuar.
Cuidados legais e com a sua conta
Aqui vale ser direto:
- Leia os termos de uso. Muitos apps proíbem engenharia reversa por contrato, e as regras mudam de país para país. Este artigo não é orientação jurídica.
- Não copie código. O passo da especificação existe para isso: você estuda o comportamento e escreve código novo. Colocar o código descompilado no seu produto é outra história.
- Nada de pirataria. Destravar recursos pagos, burlar licenças ou redistribuir um app é o tipo de pedido que as plataformas de IA bloqueiam, e pode custar a sua conta do Claude ou do Codex.
- Deixe claro o objetivo. Diga ao agente que você quer estudar como uma função se comporta para criar a sua versão. Se o objetivo real for outro, o problema não está na forma de pedir.
Por onde começar
Se quiser testar, comece pequeno: um app simples, uma função só e uma sessão nova para medir o custo. Pergunte primeiro se a função mora no aparelho ou no servidor. Se morar no servidor, não perca tempo.
Preparei um PDF complementar com a instalação do REA no Claude Code em cinco passos, prompts prontos e um semáforo do que pode e do que não pode: baixe o guia de engenharia reversa com IA. Se você ainda não usa o Claude Code, o guia de Claude Code para iniciantes mostra como começar sem saber programar.

