inemaSEO 5 — Com Agentes: Claude Code e Codex fazendo o trabalho repetitivo|INEMA.CLUB-PRO

Aula 4 · 17 min

Operações em lote seguras: dry-run, marcador e repositório sujo

Pôr um link de volta em quarenta repositórios, trocar um rodapé em cem páginas, corrigir um canônico em todo o site: é aqui que o agente economiza horas e é aqui que um erro se espalha. Três proteções resolvem quase tudo: mostrar antes de fazer, não duplicar e não mexer no que outra pessoa está mexendo.

Começar a aula
Funcionária organiza maços de folhas em escaninhos de madeira, com uma caixa separada de lado sobre a mesa.

Nesta aula você vai

  1. 1Dry-run por padrão: ver o que faria antes de fazer
  2. 2Marcador: rodar duas vezes não duplica
  3. 3Pular o repositório com trabalho não salvo
  4. 4Conferir no ar por amostra depois do push

Objetivo: rodar uma operação em vários repositórios com dry-run, marcador contra duplicar e pulo de repo sujo, conferindo por amostra.

01O caminho de um lote seguro

Clique em cada bloco.

Clique em cada bloco do diagrama para ver o que ele faz.

Três proteções: dry-run, marcador e pulo de repositório sujo.

02As proteções, uma por uma

Clique em cada passo.

1. Dry-run

O padrão do script é não gravar. Gravar exige pedir: --apply. Assim um erro no mapa aparece na lista, não no site.

Peça a mesma coisa a qualquer agente: primeiro a lista do que ele faria, depois a execução.

03O link de volta em lote

Troque os caminhos e os destinos pelos seus.

mapa.json
[{"repo": "repos/curso-pao", "destino": "https://www.seusite.com/cursos/pao/", "rotulo": "Ficha completa"},
 {"repo": "repos/curso-cafe", "destino": "https://www.seusite.com/cursos/cafe/", "rotulo": "Ficha completa"},
 {"repo": "repos/curso-queijo", "destino": "https://www.seusite.com/cursos/queijo/", "rotulo": "Ficha completa"},
 {"repo": "repos/curso-vinho", "destino": "https://www.seusite.com/cursos/vinho/", "rotulo": "Ficha completa"}]
Dry-run, aplicar e (depois do portão) commitar
python3 tools/link_de_volta.py mapa.json             # dry-run: só mostra
python3 tools/link_de_volta.py mapa.json --apply     # grava, sem commit
python3 tools/link_de_volta.py mapa.json --apply --commit   # grava, commita e faz push
Pedido ao agente
Monte o mapa.json com os repositórios da lista e rode o link_de_volta.py SEM opções (dry-run).
Me mostre a saída inteira e pare.
Não use --apply nem --commit até eu responder "aplica".
Repositório com PULA: não force, não faça stash, não commite por ele. Só me diga qual é.
Exemplo do repositório
$ python3 tools/link_de_volta.py mapa.json
repos/curso-pao: DRY: entraria em index.html
repos/curso-cafe: PULA: alterações não commitadas
repos/curso-queijo: OK: já tinha
repos/curso-vinho: DRY: entraria em landing.html

$ python3 tools/link_de_volta.py mapa.json --apply
repos/curso-pao: APLICADO em index.html
repos/curso-cafe: PULA: alterações não commitadas
repos/curso-queijo: OK: já tinha
repos/curso-vinho: APLICADO em landing.html

Quatro repositórios de teste montados para a aula.

04Veja o lote com interrupção e retomada

Rode, interrompa no meio e rode de novo. O que já foi feito não é refeito.

a fazer/

aplicando/

feito (com marcador)/

pulado/

Simulação ilustrativa no navegador: nada é gravado de verdade. O pulo é proposital, para mostrar o repositório sujo.

05Prática: um lote de verdade, com rede

Use 3 ou mais repositórios seus (ou crie repositórios de teste com um index.html simples).

E1 · O dry-run

25 min

Peça ao agente o mapa.json e o dry-run, com o pedido acima. Deixe de propósito um repositório com uma alteração não commitada.

Pronto quando: a saída mostra pelo menos um DRY e um PULA com o motivo, e o git status dos repositórios não mudou.

E2 · Aplicar e conferir

25 min

Responda "aplica", rode com --apply, confira o diff de cada repositório, commite (ou use --commit) e rode o dry-run de novo.

Pronto quando: a segunda rodada responde "OK: já tinha" nos repositórios aplicados, e você abriu pelo menos 2 páginas publicadas e viu o link no HTML.

06Teste o que aprendeu

A explicação aparece depois da sua resposta.

Pergunta 1 de 4

O que o link_de_volta.py faz quando você roda sem nenhuma opção?competência

07Para levar

Dry-run por padrãoVer a lista antes; gravar só com --apply.
MarcadorRodar duas vezes não duplica; a retomada fica segura.
Sujo é de outroRepositório com alteração não salva é pulado, não forçado.
Push é publicação--commit faz push: passe pelo portão antes e confira por amostra depois.

Para ir além

Aula anteriorPróxima aula