Este repo do GitHub permite que Claude clone qualquer app (REA)
Autoria: Hyperautomation Labs · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: This GitHub Repo Lets Claude Clone Any App (REA) · Canal: Hyperautomation Labs · 07:33 · Assistir no YouTube
Tópicos: Agentes de IA, Cibersegurança e segurança de software, Claude Code, Engenharia de software com IA
O vídeo demonstra o REA, uma ferramenta que conecta agentes de programação a recursos de engenharia reversa para analisar aplicativos sem acesso ao código-fonte. Em um teste com o Obsidian, Claude identificou e reproduziu o comportamento do Quick Switcher, validando a cópia com 4.915 testes. Um segundo teste foi interrompido pelas salvaguardas do Opus 5.5, mas foi concluído com o Opus 4.8 e mapeou ações que o aplicativo pode executar no sistema. O apresentador também ressalta limites técnicos, uso de espaço em disco e cuidados com licenças.
Pontos-chave
Seção intitulada “Pontos-chave”- REA é um servidor MCP que oferece ferramentas de engenharia reversa para agentes de programação.
- No teste com o Obsidian, Claude analisou o bundle do aplicativo e reproduziu o ranqueamento do Quick Switcher.
- A cópia do recurso teve os mesmos resultados que as funções originais em 4.915 consultas.
- Quando o mapa inicial do REA não encontrou a palavra procurada, Claude examinou o JavaScript minificado diretamente.
- As salvaguardas do Opus 5.5 interromperam a análise dos canais de comunicação do Obsidian; o teste foi concluído com o Opus 4.8.
- O mapeamento identificou operações como manipular arquivos e encaminhar solicitações web.
- O REA não recupera o código-fonte original: produz pseudocódigo, mapas, caminhos de chamada e evidências.
- Os arquivos de evidência podem ser grandes; no teste com Obsidian, ultrapassaram 500 MB.
- O vídeo alerta que analisar software para aprendizado e compatibilidade não autoriza copiar código nem violar licenças.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:00 | Apresentação do REA e do desafio | O vídeo apresenta o REA e explica o problema de entender recursos de aplicativos sem acesso ao código-fonte. |
| 01:04 | Análise e reprodução do Quick Switcher | Claude analisa o bundle do Obsidian, encontra a lógica de busca e reproduz o recurso após a primeira tentativa de rastreamento falhar. |
| 02:45 | Como funciona o ranqueamento | O vídeo descreve as regras de correspondência e pontuação e mostra a validação da cópia em 4.915 consultas. |
| 04:18 | Mapeamento de ações e interrupção de segurança | A análise dos canais do Obsidian é interrompida pelo Opus 5.5 e depois concluída com o Opus 4.8. |
| 05:57 | Outros casos e limites do REA | O apresentador cita análises de outros programas e explica os limites técnicos, o espaço necessário e os cuidados com licenças. |
Citações
Seção intitulada “Citações”Foi tão preciso que coincidiu com o original em 4.915 testes. — 00:00
Ele não desiste e não inventa algo. — 02:45
O ponto é que agora o mapa completo do que um aplicativo pode fazer na sua máquina leva um prompt. — 05:24
Com o REA, você pergunta ao seu agente. — 06:30
Ler um software para aprender como funciona é engenharia normal. — 07:01
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- REA (ferramenta): Ferramenta de engenharia reversa que permite a agentes analisar aplicativos e binários.
- Obsidian (ferramenta): Aplicativo de notas usado no vídeo para testar a análise e reprodução de um recurso.
- MCP (conceito): Padrão mencionado no vídeo para fornecer novas ferramentas a um agente de programação.
- Claude Code (ferramenta): Ferramenta de programação usada para executar os testes com o REA.
- Opus 5.5 (modelo): Modelo cujas salvaguardas interromperam a análise dos canais do Obsidian.
- Opus 4.8 (modelo): Modelo usado para concluir o mapeamento após a interrupção do primeiro teste.
- Ghidra (ferramenta): Ferramenta gratuita citada como opção para analisar programas nativos.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:00 4 minutos. Foi esse o tempo que Claude levou para desmontar a busca do Obsidian sem ter acesso ao código-fonte e reconstruí-la com tanta precisão que ela correspondeu à original em 4.915 testes. Então, fiz mais uma pergunta sobre o mesmo aplicativo, e o próprio sistema de segurança do Claude interveio e o interrompeu no meio de uma frase. A ferramenta que fez as duas coisas se chama REA, engenharia reversa de qualquer coisa. Ela ultrapassou 76.000 estrelas nesta semana e chegou ao primeiro lugar nos assuntos em alta do GitHub. Ela se conecta
00:32 ao Claude Code, ao Code X ou ao Cursor e permite que seu agent de programação examine praticamente qualquer aplicativo. Esta é a história completa: o que ela encontrou, onde não deu conta, o momento em que foi interrompida e o que isso significa para todos os aplicativos do seu computador, inclusive os seus. Aqui está o problema que todo desenvolvedor enfrenta. Você usa um aplicativo todos os dias e ele tem um recurso que adoraria ter no seu próprio projeto, mas é uma caixa-preta, sem código-fonte. Você consegue ver o que ele faz, mas nada
01:04 sobre como faz. A promessa da REA está na primeira linha do arquivo de leitura. Veja um recurso de que gosta, entenda como funciona até o nível binário e crie sua própria versão. Ela é um servidor MCP, o padrão para fornecer novas ferramentas a um agent de programação, e oferece 139 ferramentas ao seu agent. Aplicativos Electron, sites, .NET, Android, firmware e programas nativos para Mac, Windows e Linux, se você tiver o Hopper ou o Ghidra. O Ghidra é gratuito. A configuração é feita em uma linha. NPX REA agents setup. Ela mostra um plano, faz backup da sua
01:37 configuração, você aprova e reinicia seu agent. Coloquei tudo em uma pasta vazia no meu Mac, com Claude Code usando Opus 5.5, e escolhi um alvo: o Obsidian, o aplicativo de notas. Ele é um aplicativo Electron, então é código de verdade, distribuído em um pacote de 24 megabytes dentro do aplicativo. Copiei esse pacote para o projeto e digitei: use a REA para entender como o seletor rápido do Obsidian classifica e combina títulos de notas enquanto você digita. [música] Mostre as evidências e depois crie uma pequena página da web que reproduza a mesma correspondência e classificação entre estes 30 títulos de notas. E começa muito bem. Claude carrega a skill da REA, e a REA desmonta o pacote inteiro. 3,9 milhões de nós sintáticos, 1.600 descobertas, 42 canais de mensagens entre a janela e o processo principal, em cerca de um minuto. Estou pensando: [música] vai ser fácil. Mas aí não deu certo. Claude pediu à REA para rastrear a palavra “switcher” nesse mapa, e o rastreamento voltou vazio. Nenhuma correspondência. O mapa da REA não indexa todas as strings de um pacote minificado. E, por um segundo, pensei: lá vamos nós, mais um
02:10 relatório que fica ótimo no arquivo de leitura. Mas veja o que Claude faz em seguida. Ele não desiste nem inventa nada. Ele descompacta o pacote e lê o próprio código. 3,7 megabytes de JavaScript minificado, um byte de cada vez. E encontra a sequência. O comando é “switcher open”, associado a Command+O. Ele executa uma busca aproximada. Sua consulta é convertida para minúsculas e dividida em palavras. Cada palavra precisa aparecer no título, na ordem. Se isso falhar, ele tenta letra por letra.
02:45 Depois, calcula a pontuação. Cada correspondência começa em zero e perde pontos. Um ponto para cada trecho extra que precisou destacar. Um décimo para cada palavra que começou no meio de outra palavra. Um pouco pela distância entre as correspondências e um pouco pela posição em que começam. A maior pontuação vence. Claude criou a página, e então veio a parte que eu não pedi. Ele executou as funções originais do Obsidian e sua própria cópia lado a lado, com todos os 30 títulos e 4.915 consultas. As mesmas listas classificadas, as mesmas pontuações,
03:16 os mesmos destaques, todas as vezes. Aqui está. Digito “rev”, depois “weekly review”, depois “design review” e, por fim, “renovation”. Digito “DN”. “Reading list” fica acima de “daily note”. Esse é um detalhe peculiar do Obsidian, e a cópia também o reproduz. 4 minutos e 11 segundos. Se isso for útil, inscreva-se, porque é grátis. E, se quiser apoiar o trabalho, clique em “Join” aqui ou no botão de apoiador no Facebook. Agora, a pergunta que fez Claude ser interrompido.
03:47 O segundo teste é o que importa se você distribui software. Esqueça copiar um recurso. Eu queria saber o que a janela do Obsidian tem permissão para pedir ao sistema que faça sem você saber. Então, digitei isto. A REA encontrou todos os 42 canais em segundos, indicando o local exato do código onde cada um é tratado. Claude começou a ler os manipuladores e a escrever o [música] mapa, e então aconteceu isto. Interrompido. Parado por um classificador de segurança. As proteções do Opus 5.5 sinalizaram a sessão. Uma nota explica que, às vezes, ele pode sinalizar trabalhos que não têm nada a ver com invasão, e oferece a opção de mudar para o Opus 4.8. Pense no que isso significa. O próprio modelo decidiu que mapear o que um aplicativo pode fazer no seu computador parecia demais com um ataque. Então, mudei para o Opus 4.8 e executei de novo. Desta vez, terminou. 42 canais em quatro grupos. 15 acessam o sistema de arquivos. Copiar um arquivo para a pasta do aplicativo, gravar um ícone, mover algo para a lixeira, criar ou renomear uma pasta de cofre. Um deles é “vault request URL”. Permite que a janela envie qualquer solicitação da web por meio do processo principal. Qualquer endereço, quaisquer cabeçalhos,
04:18 qualquer corpo. E outro é “register CLI”. Executa um comando de shell para colocar o Obsidian no seu PATH. Cada linha aponta para o local exato no código. Para deixar claro, nada disso é uma falha. O Obsidian precisa dessas portas para funcionar como aplicativo de notas. O ponto é que agora basta um prompt para obter o mapa completo do que um aplicativo pode fazer no seu computador, com os locais correspondentes no código. E o mesmo mapa existe para todos os aplicativos que você distribui. Além disso, o Obsidian é o caso fácil, porque aplicativos JavaScript vêm com o próprio código. Os estudos de caso da própria REA vão mais longe.
04:51 Estes são do area.tools, com crédito à equipe da REA. No Notion, eles acompanharam a cópia e a colagem de uma página, passando pelo preload, entrando no processo principal e chegando à sua área de transferência. Quatro trechos de código, um nome de canal. DXBall, um jogo de Windows dos anos 90. Eles rastrearam uma chamada de som até a função que decide de qual alto-falante um som sai. Reescreveram a função em C, e a reconstrução reproduz todos os 63 bytes da função compilada original. E aquele que me fez parar para pensar: Calculadora do Windows. Por que 200 + 10%
05:24 dá 220? Antes da REA, você lê assembly. Com a REA, pergunta ao seu agent. Todo aplicativo fechado no seu computador acabou de se tornar legível. Três coisas antes de usar. Primeiro: ela não recupera o código-fonte original. Ninguém consegue fazer isso. Você obtém pseudocódigo, mapas, caminhos de chamadas e evidências, e o agent ainda precisa raciocinar. Você viu isso no primeiro teste. Segundo: os arquivos de evidências são grandes. O do Obsidian tinha mais de 500 megabytes. A REA
05:57 salva tudo e entrega um resumo ao agent, o que é a escolha certa, mas planeje o espaço em disco. Terceiro: examinar um software para aprender como funciona é prática normal de engenharia e, em muitos lugares, é permitido para fins de aprendizado e compatibilidade. Copiar o código de alguém para o seu produto ou burlar uma verificação de licença, não. Leia a licença do aplicativo que você analisou. Coloquei todos os prompts deste vídeo em uma folha gratuita de uma página. A linha de configuração, os dois prompts para o Obsidian, um prompt para sites, um prompt para binários nativos e o que esperar de cada um. Comente “dentro”,
06:30 e eu envio para você. É novo no Cloud Code? Meus guias para iniciantes estão na descrição. Então, aqui vai minha pergunta para você: você apontaria isso para o seu próprio aplicativo antes que outra pessoa o faça? Conte nos comentários. Acompanhe no Instagram e no Facebook para ver conteúdos curtos sobre IA. E as análises aprofundadas estão aqui no YouTube.
07:01 salva e entrega ao agent um resumo, o que é a decisão certa, mas planeje o espaço em disco. Três: analisar o interior de um software para aprender como ele funciona é engenharia normal e, em muitos lugares, é permitido para fins de aprendizado e compatibilidade. Copiar o código de alguém para o seu produto ou burlar uma verificação de licença, não. Leia a licença do app que você usou como referência. Coloquei todos os prompts deste vídeo em uma folha gratuita de uma página. A linha de configuração, os dois prompts do Obsidian, um prompt para site, um prompt para binário nativo e o que esperar de cada um. Comente aqui dentro,
07:33 e vou enviar para você. É novo no Cloud Code? Meus guias para iniciantes estão na descrição. Então, aqui vai minha pergunta para você: você usaria isso no seu próprio app antes que outra pessoa o faça? Conte nos comentários. Acompanhe no Instagram e no Facebook para ver conteúdo rápido sobre IA. E os mergulhos profundos ficam aqui no YouTube.
Transcrição original
[00:00] 4 minutes. That’s how long it took Claude to take apart Obsidian search with no source code and rebuild it so exactly that it matched the original on 4,915 tests. Then I asked it one more question about the same app and Claude’s own safety system stepped in and stopped it mid-sentence. The tool that did both is called REA, reverse engineer anything. It passed 76,000 stars this week and went to number one on GitHub trending. It plugs
[00:32] into Claude code, code X or cursor and lets your coding agent look inside almost any app. This is the whole story. What it found, where it fell flat, the moment it got stopped and what that means for every app on your computer including yours. Here’s the problem every builder has. You use an app every day and it has one feature you’d love in your own project, but it’s a sealed box, no source code. You can see what it does and nothing
[01:04] about how. REA’s promise is on the first line of its read me. See a feature you like, understand how it works down to the binary level and build your own version. It’s an MCP server, the standard way to hand a coding agent new tools and it hands yours 139 of them. Electron apps, websites, .net, Android, firmware and native Mac, Windows and Linux programs if you have Hopper or Ghidra. Ghidra is free. Setup is one line. NPX REA agents setup. It shows you a plan, backs up your
[01:37] config, you approve, you restart your agent. I put it in a fresh folder on my Mac with Claude code running Opus 5.5 and I picked a target. Obsidian, the note app. It’s an electron app, so it’s real code ships as one 24 megabyte bundle inside the app. I copied that bundle into the project and type this. Use REA to understand how Obsidian’s quick switcher ranks and matches note titles as you type. [music] Show me the evidence, then build a small web page that reproduces the same matching and
[02:10] ranking over these 30 note titles. And it starts strong. Claude loads the REA skill and REA takes the whole bundle apart. 3.9 million syntax nodes, 1,600 findings, 42 message channels between the window and the main process in about a minute. I’m thinking, [music] this is going to be easy. Then it fell flat. Claude asked REA to trace the word switcher through that map, and the trace came back empty. Zero matches. REA’s map doesn’t index every string in a minified bundle. And for a second, I thought, here we go, another
[02:45] report that looks great in the readme. But watch what Claude does next. It doesn’t give up, and it doesn’t make something up. It unpacks the bundle and reads the code itself. 3.7 megabytes of minified JavaScript, one byte offset at a time. And it finds the chain. The command is switcher open bound to command O. It runs a fuzzy search. Your query gets lowercased and split into words. Every word has to appear in the title in order. If that fails, it tries letter by letter.
[03:16] Then it scores. Every match starts at zero and loses points. One point for every extra chunk it had to highlight. A tenth for every word that started mid-word. A little for how spread out the matches, and a little for how far in it starts. Highest score wins. Claude built the page, and then came the part I didn’t ask for. It ran Obsidian’s original functions and its own copy side by side over all 30 titles and 4,915 queries. Same rank lists, same scores,
[03:47] same highlights every single time. Here it is. I type rev weekly review first, then design review, then renovation. I type DN. Reading list beats daily note. That’s a real Obsidian quirk, and the copy has it, too. 4 minutes, 11 seconds. If this is useful, hit subscribe because it’s free. And if you want to back the work, hit join here or the supporter button on Facebook. Now, the question that got Claude stopped.
[04:18] Test two is the one that matters if you ship software. Forget copying a feature. I wanted to know what Obsidian’s window is allowed to ask the system to do behind your back. So, I typed this. r e a found all 42 channels in seconds with the exact spot in the code where each one is handled. Claude started reading the handlers and writing the [music] map, and then this happened. Interrupted. Stopped by a safety classifier. Opus 5.5’s safeguards flagged the session. A note explains it can sometimes flag work that isn’t about
[04:51] hacking at all, and offers to switch to Opus 4.8. Think about what that means. The model itself decided that mapping what an app can do to your machine looked too much like an attack. So, I switched to Opus 4.8 and ran it again. This time it finished. 42 channels in four groups. 15 touch the file system. Copy a file into the app folder, write an icon, move something to the trash, create or rename a vault folder. One, vault request URL. Lets the window send any web request through the main process. Any address, any headers,
[05:24] any body. And one, register CLI. Runs a shell command to put Obsidian on your path. Every line points at the exact spot in the code. To be clear, none of that is a flaw. Obsidian needs those doors to be a note app. The point is that the full map of what an app can do to your machine with the code locations now takes one prompt. And the same map exists for every app you ship. And Obsidian is the easy case cuz JavaScript apps carry their code with them. REA’s own case studies go further.
[05:57] These are from area.tools, credit to the REA team. Notion, they followed copy and paste from the page through the preload into the main process out to your clipboard. Four pieces of code, one channel name, DXBall, a Windows game from the ’90s. They followed a sound call into the function that decides which speaker a sound comes from. Rewrote it in C, and the rebuild reproduces all 63 bytes of the original compiled function. And the one that made me sit back, Windows Calculator. Why does 200 + 10%
[06:30] give 220? Before REA, you read assembly. With REA, you ask your agent. Every closed app on your computer just became readable. Three things before you run this. One, it does not give you the original source code back. Nobody can. You get pseudo code, maps, call paths, and evidence, and the agent still has to think. You saw that in test one. Two, the evidence files are big. Obsidian’s was over 500 megabytes. REA
[07:01] saves it and hands the agent a summary, which is the right call, but plan for the disk space. Three, looking inside software to learn how it works is normal engineering, and in many places it’s allowed for learning and compatibility. Copying someone’s code into your product or breaking a license check is not. Read the license of the app you pointed at. I put every prompt from this video into a free one-page sheet. The setup line, both Obsidian prompts, a website prompt, a native binary prompt, and what to expect back from each. Comment inside,
[07:33] and I’ll send it to you. New to Cloud Code? My beginner guides are in the description. So, here’s my question for you. Would you point this at your own app before someone else does? Tell me in the comments. Follow along on Instagram and Facebook for bite-size AI. And the deep dives live here on YouTube.