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

✍️ OpenClawRadar📅 Publicado: April 18, 2026🔗 Source
Traduzir para pt: Gancho de Ferramenta de Postagem Personalizada para Carregamento Sob Demanda de CLAUDE.md Fora da Árvore do Projeto
Ad

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 tanto root/a/CLAUDE.md quanto root/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/ carrega root/CLAUDE.md inicialmente, depois carrega root/a/CLAUDE.md quando o Claude lê um arquivo em root/a/.
  • Acesso a diretórios adicionais via flags: Usar --add-dir com CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 permite 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.

Ad

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

Ad

👀 See Also