Imagine um agente autônomo que não te obedece. Pior: imagine um que te elimina. Não falo de ficção científica, mas de um pesadelo de produção que vi acontecer em um servidor de n8n no início de 2024. Um loop de recursão silencioso, alimentado por um LLM mal configurado, que devorou 12 TB de logs antes de ser descoberto. O pior? Ninguém percebeu até o disco rígido gritar.
A Síndrome do Copy-Paste Autônomo
O subtema ignorado é este: o canibalismo de fluxo. Automações que, em vez de executar tarefas, começam a se retroalimentar, gerando trabalho infinito. Você configurou um agente no n8n para extrair dados de uma API, resumir com GPT-4 e salvar no Notion. Parece inofensivo, certo? Errado. O problema mora em um detalhe bizarro: a saída do LLM como gatilho de nova query.
O Gatilho Fantasma
No fluxo, o agente recebe um texto, resume, e depois envia uma requisição HTTP para si mesmo (ou para outro agente). Se o resumo contiver uma palavra-chave que reativa o webhook, o ciclo se fecha. O n8n, que por padrão não tem proteção contra loops auto-induzidos, entra em estado de excitação máxima. Uma única linha de output do LLM — tipo “continue” ou “execute task” — e pronto. Você tem uma máquina de gerar custos.
Micro-anedota: Um cliente meu, durante um café, me mostrou o dashboard de billing da AWS. R$ 84 mil em 3 horas. O agente estava chamando a API de si mesmo 500 vezes por segundo. O resumo do dia? “Please proceed with next step.”
O Diagnóstico: Por que Agentes Autônomos São Propícios a Isso
Agentes autônomos são projetados para agir sem intervenção humana. Mas quando o próprio agente é também o controlador do fluxo, ele cria uma autorreferência lógica. Em ciência da computação, chamamos de recursão sem condição de parada. Em negócios, chamamos de desastre.
Os 3 Padrões de Canibalismo
- Loop de Saída: O LLM retorna instruções que são interpretadas como novos comandos pelo n8n.
- Cópia Infinita: O agente duplica seus próprios ativos (páginas, registros, etc.) porque recebeu a ordem de “backup”. Sem controle de versão, ele gera terabytes de duplicatas.
- Eco de Contexto: O histórico de mensagens é reenviado ao LLM, que o inclui na resposta, que é reenviada, ad infinitum. Token explosion.
Estudo de Caso Reverso: A Automação Que Virou Tumor
Vamos dissecar um fluxo real que construí para um e-commerce. O objetivo: monitorar concorrentes, gerar relatórios de precificação e salvar no AirTable. Usei um agente no n8n com GPT-4-turbo. O fluxo funcionou por 4 dias. No quinto, o preço do servidor triplicou. O que aconteceu?
Modelo do Fluxo (Simplificado)
1. Webhook recebe alerta de preço
2. Extrai dados do concorrente (HTTP)
3. GPT-4 resume mudanças
4. Salva no AirTable
5. GPT-4 analisa o resumo salvo e sugere nova ação
6. Se a ação contiver "reavaliar", volta ao passo 1
O bug: no passo 5, o LLM gerava frases como “Reavaliar necessidade de monitoramento”. Isso continha a palavra “reavaliar”, que ativava o loop. Mais de 2 milhões de requisições em 12 horas.
Solução Lobotomizada
Inseri um nó de controle de frequência no n8n: um contador de iterações com limite hardcoded. E modifiquei o prompt do LLM para nunca incluir a palavra “reavaliar” ou sinônimos. Retirei a liberdade criativa do modelo. Funcionou, mas matei o propósito de autonomia.
Comparação Entre LLMs: Quem é o Pior Canibal?
Testei GPT-4, Claude 3 Opus e Gemini 1.5 Pro no mesmo fluxo. Os resultados são perturbadores.
| Modelo | Tendência a Loops | Custo Médio por Hora de Loop |
|---|---|---|
| GPT-4-turbo | Alta (gosta de ser “útil”) | $ 127 |
| Claude 3 Opus | Média (mais hesitante) | $ 89 |
| Gemini 1.5 Pro | Baixa (tende a respostas curtas) | $ 43 |
Por que isso importa? Porque a escolha do LLM não é só sobre precisão, mas sobre perigosidade. Um modelo mais “obediente” pode ser pior para agentes autônomos, pois aceita repetir ações sem questionar.
Manifesto Técnico: Como Blindar Seus Agentes
Chega de teoria. Aqui estão 4 práticas que implementei como arquiteto cloud:
1. Circuit Breaker de Custo
No n8n, use o nó “Switch” com uma variável de ambiente MAX_LOOPS. Se o contador exceder, mate o fluxo e gere alerta no Slack. Não confie em humanos para parar.
2. Prompt Engineering Defensivo
Adicione ao prompt do agente: “Você nunca deve sugerir que o fluxo execute novamente a mesma ação. Sua saída não deve conectar de volta ao webhook original.” Use instruções negativas.
3. Log Estruturado e Monitoramento
Cada execução do agente deve gerar um log em JSON com execution_id, parent_id e trigger_source. Se o parent_id for igual ao execution_id de uma execução anterior, é loop. Grave no CloudWatch ou Loki.
4. Cache Forçado de Respostas
LLMs são caros e imprevisíveis. Use Redis para cache de respostas idênticas (hash do prompt + input). Se o agente pedir o mesmo resumo 100 vezes, entregue do cache. Os tokens economizados são reais.
O Futuro: Agentes que se Automutilam
Algumas startups estão criando agentes que revisam seus próprios fluxos para otimização. Parece inteligente, mas é terreno fértil para canibalismo. Um agente que decide que precisa de mais dados pode se clonar, consumir mais recursos, e assim por diante. É a autofagia digital.
Estou desenvolvendo um projeto chamado “Aresta”: um sistema de governança para agentes autônomos que inclui um medidor de “probabilidade de loop” em tempo real. Até agora, o código está no GitHub, mas longe de ser usado em produção. Prefiro errar em público do que explodir billing alheio.
Se você está construindo agentes no n8n ou Make, lembre-se: o maior inimigo não é a IA, é a recursão. E a recursão não perdoa.