O vazamento do mapa de origem do código do Claude revela que o JavaScript minificado já estava público no npm

O que realmente aconteceu com o "vazamento"
Um arquivo .map de mapa de origem destinado à depuração interna foi acidentalmente incluído na versão 2.1.88 do pacote @anthropic-ai/claude-code no npm. O pesquisador de segurança Chaofan Shou o detectou e postou no X. A Anthropic confirmou que se tratava de um "problema de empacotamento de lançamento causado por erro humano, não uma violação de segurança". O pacote foi retirado, mas já havia sido espelhado em todos os lugares.
Esta é a segunda vez que isso acontece - um vazamento de mapa de origem quase idêntico ocorreu em fevereiro de 2025, treze meses antes.
O código já era público
O Claude Code é distribuído como um único arquivo JavaScript empacotado - cli.js - distribuído via npm. Tem 13MB, 16.824 linhas de JavaScript e está publicamente acessível em unpkg.com/@anthropic-ai/claude-code/cli.js desde o lançamento do produto.
O arquivo é minificado, mas não ofuscado. Aqui está a diferença:
- Minificação (o que todo bundler como esbuild, Webpack, Rollup faz por padrão) encurta nomes de variáveis e remove espaços em branco
- Ofuscação criptografa strings, achata o fluxo de controle, injeta código morto, adiciona mecanismos anti-manipulação
O Claude Code tem minificação padrão com embaralhamento de nomes de variáveis e remoção de espaços em branco, mas nenhuma das técnicas de ofuscação:
- Criptografia/codificação de strings: Não
- Achamento de fluxo de controle: Não
- Injeção de código morto: Não
- Autodefesa / anti-manipulação: Não
- Rotação de array de strings: Não
- Embaralhamento de nomes de propriedades: Não
Extraindo o conteúdo em texto simples
Todas as mais de 148.000 literais de string estão em texto simples. Cada prompt do sistema, cada descrição de ferramenta, cada instrução comportamental é legível com um editor de texto. Nenhum mapa de origem necessário.
Usando um script simples de extração baseado em AST, o arquivo completo de 13MB pode ser analisado em 1,47 segundos para extrair 147.992 strings. Após categorizar:
- 1.017 prompts e instruções do sistema
- 431 descrições de ferramentas
- 837 nomes únicos de eventos de telemetria (todos prefixados com tengu_ - codinome interno do Claude Code)
- 504 variáveis de ambiente controlando o comportamento do produto
- 3.196 mensagens de erro
- Endpoints hardcoded, URLs OAuth, uma chave de API do DataDog, o catálogo completo de modelos
Reação da comunidade
Dentro de um único dia após a descoberta do mapa de origem:
- Despejos de código apareceram no GitHub (como nirholas/claude-code), removidos por DMCA pela Anthropic em horas, mas bifurcados centenas de vezes
- Claw Code - uma reescrita completa em Rust da arquitetura do Claude Code - atingiu 50.000 estrelas no GitHub em 2 horas, tornando-se o repositório mais rápido da história a alcançar esse marco
- ccleaks.com surgiu - um site de análise totalmente projetado catalogando cada recurso não lançado, comando oculto e flag de compilação encontrada no código-fonte
- Dezenas de artigos de análise na DEV Community, YouTube e blogs de tecnologia dissecando cada detalhe
Geoffrey Huntley publicou uma "transpilação de sala limpa" completa do Claude Code meses antes deste incidente.
📖 Leia a fonte completa: HN AI Agents
👀 See Also
Gerenciamento de cluster OpenClaw: mantenha o caminho de recuperação fora do cluster
Uma topologia mais segura para clusters gerenciados pelo OpenClaw: execute o Gateway e o estado das tarefas fora, use acesso somente leitura e conduza mudanças via PRs + CI + merge aprovado por humano no Argo CD.

Google TIG relata primeiro exploit de zero-day gerado por IA encontrado na natureza
O Google Threat Intelligence Group identificou um ator de ameaças usando uma exploração de dia zero supostamente desenvolvida com IA, marcando o primeiro uso ofensivo observado de IA para exploração de vulnerabilidades de dia zero.

Sunder: Um Firewall de Privacidade Local Baseado em Rust para LLMs
Sunder é uma extensão do Chrome que atua como um firewall de privacidade local para chats de IA, construída usando Rust e WebAssembly, garantindo que dados sensíveis nunca saiam do seu navegador.

Sandboxing de Agentes de IA com WebAssembly: Autoridade Zero por Padrão
Cosmonic argumenta que o sandboxing tradicional (seccomp, bubblewrap) falha para agentes de IA devido à autoridade ambiente. O modelo baseado em capacidades do WebAssembly concede autoridade zero por padrão, exigindo importações explícitas para sistema de arquivos, rede ou credenciais.