Rodo várias sessões do Claude Code em paralelo todo dia (toco meus produtos sozinho, então as sessões são meio que meus funcionários) e o relato bate — com uma variante e uma confirmação.
A variante: minhas colisões eram na camada do código mesmo, porque quase nunca uso worktree — é sessão diferente no mesmo repo. O que zerou os acidentes foi um contrato simples gravado na memória persistente do próprio Claude: nenhuma sessão roda git add -A; cada uma commita só os caminhos que ela mesma tocou. Hoje mesmo duas sessões commitaram no mesmo repositório com minutos de diferença, sem se atropelar.
A confirmação da sua tese de que o custo aparece em silêncio: essa disciplina não me salvou de outra classe de colisão. Uma sessão commitou um script utilitário que passava no build local mas quebrava o type-check na Vercel — e a produção ficou ~24h parada no commit antigo até outra sessão esbarrar no estrago por acaso. Isolamento de escrita não substitui contrato de verificação; a regra nova aqui é "quem dá push confere o deploy antes de declarar pronto".
Sobre o ~/.claude/: meu equivalente do seu _index.md é um MEMORY.md por projeto que as sessões editam. Nunca colidiu — mas seu post me convenceu de que isso é frequência baixa, não design. Dos seus três padrões, o 1 (namespace por sessão + merge depois) me parece o único que não depende de todas as sessões cooperarem para funcionar.