MÓDULO 6.3

🔁 Loops a fundo

No módulo 6.2 você abriu a tarefa agendada por dentro. Agora é a vez do loop — a outra metade do eixo tempo desta trilha: uma sessão viva que fica de olho em algo enquanto você trabalha em outra coisa, mas que tem prazo de validade.

6
Tópicos
28
Minutos
Intermediário
Nível
Prático
Tipo
0 de 60%
1

🕵️ O vigia que faz a ronda

Novo aqui? Um loop (lê-se "lúpi", "laço" em inglês) é uma sessão — uma conversa contínua com o agente, aberta e viva — que fica repetindo um ciclo: verifica algo, decide se precisa agir, age se precisar, espera um pouco, e verifica de novo. Pense num vigia noturno fazendo a ronda: ele passa pela mesma portaria a cada hora, mas lembra da ronda anterior — se viu a luz acesa às 22h e agora está apagada, ele sabe que algo mudou. Ele não é substituído por um vigia novo a cada volta.

Isso é bem diferente da tarefa agendada do módulo 6.2, que é o oposto: lá, cada execução é um funcionário novo que chega, olha a instrução, faz o trabalho e vai embora sem lembrar de nada — porque abre uma sessão nova a cada disparo. O loop mantém a mesma sessão do início ao fim, e é exatamente essa memória viva que o torna útil pra acompanhar algo em andamento.

SESSÃO VIVA 1. Verifica olha o estado atual 2. Decide mudou algo relevante? 3. Age avisa ou executa 4. Espera um intervalo curto expira sozinho em ~3 dias

Legenda: o loop gira em quatro passos — verifica, decide, age, espera — voltando ao início sozinho. A sessão inteira, porém, tem um prazo: passa de ~3 dias sem intervenção, ela expira e o ciclo para.

💡 Conceito Principal

  • Tarefa agendada = funcionário novo a cada execução, sem memória entre uma e outra.
  • Loop = o mesmo vigia, na mesma ronda, lembrando do que viu na volta anterior.
2

📍 Onde um loop roda

A tarefa agendada do módulo 6.2 mora dentro de um app desktop — um programa com janela e ícone, instalado no seu computador, separado do terminal. O loop é mais flexível: ele roda em qualquer lugar onde você consegue abrir uma sessão com o agente e deixá-la aberta.

💻 Terminal

Novo aqui? O terminal é a caixa de texto que dá ordens direto ao computador (vista lá no módulo 0.2). Você abre uma sessão nele e pede pro agente "fique verificando X"; a janela precisa continuar aberta.

🧩 VS Code

Dentro do editor, com a extensão do agente aberta numa aba lateral — útil quando o loop está acompanhando algo ligado ao código que você mesmo está editando ao vivo.

🖥️ App desktop

O mesmo app que hospeda a tarefa agendada também pode manter uma sessão de loop aberta — a diferença não é o programa, é o tipo de tarefa que você deu a ele.

🔍 Por dentro

O que muda entre esses lugares é só a conveniência — abrir e fechar a janela, ver o histórico. O comportamento do loop (verifica, decide, age, espera) é o mesmo em qualquer um deles.

3

⏳ Por que expira em ~3 dias

Aqui está o preço da memória viva: uma sessão de loop expira sozinha depois de cerca de 3 dias, e morre na hora se você fechar a janela onde ela estava rodando. Não é um bug — é a troca que sustenta o formato. Manter uma sessão aberta e com memória tem custo (ela precisa ficar "lembrando" de tudo o que já viu); por isso o formato é pensado pra durar dias, não meses.

Tarefa agendada Loop
Memóriasessão nova a cada execuçãomantém contexto na mesma sessão
Duraçãoindefinida (diária, semanal, mensal)expira em ~3 dias
Se o PC desligourecupera execuções perdidaso loop morre se a sessão fechar
Dia 1 sessão aberta, ciclos rodando Dia 2 ainda acompanhando normalmente Dia 3 prazo se aproximando do fim Expira sessão encerra sozinha

Legenda: os ~3 dias não são um alarme visível — é o teto real da sessão. Se o assunto que você está acompanhando ainda não terminou nessa janela, você precisa reabrir um loop novo (ou considerar se, na real, o caso pede uma tarefa agendada).

💡 Dica Prática

Trate o loop como uma lanterna, não como um posto fixo: ótimo pra iluminar um trecho curto do caminho, ruim como solução permanente. Se você se pegar reabrindo o mesmo loop toda semana, isso é sinal de que a resposta certa era uma tarefa agendada desde o início.

