Traduzir para pt: Gancho de Ferramenta de Postagem Personalizada para Carregamento Sob Demanda de CLAUDE.md Fora da Árvore do Projeto

Comportamento de Carregamento de CLAUDE.md no Claude Code
A fonte detalha como o Claude Code lida com arquivos CLAUDE.md em diferentes condições:
- Carregamento hierárquico: Ao iniciar uma sessão em um subdiretório, tanto o CLAUDE.md local quanto os arquivos CLAUDE.md do diretório pai são carregados. Exemplo: Sessão em
root/a/carrega tantoroot/a/CLAUDE.mdquantoroot/CLAUDE.md. - Carregamento sob demanda de diretórios filhos: Diretórios filhos do diretório raiz da sessão atual carregam seus arquivos CLAUDE.md quando o Claude acessa arquivos nesses diretórios. Exemplo: Sessão em
root/carregaroot/CLAUDE.mdinicialmente, depois carregaroot/a/CLAUDE.mdquando o Claude lê um arquivo emroot/a/. - Acesso a diretórios adicionais via flags: Usar
--add-dircomCLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1permite acesso a arquivos CLAUDE.md em diretórios fora da árvore do projeto, mas esses carregam no início da sessão em vez de sob demanda.
O Problema: Arquivos CLAUDE.md de Diretórios Externos Não Carregando Sob Demanda
O autor observa que, ao trabalhar em um projeto e instruir o Claude a ler arquivos de diretórios fora da árvore de diretórios da sessão, quaisquer arquivos CLAUDE.md nesses diretórios externos não serão carregados automaticamente. Isso cria problemas para a divulgação progressiva do contexto e requer intervenção manual a cada vez.
Solução: Hook PostToolUse Personalizado
A solução envolve criar um hook PostToolUse que:
- Verifica se o Claude está operando fora da árvore do projeto em cada chamada de ferramenta
- Percorre para cima a partir desse diretório procurando por arquivos CLAUDE.md
- Se encontrado, sai com código 2 para alimentar instruções de volta ao Claude dizendo para lê-los
- Rastreia quais arquivos já foram apresentados em um arquivo temporário de escopo de sessão para evitar instruções repetidas
Um hook SessionStop limpa o arquivo temporário usado para rastreamento. O autor fornece um script chamado check_claude_md.py (fonte vinculada na postagem original) que implementa essa funcionalidade de hook PostToolUse.
Implementação Prática
A abordagem aborda a limitação específica em que os arquivos CLAUDE.md de diretórios externos só carregam no início da sessão ao usar a flag --add-dir com CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1. Ao interceptar chamadas de ferramentas e verificar operações fora da árvore do projeto, o hook permite carregamento sob demanda semelhante a como diretórios filhos funcionam dentro da árvore do projeto.
Esse tipo de hook personalizado é útil para desenvolvedores que frequentemente trabalham em vários projetos ou precisam referenciar arquivos de contexto compartilhados de diretórios externos sem instruir manualmente o Claude a ler arquivos CLAUDE.md a cada vez.
📖 Leia a fonte completa: r/ClaudeAI
👀 See Also

Correção de Desperdício de Tokens no Claude Code: Desativar Cabeçalho de Atribuição para Melhores Acertos de Cache
Definir CLAUDE_CODE_ATTRIBUTION_HEADER=false na configuração do seu shell pode melhorar a taxa de acertos do cache de prompts entre sessões do Claude Code de 48% para 99,98%, reduzindo os custos de processamento do prompt do sistema em 7x por sessão.

Rotina de pré-codificação com Claude Code: 5 servidores MCP antes de escrever uma linha
Um desenvolvedor compartilha uma rotina de 60 a 90 segundos usando 5 servidores MCP (memória, grafo do código, busca Tavily, documentação Context7) e ganchos de segurança para reduzir drasticamente alucinações e edições desperdiçadas.

Correção do proxy OpenClaw Discord para problemas de tempo limite da API REST
Um usuário relata corrigir problemas de conexão do Discord OpenClaw onde o WebSocket conecta, mas as chamadas da API REST falham com erros "fetch failed UND_ERR_CONNECT_TIMEOUT". A solução envolve criar um arquivo proxy-preload.cjs e configurar as configurações globais de proxy undici.

Usando Narrativas de Projeto para Manter o Contexto do OpenClaw em Projetos de Longo Prazo
Um desenvolvedor compartilha uma técnica para criar 'narrativas de projeto' onde um trabalhador separado do OpenClaw analisa a base de código após marcos importantes para documentar a compreensão do sistema, identificar problemas e manter o contexto.