1. O momento: quando você percebe que O MOTOR é você
Pense em como você trabalha hoje com a IA. Você escreve uma instrução. Espera. Lê o que ela fez. Diz "agora corrige isto". Espera de novo. Revisa. "Agora adiciona aquilo". De novo e de novo. Funciona — mas há um problema silencioso: o motor de tudo é você. Sua atenção é o combustível. No segundo em que você levanta pra pegar um café, o projeto congela.
O momento do loop engineering chega quando você pensa: "e se eu não precisasse ficar aqui dando corda a cada passo? E se eu desse uma meta e ela se virasse sozinha até cumprir?". É exatamente isso. Foi muito bem colocado num artigo da Firecrawl sobre o tema: com loop engineering, a IA deixa de ser um colaborador do outro lado do chat; passa a ser uma função que um programa chama em um ciclo.
2. A dor: o trabalho manual não escala (e te esgota)
A dor de não dar esse salto é real e honesta — não é um apocalipse, é desgaste. Estes são os sintomas:
- Tarefas longas (auditar o projeto inteiro, pesquisar 8 concorrentes, migrar 40 arquivos) levam horas porque você as faz em fila, uma por uma.
- Se você sai do computador, o progresso para na hora. A IA não continua sem você.
- Você repete o mesmo tipo de instrução todo dia e sente que é um operador de máquina, não um diretor.
- Você não consegue fazer duas coisas grandes ao mesmo tempo porque só tem um par de mãos e um chat aberto.
3. O coração: o ciclo Age → Observa → Raciocina → Repete
Todo ciclo, por mais simples ou complexo que seja, gira sobre os mesmos quatro passos. Memorize-os, porque são a essência de tudo:
- Age — a IA faz algo (escreve código, busca na web, corrige um teste).
- Observa — lê o resultado do que fez (o teste passou? o que a busca retornou?).
- Raciocina — compara esse resultado com a meta (já está? falta algo? tem um erro?).
- Repete — decide sozinha se recomeça ou se terminou.
A diferença em relação a conversar normalmente é o quarto passo: a IA decide se continua, você não. O ciclo roda sozinho até cumprir a meta ou até tocar um limite que você definiu (já já vemos esses limites, eles são sagrados).
4. Os 3 freios sagrados (sem eles não é um loop, é uma fatura aberta)
Esta é a parte que NINGUÉM te conta e a mais importante. Um ciclo que roda sozinho pode gastar créditos sozinho. A maior parte da arte do loop engineering não é fazer a IA iterar — é evitar que ela itere pra sempre e esvazie sua conta. Há três freios que SEMPRE devem existir:
- Teto de iterações — um número máximo de voltas. "Tente 10 vezes no máximo, depois pare."
- Checagem de mudanças (diff-check) — se depois de N voltas a IA já não muda nada, pare. Está girando em vão.
- Teto de gasto — um limite de tokens ou de dinheiro. Quando é atingido, o ciclo termina, tenha cumprido ou não.
5. O hábito: pensar em ciclos, não em mensagens soltas
Loop engineering não é algo que você faz uma vez. É uma mudança de mentalidade constante. Toda vez que for fazer uma tarefa com IA, antes de escrever o primeiro prompt, pergunte-se: "isto é uma mensagem solta, ou é um ciclo?". A maioria das tarefas grandes são ciclos disfarçados de muitas mensagens.
- Quando uma tarefa tem um critério claro de "terminado" (todos os testes passam, 10 bugs encontrados, o documento cobre todos os pontos).
- Quando você está repetindo o mesmo ciclo na mão (roda → falha → corrige → roda de novo).
- Quando a tarefa é grande demais para uma só passada (auditar tudo, migrar tudo, pesquisar muitas fontes).
- Quando você quer que algo aconteça enquanto você não está (revisar um deploy, vigiar um site, uma checagem diária).
6. Como montar seu primeiro loop (com comandos que existem de verdade)
Aqui está o bonito: você não precisa programar nada estranho. Se você usa um agente de código moderno como o Claude Code, ele já traz as peças montadas. Estes comandos são reais e estão na documentação oficial dele:
/goal <condição>— o coração do loop rumo a uma meta. Você fixa uma condição e, após cada turno, um modelo rápido verifica se ela já foi cumprida; se não, o Claude arranca outra volta sozinho, em vez de devolver o controle a você. É o "trabalha até ficar verde". Precisa de uma condição verificável (ex. "todos os testes passam", "git status limpo")./loop [intervalo] [prompt]— repetir no tempo, NÃO iterar rumo a uma meta. Executa um prompt a cada certo intervalo (/loop 5m revisa o deploy) ou, sem intervalo, o Claude escolhe o ritmo sozinho. Útil pra vigiar algo, não pra "alcançar X". Não confunda com/goal./schedule— cria rotinas na nuvem: tarefas programadas (a cada hora, todo dia) que rodam mesmo com o notebook fechado, ou que reagem a eventos do GitHub./batch— divide um trabalho grande em 5 a 30 unidades em paralelo, cada uma no seu próprio subagente e no seu próprio worktree isolado; cada uma faz sua parte, roda os testes e abre seu próprio pull request. (É a versão industrial do loop para migrações e mudanças em massa.)
/goal. Pra "vigia o deploy a cada 5 min" você quer /loop. Confundir os dois é o erro de iniciante número um.E as peças de apoio que tornam um loop confiável também existem: worktrees (claude --worktree) pra que vários agentes trabalhem sem se atropelar, skills (pastas com um SKILL.md) pra que a IA não redescubra seu contexto toda vez, hooks pra engatar ações em momentos-chave, e conectores MCP pra que o ciclo alcance ferramentas externas (Slack, GitHub, seu banco de dados).
7. Como se usa de verdade: projetar primeiro, depois invocar o comando
Aqui está o detalhe que quase todos os tutoriais pulam, e é CHAVE: o ciclo não arranca sozinho só porque você descreve a tarefa. Colar um texto longo dizendo "monta um loop que conserte meus testes" faz a IA te projetar o plano — mas NÃO o executa. Pra que a IA comece a iterar de verdade, você tem que escrever o comando explicitamente (no Claude Code, /goal ou /loop). São dois passos: primeiro você projeta, depois invoca.
/goal … ou /loop …). Isso é bom: te obriga a aprovar o projeto e os freios ANTES de soltar a máquina. Projeto e execução estão separados de propósito.Passo 1 — Projete o ciclo. Cole isto no seu agente, preenchendo os [colchetes]. Ele vai te devolver o plano, os freios e —importante— o comando exato que você deve digitar depois:
Quero montar um loop autônomo (loop engineering) para esta tarefa: [DESCREVA A TAREFA, ex: "encontrar e consertar todos os testes que falham" ou "pesquisar a fundo meus 5 concorrentes e sintetizar um relatório"]. Minha ferramenta é: [Claude Code / Cursor / outra]. Antes de projetar, olhe meu projeto e me diga qual é o comando ou o sinal exato que serve de "verdade" para esta tarefa (ex. o comando de testes real, ou como se mede "terminado"). Se não encontrar, me pergunte. Projete-o comigo seguindo o ciclo Age → Observa → Raciocina → Repete. Preciso que você me proponha, em linguagem clara: 1. A META: a condição exata e VERIFICÁVEL de "terminado" (como saberemos que o loop deve parar porque já cumpriu de verdade). 2. SE CONVÉM loop ABERTO (liberdade) ou FECHADO (passos traçados) para esta tarefa, e por quê. 3. O CICLO: o que a IA faz em cada volta (age), como verifica o resultado (observa), e como decide se continua (raciocina). 4. A SEPARAÇÃO: um agente que FAZ e outro diferente que VERIFICA o resultado (incluindo a regra anti-trapaça de baixo). 5. OS 4 FREIOS, obrigatórios: - Teto de iterações (número máximo de voltas). - Checagem de estagnação (parar se já não avança após N voltas). - Teto de gasto (limite de tokens ou de tempo). - REGRA ANTI-TRAPAÇA: proibido apagar, pular (skip) ou enfraquecer o que se verifica para fingir sucesso. Tem que consertar a CAUSA RAIZ (o código real), não colocar um remendo que silencie o sintoma. Se uma volta deixa MAIS quebrado do que conserta, reverter essa volta. 6. O COMANDO EXATO QUE EU DEVO DIGITAR para executá-lo (não execute você sozinho). No Claude Code: se a tarefa é "itera até cumprir uma condição" use `/goal <condição>`; se é "repete a cada certo tempo" use `/loop <intervalo> <prompt>`. Me dê a linha já escrita, pronta para copiar, com a condição de parada e os freios incluídos. Verifique que o comando exista de verdade; não invente. 7. O QUE EU POSSO SUPERVISIONAR enquanto roda, em uma linha por volta legível mesmo que eu não programe, para não cair em dívida de compreensão. Primeiro me mostre SÓ o projeto completo, os 4 freios e o comando exato a digitar. NÃO execute o ciclo: eu vou dispará-lo digitando o comando quando aprovar o projeto.
Passo 2 — Dispare o ciclo com o comando. Quando o projeto e os freios te convencerem, AGORA sim você digita o comando que a IA te deu. Pra "trabalha até cumprir uma condição" (o mais comum), no Claude Code é o /goal. Por exemplo, pra consertar testes seria algo assim:
/goal todos os testes passam (roda a suíte completa), sem apagar nem pular nenhum teste, máximo 15 voltas
A partir daí, a IA roda, observa o resultado, raciocina e tenta de novo sozinha depois de cada turno, até que um modelo rápido confirme que a condição foi cumprida (ou até tocar um freio). Se o que você quer é repetir algo a cada certo tempo (vigiar um deploy, por exemplo) em vez de iterar rumo a uma meta, aí o comando é o /loop:
/loop 5m revisa se o deploy terminou e me avisa o que aconteceu
8. Os caminhos mais fáceis · o que a IA faz e o que você decide
Pra não complicar, isto é o que seu agente de código pode fazer sozinho pelo chat, e o que continua sendo decisão sua:
- Projetar o loop completo: a meta, o ciclo, os freios — e te dar o comando exato a digitar.
- Uma vez que VOCÊ dispara o comando (
/goalou/loop), rodar as voltas sozinho: age, observa, raciocina e tenta de novo até cumprir a condição ou tocar um freio. - Lançar agentes em paralelo com
/batchpara tarefas grandes (auditar, pesquisar, migrar). - Verificar o próprio trabalho em um turno separado (o padrão do verificador).
- Criar a skill (
SKILL.md) que codifica o contexto pra que o loop seja repetível.
- A META e quando se considera "terminado" — isto define a qualidade do resultado.
- Digitar o comando que dispara o ciclo (
/goal …ou/loop …): ele não arranca sozinho, você o liga depois de ver o plano. - Os 4 freios: quantas voltas, quando parar por estagnação, quanto gastar, e a regra anti-trapaça.
- Revisar as mudanças que ele produziu (pra não acumular dívida de compreensão).
- O critério de qualidade / a rubrica — porque um loop multiplica o bom critério que você coloca, e também o ruim.
Resumo · seu checklist de loop engineering
- Tenho uma meta com uma condição de "terminado" clara.
- Projetei o ciclo Age → Observa → Raciocina → Repete.
- Decidi se é loop aberto ou fechado (em produção, quase sempre fechado).
- Tenho os 3 freios: teto de iterações + checagem de mudanças + teto de gasto.
- Defini quem faz e quem verifica (turnos separados).
- Vou revisar as mudanças pra não acumular dívida de compreensão.
- Coloquei meu melhor critério na rubrica — porque o loop vai multiplicá-lo.