{
  "id": "ai-invents-fake-npm-packages",
  "type": "failures",
  "category": "failures",
  "locale": "pt",
  "url": "/pt/failures/ai-invents-fake-npm-packages",
  "title": "Como Corrigir Agentes de IA que Inventam Pacotes npm Falsos",
  "description": "Por que agentes de IA alucinam pacotes npm que não existem, como identificar e como impedir.",
  "tools": [
    "Cursor",
    "Claude Code",
    "Codex"
  ],
  "stack": [
    "TypeScript"
  ],
  "tags": [
    "dependencies",
    "hallucination",
    "security"
  ],
  "difficulty": null,
  "updated": "2026-06-08",
  "markdown": "Uma falha comum e perigosa: o agente importa um pacote que não existe —\nou pior, um que um squatter registrou para combinar com o nome alucinado.\n\n## O sintoma\n\nO agente escreve um import para um pacote de nome plausível e o adiciona ao\n`package.json`, mas a instalação falha ou puxa um pacote desconhecido.\n\n```txt\nimport { magicValidate } from \"zod-magic-helpers\"; // does not exist\n```\n\n## Por que acontece\n\nOs modelos fazem correspondência de padrões em convenções de nomenclatura (\"provavelmente existe um pacote `-helpers`\")\ne geram nomes que *soam* reais. Esta é a base dos ataques de \"slopsquatting\" na cadeia de suprimentos.\n\n## Como identificar\n\n- Uma dependência que você não reconhece aparece no diff.\n- O pacote tem downloads quase zero ou foi publicado muito recentemente.\n- Instalação resolve um nome que difere por um caractere de um pacote popular.\n\n## Como corrigir\n\n```txt\n[ ] Verify every new dependency exists and is the one you intend\n[ ] Check weekly downloads + repo link before installing\n[ ] Prefer packages already in the lockfile\n[ ] Pin versions; review the lockfile diff\n```\n\n## Prompt de correção\n\n```txt title=\"Fix Prompt\"\nYou added a dependency I can't verify. List every new package, its npm URL,\nand weekly download count. Replace any unverified package with a standard,\nwidely-used alternative or inline the logic instead.\n```\n\n## Teste\n\n```bash\nbun pm view <package> 2>/dev/null || echo \"DOES NOT EXIST\"\n```"
}