Agentes em Segundo Plano e em Paralelo
Depois que você confia em um agente numa tarefa delimitada, o próximo passo é óbvio: rodar vários ao mesmo tempo. Ferramentas modernas permitem disparar agentes em segundo plano — cada um na sua própria ou worktree (uma cópia de trabalho separada do projeto, para que as edições de um agente nunca colidam com as de outro) — de modo que três ou quatro tarefas delimitadas avancem enquanto você faz outra coisa.
Isso é um ganho real de velocidade, mas só para trabalho independente. O custo com o qual você está trocando é coordenação. Dois agentes editando o mesmo arquivo vão produzir diffs conflitantes, e resolver esse conflito na mão pode custar mais do que você economizou.
- Divida por fronteira, não por número de linhas. Dê a cada agente um pedaço que não se sobrepõe aos outros — módulos separados, funcionalidades separadas, arquivos separados. "O Agente A faz a funcionalidade de exportação, o Agente B escreve a documentação" é limpo. "Os dois agentes editam
app.js" é uma dor de cabeça de merge esperando para acontecer. - Isole os ambientes de trabalho. Rode cada agente em sua própria branch ou worktree , para que não pisem nas mudanças não commitadas um do outro. Faça o merge de volta um de cada vez, rodando suas checagens a cada merge.
- Mantenha a contagem honesta. Você ainda tem que revisar cada resultado. Quatro agentes rodando são quatro diffs para ler e quatro conjuntos de testes para confiar. Passando de um punhado, a fila de revisão — não os agentes — vira o seu gargalo.
Cada agente trabalha em sua própria worktree isolada, de modo que suas edições nunca colidem; você faz o merge de volta um de cada vez, rodando checagens a cada portão:
┌─────────────────────────────┐
│ YOU split by boundary │
└──────────────┬──────────────┘
┌────────────────┼────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ AGENT A │ │ AGENT B │ │ AGENT C │
│ worktree-a/ │ │ worktree-b/ │ │ worktree-c/ │
│ export feat │ │ docs │ │ settings page│
└──────┬───────┘ └──────┬───────┘ └──────┬───────┘
│ branch-a │ branch-b │ branch-c
└────────────────┼────────────────┘
▼
┌──────────────────┐
│ MERGE one-by-one │ run checks at each merge
│ → main │
└──────────────────┘
isolated copies = no collisions · review queue is the real limit
O erro é tratar o paralelismo como grátis. Não é — você transferiu o trabalho de escrever para revisar e integrar. Muitas vezes é uma ótima troca, mas só se você de fato fizer a revisão.