codebase-memory-mcp
Ajuda seu agente a explorar códigos desconhecidos, mapear arquiteturas e entender relações entre partes do sistema. Útil para analisar a complexidade e o impacto de mudanças.
O que ela faz
Esta ferramenta ajuda você a entender e navegar por códigos de programação complexos. Ela mapeia a estrutura do código, encontra partes específicas e mostra como elas se conectam.
Quando usar
- ✓Quando você encontra um código que não conhece.
- ✓Para entender como um programa inteiro está organizado.
- ✓Para descobrir onde uma função específica é usada ou chamada.
Exemplo do que pedir para a IA
“Mostre-me onde a função 'calcular_total' é usada no projeto 'ecommerce'.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ela usa um 'mapa' do código (chamado Codebase Memory) para encontrar informações. Você pede algo, ela consulta o mapa e te mostra os resultados, como um guia.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill codebase-memory-mcpOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/codebase-memory-mcp/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Memória de Código MCP
Use o grafo de Memória de Código configurado como um acelerador de descoberta, não como a única fonte da verdade. Confirme conclusões derivadas do grafo com trechos de código-fonte ou arquivos locais antes de editar código ou fazer afirmações fortes.
Níveis de Evidência
- Scout — Apenas orientação positiva provisória. Não faça afirmações de ausência, exaustivas, de código morto ou de impacto completo.
- Verify — Padrão para trabalho direcionado a tarefas. Verifique a atualidade onde material, trechos de código-fonte exatos, rastros relevantes, cobertura de caminho e todas as páginas de resultados necessárias para a afirmação.
- Auditor — Use para trabalho negativo, exaustivo, de segurança, de código morto, de limite de arquitetura e de impacto completo. Exija a geração atual do índice, um escopo delimitado, fluxos de resultados completos, inspeção de cobertura e verificações de código-fonte para lacunas.
Combine o nível de evidência com a afirmação. Se a evidência do Auditor não puder ser completada, declare a limitação delimitada em vez de fazer uma afirmação absoluta.
Fluxo de Trabalho
- Descubra as ferramentas de Memória de Código expostas pelo cliente MCP atual e use seus esquemas chamáveis; clientes podem prefixar ou renomear ferramentas e expor parâmetros diferentes.
- Chame
list_projectsprimeiro. Selecione apenas a entrada cujoroot_pathcanônico corresponda ao checkout ativo, e retenha tanto seu nome de projeto exato quanto sua raiz para chamadas posteriores. Se nenhuma correspondência aparecer ehas_morefor verdadeiro, continue comoffset=next_offsetantes de concluir que o índice está ausente. Para um índice ausente, siga a regra de autorização em Segurança e Fallbacks ou use exploração local com raiz; nunca substitua um projeto com nome similar. - Antes de conclusões sensíveis a branches ou a edições, use
index_statuse verifique o estado real do controle de versão. Usedetect_changesapenas quando sua base Git e head forem válidos para o checkout. Se ele relatar inesperadamente zero alterações, ou se o checkout usar outro VCS, inspecione o status ou diff desse VCS antes de afirmar nenhum impacto. - Use
get_architectureuma vez para estrutura desconhecida. Soliciteclusterspara descobrir "seams" de módulo de fato. Tratecyclescomo uma varredura opcional de grafo de chamadas completo:pathnão delimita a detecção de ciclos, portanto, verifique ciclos relevantes antes de fazer afirmações locais de módulo. - Use
search_graphpara definições, implementações, rotas, classes, interfaces e símbolos relacionados. Prefira umqueryBM25 para descoberta de palavras-chave e um padrão de nome ou nome qualificado para símbolos conhecidos. Usesemantic_querypara incompatibilidade de vocabulário e verifique correspondências com trechos de código-fonte; pontuações de similaridade não são probabilidades de confiança. Restrinja por rótulo ou caminho e defina um limite de resultados. Continue o fluxo principal comoffset=next_offsetenquantohas_morefor verdadeiro, não adicionando o limite solicitado: orçamentos de saída podem retornar menos linhas. Pagine resultados semânticos independentemente comsemantic_offset=semantic_next_offsetenquantosemantic_has_morefor verdadeiro. - Use
search_codeou a pesquisa normal de repositório para strings literais, chaves de configuração, identificadores de teste, mensagens de erro e arquivos não-código. Não transforme uma busca de texto precisa em uma consulta de grafo ampla. - Após a busca no grafo, use
get_code_snippetcom o nome qualificado retornado. Para um nó de Arquivo, Módulo, Classe ou Interface que abranja mais de 200 linhas,source_mode="auto"retorna um esboço; continue os membros commember_offset=next_member_offset. Para ler o corpo de tal contêiner, passesource_mode="full":start_lineemax_linessozinhos não desativam o esboço. Comfull, pagine o corpo comstart_line/max_linese continue denext_start_lineenquantosource_clippedfor verdadeiro e uma continuação estiver disponível. Para listar as declarações de um arquivo sem lê-lo, useget_file_outline(file_path=...); esta ferramenta usaoffset += returnedenquantohas_morefor verdadeiro. Se trechos de código-fonte não estiverem disponíveis, abra o arquivo local antes de confiar no resultado. - Use
trace_pathpara chamadores, chamados, caminhos de dependência, fluxo de dados, caminhos entre serviços e análise de impacto. Inclua testes quando a afirmação os cobrir. Quandohas_moree uma continuação estiverem presentes, passenext(saída em árvore) ounext_cursor(saída em JSON) de volta comocursor, mantendo os argumentos de travessia inalterados; o orçamento de saída pode aumentar.truncated=truesozinho não promete outra página: tetos do motor podem gerar um total de limite inferior (gte) sem um cursor. Comdirection="both", os chamadores são paginados após todos os chamados, então a página 1 pode mostrar zero chamadores enquantocallers_totalfor positivo; perguntedirection="inbound"quando a questão for quem chama um símbolo.
…
Perguntas frequentes
Posso confiar 100% no que ela diz?
Não, use como um guia. Sempre confirme as informações importantes olhando o código original antes de fazer mudanças.
Ela encontra todos os tipos de código?
Ela é melhor para código de programação. Para textos simples ou arquivos de configuração, outras ferramentas podem ser mais diretas.
O que são 'níveis de evidência'?
São níveis de confiança. 'Scout' é uma olhada rápida, 'Verify' é para checar detalhes e 'Auditor' é para análises profundas e negativas (como achar código não usado).
Detalhes
Descrição original do autor
Use when exploring unfamiliar code, mapping architecture, finding symbols or relationships, tracing callers, callees, data flow or dependencies, assessing impact, auditing dead or complex code, or handling explicit Codebase Memory requests. Otherwise skip tasks confined to a supplied known file, tiny one-file check, exact literal, configuration value, error string, or non-code text.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5054
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
benchmark-optimization-loop
Faz seu agente melhorar a velocidade de algo de forma medida. Ele testa várias versões e escolhe a mais rápida que ainda funciona corretamente.
affaan-m/ECC
change-impact
Ajuda seu agente a analisar o impacto de mudanças no código antes de fazê-las. Ele compara o planejado com o real depois, cobrindo caminhos, dados, testes e documentação. É útil para mudanças arriscadas ou que afetam várias partes do sistema.
affaan-m/ECC
click-path-audit
Faz seu agente rastrear todos os botões e interações do usuário para achar bugs. Ele encontra problemas onde funções parecem funcionar sozinhas, mas falham juntas. Útil quando bugs persistem mesmo após depuração.
affaan-m/ECC