Imagine que você tem um colega de trabalho brilhante. Ele resolve problemas complexos, escreve código limpo, entende o que você pede de primeira. Mas toda manhã, quando você diz “abra o projeto do curso”, ele te encara com cara de dúvida e pergunta: “Que curso? Onde está?”
Todos os dias. Sem exceção.
É exatamente como conviver com Leonard Shelby, o protagonista de Memento. O cara que não consegue formar novas memórias e precisa tatuar as informações importantes no corpo para não esquecê-las.
Eu trabalho com o Claude Code em quatro ou cinco projetos diferentes todos os dias. E, por semanas, toda vez que eu dizia “vamos para o projeto do curso” ou “abra o blog”, ele começava a fazer find / -name "p101" como um explorador vitoriano em busca das fontes do Nilo. Passava cinco minutos vasculhando o disco para encontrar um diretório que eu uso diariamente.
Isso me deixava louco.
O problema: amnésia digital anterógrada
Seu agente de IA começa cada sessão com a mente zerada. Ele não sabe onde você mora. Não sabe quais projetos você tem. Não sabe que ~/courses/p101/program existe, que seu blog está em ~/code/frr.dev, ou que o repositório Ansible se chama wuwei e está em ~/code/wuwei/ansible.
Cada nova sessão é como se ele acordasse sem memória, como o Leonard no quarto de motel.
A reação natural é passar o caminho manualmente cada vez. “Está em /Users/fernando/code/tokamak.” E isso funciona, mas é como ter que se apresentar ao seu colega de mesa toda manhã. Depois de três semanas, você começa a se perguntar se não seria mais fácil trabalhar sozinho.
A solução do mundo real: zoxide
Antes de pensar em tatuar algo, vamos falar de uma ferramenta que resolve esse problema para humanos.
zoxide é um cd com memória. Em outras palavras: um substituto do comando cd que registra os diretórios visitados e te leva para o mais provável com base em um padrão parcial.
# Em vez disso:
cd /Users/fernando/courses/p101/program
# Você digita isso:
z p101
Pronto. O zoxide entende que, quando você diz “p101”, está se referindo a /Users/fernando/courses/p101/program, porque é onde você foi as últimas 47 vezes que digitou algo parecido.
Ele funciona com frecency — um algoritmo que combina a frequência e a recência das visitas. Diretórios que você visita com frequência e que acessou recentemente ficam no topo. Os que não acessa há meses caem. É como o algoritmo do TikTok, mas para o seu filesystem.
Instalá-lo é simples
brew install zoxide
# Adicione ao seu shell (Fish no meu caso):
# em ~/.config/fish/config.fish
zoxide init fish | source
A partir daí, cada cd que você fizer alimenta o banco de dados do zoxide. E z <padrão> te leva exatamente onde você quer sem você precisar pensar muito.
z tokamak # → /Users/fernando/code/tokamak
z blog # → /Users/fernando/code/frr.dev
z wuwei # → /Users/fernando/code/wuwei/ansible
z p101 # → /Users/fernando/courses/p101/program
Se algum dia houver ambiguidade (dois diretórios que correspondam), zi abrirá um seletor interativo com o fzf.
zoxide para o seu agente: zoxide query
Agora vem a parte boa. O zoxide tem um comando query que não muda de diretório, apenas retorna o caminho mais provável:
zoxide query p101
# → /Users/fernando/courses/p101/program
Isso é ouro para um agente de IA. Em vez de fazer find pelo disco todo, uma única chamada a zoxide query dá o caminho certo em milissegundos. Sem exploração. Sem suposições.
O problema é que seu agente não sabe que o zoxide existe. É aí que entram as tatuagens.
A tatuagem: CLAUDE.md
Memento tem uma cena icônica onde Leonard se olha no espelho e lê o que está tatuado nele: fatos. Instruções. Coisas que ele não pode se esquecer de jeito nenhum.
Claude Code tem seu equivalente: o arquivo CLAUDE.md. É um arquivo de texto simples que é carregado automaticamente no início de cada sessão. Tudo o que você escreve lá, Claude “se lembra” — embora tecnicamente ele não se lembre de nada, apenas leia todas as vezes ao iniciar.
Essa é a diferença entre memória real e uma tatuagem. O resultado é o mesmo: a informação está disponível quando você precisa dela.
Veja como tatuar os caminhos:
# Em ~/.claude/CLAUDE.md
## Ferramentas
- **`zoxide`** instalado como alias de `cd` no Fish.
Quando não souber o caminho de um projeto, usar
`zoxide query <padrão>` em vez de `find`.
## Caminhos habituais dos projetos
| Projeto | Caminho |
| -------------- | -------------------------------- |
| Minha app | `~/code/minha-app` |
| Curso | `~/courses/meu-curso/program` |
| Blog (Hugo) | consultar com `zoxide query blog`|
| Infra (ansible)| `~/code/infra/ansible` |
Duas coisas acontecem aqui:
- Você dá os caminhos diretamente. Para os projetos mais frequentes, ele nem precisa buscar. Já estão na tabela.
- Você ensina a ferramenta. Para qualquer projeto fora da tabela, ele sabe que pode usar
zoxide query <nome>e obter o caminho instantaneamente.
É um sistema em cascata:
- Consultar a tabela → caminho direto, custo zero.
zoxide query <padrão>→ milissegundos, quase sempre acerta.find→ último recurso, lento, barulhento. Mas nunca deveria ser necessário.
O que mudou
Antes das tatuagens, uma sessão típica começava assim:
Eu: "Abra o projeto do curso e revise os testes"
Claude: *executa find . -name "p101" -type d*
Claude: *espera 8 segundos*
Claude: *faz outro find com maxdepth*
Claude: "Encontrei /Users/fernando/courses/p101/program"
Depois:
Eu: "Abra o projeto do curso e revise os testes"
Claude: *lê a tabela, vai direto para ~/courses/p101/program*
Claude: "Há 3 testes falhando no módulo de autenticação..."
De 15 segundos perdidos e várias tentativas para zero fricção. Multiplicado pelas dezenas de vezes que você troca de projeto por dia, isso é tempo real recuperado.
A segunda tatuagem: memória
Claude Code tem outro mecanismo de persistência: arquivos de memória por projeto. São notas que o agente (ou você) pode salvar e que só são carregadas quando você está trabalhando naquele projeto específico.
Quando o Claude perdeu tempo buscando um diretório com find, eu disse para ele anotar isso. E ele criou o seguinte na sua memória do projeto:
# zoxide-directories
Quando não souber o caminho de um projeto, usar
`zoxide query <padrão>` em vez de `find`.
Perdeu tempo procurando /courses/p101 com find
quando zoxide query p101 teria resolvido na hora.
É como os Post-its que Leonard coloca pelo quarto do motel. Notas para sua versão futura. “Não procure. Pergunte ao zoxide.”
A lição que vai além dos caminhos
O padrão aqui não é “instale zoxide”. Isso é apenas a ferramenta específica. O padrão é:
Se o seu agente repete um erro, não reclame — tatue a correção nele.
Ele usa npm install quando deveria usar pnpm? Coloque no CLAUDE.md. Cria arquivos com encoding Latin-1? Coloque no CLAUDE.md. Não sabe que sua API exige um cabeçalho personalizado? Coloque no CLAUDE.md.
Cada frustração repetida é uma tatuagem que você ainda não escreveu.
E aqui está a principal diferença entre um colega humano e um agente de IA: um humano aprende sozinho (ou deveria). Um agente de IA precisa que você escreva as tatuagens. Mas, uma vez feitas, ele nunca as esquece. Não tem dias ruins. Não se distrai. Não decide que “já sabe” e para de seguir as instruções.
Nesse sentido, Leonard com suas tatuagens é mais confiável do que a maioria de nós com nossa memória volátil.
Como começar
Se você trabalha com o Claude Code (ou qualquer agente que suporte arquivos de instruções), faça um favor a si mesmo:
Instale o zoxide —
brew install zoxide, adicione o init ao seu shell, e usezem vez decdpor uma semana. Depois disso, você não vai querer voltar atrás.Crie seu CLAUDE.md — Comece pelo básico: seu shell, seus caminhos, suas ferramentas favoritas. Não precisa ser muito longo. Cinco linhas úteis valem mais do que uma página cheia de informações irrelevantes.
Sempre que o agente errar duas vezes, pare o que está fazendo e escreva a tatuagem. Não espere pela terceira vez. Já na segunda, não é mais um erro isolado — é um padrão. E padrões devem ser tatuados.
# Sua primeira tatuagem pode ser algo tão simples como:
echo '- Shell: Fish. NÃO é bash/zsh.' >> ~/.claude/CLAUDE.md
Não é glamoroso. Não é uma arquitetura de plugins com dependency injection. É um simples arquivo de texto que explica ao seu agente como funciona seu mundo.
Mas funciona. Todo dia. Sem esquecer. Como uma boa tatuagem.
Este artigo foi publicado originalmente em espanhol e traduzido com a ajuda de IA.