Trabalhe em múltiplas features simultaneamente sem conflito, com workspaces isolados criados automaticamente.
Worktrees permitem ter múltiplos checkouts do mesmo repositório em diretórios separados, cada um com seu próprio branch, estado de working directory e staging area. Enquanto um agente trabalha na feature A, outro pode trabalhar na feature B — no mesmo repositório, sem interferência.
Worktrees são um recurso nativo do git — não uma ferramenta externa. O Superpowers apenas automatiza sua criação e configuração via a skill using-git-worktrees.
A skill using-git-worktrees instrui o agente a criar worktrees com os parâmetros corretos, seguindo a convenção de nomenclatura do projeto. Você apenas especifica o nome da feature e o agente cria o diretório, o branch e configura tudo automaticamente.
# Para a feature "auth-oauth"
git worktree add ../projeto-auth-oauth -b feature/auth-oauth
# Resultado:
# ../projeto-auth-oauth/ ← novo diretório
# branch: feature/auth-oauth ← branch nova
# mesmo repositório remoto
Convenção de nomenclatura
Por padrão: diretório irmão com sufixo da feature (../projeto-nome-feature). A skill detecta o nome do projeto atual e mantém consistência.
Após implementar uma feature na worktree, é hora de decidir o destino da branch. A skill finishing-a-development-branch guia esse processo com critérios claros para cada decisão — e inclui a limpeza da worktree ao final.
Quando: feature pequena, testada, sem necessidade de review externo. Faça rebase para manter histórico limpo, então merge.
Quando: feature maior, precisa de review de equipe, ou é uma contribuição para repositório compartilhado. Push e abertura de PR com descrição completa.
Quando: a abordagem não funcionou ou a feature foi cancelada. Remove a worktree e a branch sem merge.
git worktree remove ../projeto-auth-oauth
git branch -d feature/auth-oauth
Com múltiplas worktrees abertas, você pode ter um agente em cada uma — trabalhando em features diferentes do mesmo repositório ao mesmo tempo. Este é o modo de máxima velocidade do Superpowers: throughput multiplicado pelo número de agentes.
# Agente 1 — feature de autenticação
~/projetos/meuapp-auth-oauth/
# Agente 2 — dashboard de métricas
~/projetos/meuapp-dashboard-metrics/
# Agente 3 — correção de bug crítico
~/projetos/meuapp-fix-login-timeout/
Limite prático
3-5 worktrees simultâneas é o sweet spot para a maioria dos projetos. Acima disso, o overhead de coordenação (monitorar múltiplos agentes) tende a superar o ganho de velocidade.
Quando múltiplas features tocam nos mesmos arquivos, conflitos de merge são inevitáveis. A chave é distinguir conflitos sintáticos (que o git detecta) de conflitos semânticos (que o git não detecta mas que quebram o comportamento).
Git detecta e marca com <<<. Resolva manualmente escolhendo a versão correta ou combinando as duas. Verifique os testes após resolver.
Git não detecta. Feature A muda comportamento de função X; Feature B usa função X com a suposição antiga. Testes de integração capturam isso.
Protocolo pós-merge
Após qualquer merge com conflito: execute o suite de testes completo, não apenas os testes da feature. Conflitos semânticos aparecem em testes de integração, não nos testes unitários da feature.
Exercício completo do fluxo de worktree: criar a worktree, implementar uma feature simples, resolver um conflito simulado e finalizar com merge ou PR.
git worktree add ../meuapp-pratica -b feature/praticaCritério de conclusão
Feature mergeada com sucesso, conflito resolvido corretamente, testes completos passando, worktree limpa. Você domina o fluxo de worktree do início ao fim.