Pular para o conteúdo principal

M13 — Paralelismo e Orquestração

Bloco 7 — Orquestração · Eixo A · Nível NÍVEL 1 / NÍVEL 2 · LAB lab

Abertura

Com o MCP conectando Claude Code a sistemas externos (M12), esta lição vai mais fundo no Subagent que você conheceu em M11: como múltiplas instâncias de Claude Code trabalham ao mesmo tempo, em paralelo, para acelerar tarefas maiores.

Conceito central

Você já sabe que um Subagent (M11) é uma instância separada, disparada para cuidar de uma parte específica de uma tarefa maior. O que ainda não foi explorado é o que acontece quando vários subagentes trabalham ao mesmo tempo, em vez de um de cada vez — isso é o paralelismo: várias linhas de trabalho acontecendo simultaneamente, cada uma progredindo de forma independente, em vez de uma esperar a outra terminar.

Para que múltiplas instâncias trabalhem ao mesmo tempo sem interferir umas nas outras — especialmente quando mexem no mesmo código — existe a worktree: uma cópia de trabalho isolada do repositório, onde uma instância pode fazer alterações sem afetar o que outra instância está fazendo em paralelo, até o momento de reunir os resultados.

Uma forma concreta de visualizar isso, sem pensar em código: imagine uma pesquisa grande dividida entre vários assistentes. Cada assistente (um subagent) recebe sua própria fotocópia dos documentos — não o original, uma cópia de trabalho (a worktree) — para poder grifar, anotar e reorganizar do seu jeito, sem estragar o original nem esbarrar no colega que está mexendo na própria cópia ao mesmo tempo. Só quando cada assistente termina sua parte é que as anotações voltam a ser reunidas numa versão final única — exatamente o que acontece quando as worktrees são integradas de volta ao final.

Para acompanhar o que várias instâncias estão fazendo simultaneamente, existe o agent view — seguindo a mesma imagem, o quadro do coordenador mostrando o progresso de cada assistente ao mesmo tempo, permitindo que você monitore várias tarefas sem perder o controle de nenhuma delas. Quando esse conjunto de instâncias trabalhando juntas é organizado com um propósito coordenado — várias abordando partes diferentes do mesmo objetivo maior — chama-se agent team.

O ganho do paralelismo é velocidade: tarefas independentes entre si (investigar um bug em um módulo enquanto escreve testes em outro) não precisam esperar uma pela outra. O custo é a necessidade de isolamento — daí a worktree — e de coordenação — daí o agent team — para que o trabalho paralelo não vire conflito na hora de juntar tudo de volta.

Na prática

Um cenário de paralelismo com worktrees:

> Investigue o bug de timeout e, ao mesmo tempo, escreva os
testes que faltam no módulo de autenticação

Criando worktree A (bug-timeout)...
Criando worktree B (testes-autenticacao)...

[Worktree A] Investigando causa do timeout...
[Worktree B] Escrevendo testes para função de login...
[Worktree A] Causa identificada: conexão não fechada
[Worktree B] 4 testes escritos, 4 passando

Ambas as tarefas concluídas em paralelo. Pronto para revisar
e integrar as duas mudanças.

As duas linhas de trabalho progrediram ao mesmo tempo, cada uma isolada na própria worktree, sem que uma interferisse na outra — só se encontrando no momento final de revisão.

Diagrama

Sem paralelismo, uma worktree espera a outra terminar; com paralelismo, as duas avançam ao mesmo tempo e só se encontram na integração final:

Sem paralelismo vs. com paralelismo: worktrees simultâneas
Etapa 1 de 9

Lab opcional 🔵

Opcional — para assinantes

Dispare duas tarefas independentes em worktrees separadas dentro de um projeto seu, e acompanhe o progresso das duas pelo agent view, observando como elas avançam sem bloquear uma à outra.

Checkpoint