{"id":116,"date":"2026-04-02T09:14:57","date_gmt":"2026-04-02T12:14:57","guid":{"rendered":"https:\/\/iaantifragil.com.br\/?p=116"},"modified":"2026-04-11T10:26:52","modified_gmt":"2026-04-11T13:26:52","slug":"vazamento-claude-code-undercover-mode","status":"publish","type":"post","link":"https:\/\/iaantifragil.com.br\/?p=116","title":{"rendered":"O Claude Code vazou o pr\u00f3prio c\u00f3digo \u2014 e o que estava dentro pode ser mais importante que o vazamento"},"content":{"rendered":"<hr \/>\n<p><img decoding=\"async\" class=\"alignnone size-medium wp-image-122 lazyload\" data-src=\"https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/Bola-de-cristal-300x200.png\" alt=\"\" width=\"300\" height=\"200\" data-srcset=\"https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/Bola-de-cristal-300x200.png 300w, https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/Bola-de-cristal-1024x683.png 1024w, https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/Bola-de-cristal-768x512.png 768w, https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/Bola-de-cristal.png 1536w\" data-sizes=\"(max-width: 300px) 100vw, 300px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 300px; --smush-placeholder-aspect-ratio: 300\/200;\" \/><\/p>\n<p>Ontem, um pesquisador estagi\u00e1rio da empresa de seguran\u00e7a Fuzzland, chamado Chaofan Shou, encontrou algo surpreendente no registro p\u00fablico do npm, o reposit\u00f3rio onde desenvolvedores publicam pacotes de software.<\/p>\n<p>Dentro do pacote oficial do Claude Code (a ferramenta de programa\u00e7\u00e3o da Anthropic, a mesma empresa que faz o Claude), havia um arquivo chamado cli.js.map. Para quem n\u00e3o \u00e9 desenvolvedor: esse arquivo \u00e9 um source map (traduzindo para portugu\u00eas, um mapa de fonte) \u2014 um arquivo t\u00e9cnico que acompanha c\u00f3digo comprimido e guarda o mapeamento completo de volta ao c\u00f3digo original, linha por linha. Serve para debug. E estava publicamente acess\u00edvel no npm.<\/p>\n<p>A Anthropic tinha publicado o source map junto com o produto.<\/p>\n<p>Em algumas horas, o conte\u00fado j\u00e1 estava disponibilizado no GitHub. Mais de 512.000 linhas de c\u00f3digo. Tudo dispon\u00edvel para qualquer pessoa baixar, e o reposit\u00f3rio acumulou mais de 50.000 c\u00f3pias em poucas horas.<\/p>\n<p>A hist\u00f3ria do vazamento j\u00e1 seria relevante por si s\u00f3. S\u00f3 que o que estava dentro do c\u00f3digo revelou algo que vale mais a pena discutir.<\/p>\n<hr \/>\n<h2>O sistema que foi encontrado l\u00e1 dentro<\/h2>\n<p>Entre as descobertas realizadas a partir do c\u00f3digo vazado, uma chamou aten\u00e7\u00e3o especial no Hacker News, onde a hist\u00f3ria acumulou quase 2.000 likes e 900 coment\u00e1rios.<\/p>\n<p>Existe no Claude Code algo chamado de undercover mode, ou modo disfar\u00e7ado, em tradu\u00e7\u00e3o livre.<\/p>\n<p>Esse modo instrui o Claude a nunca mencionar, em commits ou pull requests p\u00fablicos no GitHub, que o c\u00f3digo foi produzido por ele. Segundo o trecho real do prompt vazado:<\/p>\n<blockquote><p>&#8220;NEVER include in commit messages or PR descriptions: The phrase &#8216;Claude Code&#8217; or any mention that [it&#8217;s] an AI.&#8221;<\/p><\/blockquote>\n<p>Traduzindo: nunca diga que voc\u00ea \u00e9 IA. N\u00e3o assine o trabalho. Finja que \u00e9 um ser humano contribuindo.<\/p>\n<p>E aqui est\u00e1 a ironia que muita gente percebeu: a Anthropic criou um modo espec\u00edfico para garantir que o Claude nunca revelasse que era uma IA e ent\u00e3o, acidentalmente, publicou esse modo para qualquer pessoa ler.<\/p>\n<p>A instru\u00e7\u00e3o era: n\u00e3o conte que voc\u00ea \u00e9 uma IA. E a Anthropic contou para todo mundo.<\/p>\n<p>A pr\u00f3pria Anthropic confirmou o incidente ao The Verge. Christopher Nulty, porta-voz da empresa, disse: &#8220;This was a release packaging issue caused by human error, not a security breach.&#8221; Ou seja, nenhum dado de cliente foi exposto. S\u00f3 o c\u00f3digo interno.<\/p>\n<hr \/>\n<h2>Por que isso \u00e9 relevante para voc\u00ea<\/h2>\n<p>Voc\u00ea possivelmente n\u00e3o usa Claude Code para contribuir com projetos de c\u00f3digo aberto no GitHub. Mas o princ\u00edpio do undercover mode est\u00e1 presente em qualquer ferramenta que n\u00e3o te diz o que ela esconde.<\/p>\n<p>A instru\u00e7\u00e3o n\u00e3o foi criada para enganar quem usa a ferramenta, at\u00e9 porque voc\u00ea sabe que est\u00e1 usando. Ela parece ter sido criada para que o resultado parecesse humano para quem visse de fora.<\/p>\n<p>E isso levanta uma quest\u00e3o muito relevante: quando voc\u00ea usa uma ferramenta de IA para produzir algo, como por exemplo um texto, uma an\u00e1lise, um c\u00f3digo, quem vai ler esse material do outro lado sabe, ou deveria saber, que foi total ou parcialmente gerado por IA?<\/p>\n<p>\u00c0s vezes a resposta n\u00e3o importa. Mas \u00e0s vezes importa muito. E a Anthropic parece ter tomado essa decis\u00e3o por voc\u00ea, sem documentar de forma expl\u00edcita.<\/p>\n<p>O vazamento, ent\u00e3o, n\u00e3o revelou somente uma falha de seguran\u00e7a. Revelou que ferramentas de IA podem conter em seus c\u00f3digos decis\u00f5es embutidas sobre como se apresentar ao mundo \u2014 e voc\u00ea e eu s\u00f3 ficamos sabendo quando algu\u00e9m encontra o arquivo errado no lugar errado.<\/p>\n<hr \/>\n<h2>E o que podemos tirar disto?<\/h2>\n<p>Existe um princ\u00edpio que uso bastante aqui no blog: a via negativa. Em vez de perguntar &#8220;o que essa ferramenta faz?&#8221;, voc\u00ea pode perguntar &#8220;o que ela esconde?&#8221;.<\/p>\n<p>A fragilidade n\u00e3o est\u00e1 nas funcionalidades documentadas. Est\u00e1 nas suposi\u00e7\u00f5es n\u00e3o ditas.<\/p>\n<p>O undercover mode do Claude Code \u00e9 um exemplo claro: a empresa entendeu que seria razo\u00e1vel instruir o modelo a n\u00e3o se identificar como IA em reposit\u00f3rios p\u00fablicos. Mas, pergunto: razo\u00e1vel para quem? Essa pergunta parece nunca ter sido colocada para os usu\u00e1rios.<\/p>\n<p>Quando voc\u00ea usa uma ferramenta de IA, voc\u00ea &#8220;herda&#8221; todas as suposi\u00e7\u00f5es que est\u00e3o dentro dela, inclusive as que ningu\u00e9m documentou e que voc\u00ea desconhece.<\/p>\n<p>A quest\u00e3o n\u00e3o \u00e9 se existem suposi\u00e7\u00f5es escondidas, mas sim quantas.<\/p>\n<h2>O que fazer com isso<\/h2>\n<p>N\u00e3o estou afirmando que voc\u00ea deveria parar de usar Claude, o ChatGPT, ou qualquer ferramenta de IA. Estou dizendo que a opacidade pode ter um custo, e o custo \u00e9 que voc\u00ea descobre o que estava l\u00e1 dentro s\u00f3 quando algo vaza.<\/p>\n<p>S\u00f3 que as suposi\u00e7\u00f5es que est\u00e3o embutidas no c\u00f3digo n\u00e3o somem quando o arquivo some. Elas continuam l\u00e1, na pr\u00f3xima vers\u00e3o, talvez com um outro nome.<\/p>\n<p>A resposta n\u00e3o \u00e9 desconfiar de tudo. \u00c9 manter o ser humano no centro das decis\u00f5es que importam.<\/p>\n<p>Um texto que vai para um cliente, um relat\u00f3rio que fundamenta uma decis\u00e3o, um contrato que voc\u00ea vai assinar. Nesses casos, a IA tem que ser encarada como um instrumento. Quem responde pelo conte\u00fado \u00e9 voc\u00ea. E isso exige que voc\u00ea tenha lido, entendido e aprovado o que est\u00e1 sendo entregue.<\/p>\n<p>Transpar\u00eancia n\u00e3o \u00e9 s\u00f3 declarar que usou IA. \u00c9 garantir que o que sai com o seu nome reflete o que voc\u00ea de fato pensa e, especialmente, revisou.<\/p>\n<p>O undercover mode parece ser o oposto disso. E voc\u00ea n\u00e3o precisa esperar o pr\u00f3ximo vazamento para decidir que n\u00e3o quer trabalhar dessa forma.<\/p>\n<p>Pense nisso.<\/p>\n<hr \/>\n<p>*Fontes: The Verge (31\/03\/2026), Hacker News (47584540, 47586778) \u2014 verificadas em 31\/03\/2026*<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ontem, um pesquisador estagi\u00e1rio da empresa de seguran\u00e7a Fuzzland, chamado Chaofan Shou, encontrou algo surpreendente no registro p\u00fablico do npm, o reposit\u00f3rio onde desenvolvedores publicam pacotes de software. Dentro do pacote oficial do Claude Code (a ferramenta de programa\u00e7\u00e3o da Anthropic, a mesma empresa que faz o Claude), havia um arquivo chamado cli.js.map. Para quem &#8230; <a title=\"O Claude Code vazou o pr\u00f3prio c\u00f3digo \u2014 e o que estava dentro pode ser mais importante que o vazamento\" class=\"read-more\" href=\"https:\/\/iaantifragil.com.br\/?p=116\" aria-label=\"Read more about O Claude Code vazou o pr\u00f3prio c\u00f3digo \u2014 e o que estava dentro pode ser mais importante que o vazamento\">Ler mais<\/a><\/p>\n","protected":false},"author":2,"featured_media":115,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-116","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sem-categoria"],"jetpack_featured_media_url":"https:\/\/iaantifragil.com.br\/wp-content\/uploads\/2026\/04\/vazamento-claude-code.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/posts\/116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=116"}],"version-history":[{"count":2,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/posts\/116\/revisions"}],"predecessor-version":[{"id":123,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/posts\/116\/revisions\/123"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=\/wp\/v2\/media\/115"}],"wp:attachment":[{"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=116"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iaantifragil.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}