/worktree do ChatCLI integra com o sistema de git worktrees para permitir trabalho isolado em multiplas branches simultaneamente. Em vez de fazer git stash e git checkout, você cria worktrees separados e alterna entre eles com um único comando.
Git worktrees permitem ter multiplas copias de trabalho do mesmo repositorio, cada uma em uma branch diferente, compartilhando o mesmo
.git. O ChatCLI automatiza a criacao, listagem e remocao dessas worktrees.Conceito
Um worktree e um diretorio separado vinculado ao mesmo repositorio Git, mas em uma branch diferente. Isso permite:.git, commits e historico. Você pode trabalhar em cada branch sem interferir nas outras.
Comandos
| Comando | Descrição |
|---|---|
/worktree create <branch> | Cria uma nova worktree para a branch especificada |
/worktree list | Lista todas as worktrees ativas do repositorio |
/worktree remove <branch> | Remove uma worktree existente |
/worktree status | Mostra o status da worktree atual (branch, modified files) |
Criando uma Worktree
Deteccao automática de branch
Se a branch já existe no repositorio (local ou remoto), o ChatCLI a usa diretamente. Se não existe, cria uma nova branch a partir do HEAD atual.
Criacao do diretorio
O diretorio da worktree e criado ao lado da raiz do repositorio, com o nome baseado na branch (barras substituidas por hifens).
Listando Worktrees
Removendo uma Worktree
Status da Worktree
Workflow Tipico
- Feature paralela
- Hotfix urgente
- Review de PR
Trabalhe em uma feature sem afetar a branch principal:
Detalhes Tecnicos
Localizacao dos Diretorios
Worktrees são criados ao lado da raiz do repositorio:<nome-do-repo>-<branch>, onde barras (/) na branch são substituidas por hifens (-).
Mudanca Automática de CWD
Ao criar ou selecionar uma worktree, o ChatCLI muda automaticamente o CWD. Isso garante que:- Comandos do agent/coder operam nos arquivos corretos
- Busca de arquivos (
search,tree) refletem a branch correta - Bootstrap files (SOUL.md, RULES.md) são detectados corretamente
Compatibilidade
| Requisito | Detalhes |
|---|---|
| Git | >= 2.15.0 (suporte a worktrees) |
| Repositorio | Deve ser um repositorio Git (não bare) |
| Permissoes | Escrita no diretorio pai do repositorio |
Próximos Passos
Sessoes
Combine worktrees com sessoes para contexto persistente por branch.
Modo Coder
Use o modo coder com worktrees para engenharia isolada por branch.