4

🎯 Casos de uso reais

O loop brilha quando o assunto tem começo, meio e fim próximos — dias, não meses — e você quer que alguém fique de olho enquanto faz outra coisa. Três exemplos concretos:

1

Acompanhar um deploy em andamento

Você publicou uma versão nova e quer saber assim que ela terminar de subir (ou se algo falhar) — sem ficar checando o painel a cada dois minutos.

2

Monitorar um preço

Um produto que você quer comprar assim que baixar de um valor — o loop verifica de tempos em tempos e te avisa na hora certa, dentro da janela de alguns dias.

3

Ficar de olho numa fila de tarefas

Um processo em lote (renderizar vídeos, processar imagens) que vai levar algumas horas — o loop verifica o andamento e avisa quando terminar ou travar.

✓ Bom encaixe pro loop

  • Assunto tem prazo curto e visível (horas a poucos dias)
  • Você vai deixar a máquina/sessão ligada durante esse período
  • O que importa é reagir rápido a uma mudança, não repetir pra sempre

✗ Mau encaixe pro loop

  • É uma rotina que se repete todo dia/semana indefinidamente
  • Você precisa que sobreviva a reinicializações do computador
  • Ninguém vai estar por perto pra reabrir a sessão depois de 3 dias
5

⚙️ Monte seu primeiro loop

Chega de teoria — abra uma sessão com o agente (terminal, VS Code ou o app desktop, tanto faz) e cole o prompt abaixo. Ele cria um loop simples: verifica um arquivo de status a cada 30 minutos e te avisa se ele mudou. Ajuste o que estiver entre <isto voce troca>.

Objetivo

Criar um loop que fica de olho num arquivo de status e avisa quando ele mudar — o padrão base de quase todo loop de monitoramento.

Bloco copiável
A cada 30 minutos, verifique se o arquivo <caminho/do/arquivo-status.txt> mudou
desde a última vez que você olhou. Se mudou, me avise com um resumo curto do
que mudou. Se não mudou, não faça nada e espere o próximo ciclo. Continue
repetindo isso até eu te pedir para parar, ou até esta sessão expirar
naturalmente. Objetivo: acompanhar <o que você está monitorando aqui>.

Como verificar: altere o conteúdo do arquivo de status manualmente (ou deixe outro processo alterar) e confira se, no próximo ciclo de 30 minutos, o agente te avisou na mesma sessão — sem você precisar perguntar de novo.

🔍 Por dentro

O intervalo ("a cada 30 minutos") e a condição ("se mudou") são os dois parâmetros que você mais vai ajustar. Intervalos curtos gastam mais tokens (a unidade que mede custo de processamento, vista no módulo 0.1); intervalos longos podem deixar passar o momento certo de agir.

6

🚫 Quando o loop NÃO é a ferramenta certa

O erro mais comum de quem descobre o loop é tentar transformá-lo numa tarefa agendada disfarçada — deixando ele rodando "pra sempre" e torcendo pra sessão não morrer. Isso quebra assim que você fecha a janela ou passa dos ~3 dias, e você perde o acompanhamento sem aviso.

✓ Use loop

  • "Acompanhe até terminar" — prazo curto, sessão fica aberta
  • Você está com a máquina ligada e vai acompanhar de perto

✗ Use tarefa agendada

  • "Todo dia/toda semana, faça X" — não tem fim previsto
  • Precisa sobreviver a reinicializações e à sua ausência

Checklist de decisão final

  • Isso tem um fim previsto em poucos dias? Se sim → loop.
  • Isso precisa continuar rodando mesmo que eu esqueça? Se sim → tarefa agendada (módulo 6.2).
  • Eu vou deixar a sessão aberta o tempo todo? Se não → não é loop, é agendada.

Checagem rápida (opcional): o que faz uma sessão de loop morrer antes do previsto?

Resumo do Módulo

Loop = sessão viva: verifica, decide, age, espera — mantendo memória entre ciclos.
Roda em qualquer lugar: terminal, VS Code, app desktop — o que muda é o comportamento, não o programa.
Prazo real: expira em ~3 dias, morre se a sessão fechar — o preço da memória viva.
Bom pra acompanhar, não pra repetir: deploy, preço, fila — coisas com fim próximo à vista.

Próximo módulo:

6.4 — A rotina que aprende: como uma tarefa agendada guarda memória sem virar um log gigante