understand-chat
Faz seu agente entender e explicar bases de código. É útil para analisar código existente ou responder perguntas sobre como um programa funciona.
O que ela faz
Esta ferramenta ajuda você a entender um projeto de código. Ela usa um mapa de conhecimento para responder perguntas sobre os arquivos, funções e como tudo se conecta.
Quando usar
- ✓Quando você não entende uma parte específica do código.
- ✓Para ver como diferentes partes do projeto se relacionam.
- ✓Para obter um resumo rápido do que um arquivo ou função faz.
Exemplo do que pedir para a IA
“Explique a função 'calculate_total' no arquivo 'utils.py'.”
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
A ferramenta consulta um arquivo especial (o mapa de conhecimento) que descreve o código. Ela procura informações sobre o que você perguntou e mostra como as partes do código estão conectadas.
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 Egonex-AI/Understand-Anything --skill understand-chatOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/understand-anything-plugin/skills/understand-chat/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.
/understand-chat
Responda perguntas sobre esta base de código usando o grafo de conhecimento no diretório de dados do projeto (.ua/knowledge-graph.json, ou o legado .understand-anything/knowledge-graph.json quando esse diretório estiver presente).
Referência da Estrutura do Grafo
O JSON do grafo de conhecimento tem esta estrutura:
project— {nome, descrição, linguagens, frameworks, analisadoEm, hashCommitGit}nodes[]— cada um tem {id, tipo, nome, caminhoArquivo?, resumo, tags[], complexidade, notasLinguagem?}- Tipos de nó de código: arquivo, função, classe, módulo, conceito
- Tipos de nó que não são de código: config, documento, serviço, tabela, endpoint, pipeline, esquema, recurso
- Tipos de nó de domínio/conhecimento: domínio, fluxo, etapa, artigo, entidade, tópico, alegação, fonte
- IDs usam o tipo de nó como prefixo, por exemplo,
file:path,function:path:name,config:path,article:path
edges[]— cada um tem {origem, destino, tipo, direção, peso}- Tipos de chave: importa, contém, chama, depende_de, configura, documenta, implanta, aciona, contém_fluxo, etapa_fluxo, relacionado, cita
layers[]— cada um tem {id, nome, descrição, idsNós[]}tour[]— cada um tem {ordem, título, descrição, idsNós[]}
Como Ler Eficientemente
- Use Grep para pesquisar dentro do JSON por entradas relevantes ANTES de ler o arquivo completo
- Leia apenas as seções de que você precisa — não despeje o grafo inteiro no contexto
- Nomes de nós e resumos são os campos mais úteis para compreensão
- Arestas mostram como os componentes se conectam — siga importações e chamadas para cadeias de dependência
Instruções
Resolva o diretório de dados
$UA_DIR. ExecuteUA_DIR=$([ -d .understand-anything ] && echo .understand-anything || echo .ua)— este é o legado.understand-anything/quando ele já existe, caso contrário, o novo.ua/. Verifique se$UA_DIR/knowledge-graph.jsonexiste na raiz do projeto atual. Se não, diga ao usuário para executar/understandprimeiro.Verifique a atualidade do grafo antes de usar o contexto derivado do grafo:
- Leia
project.gitCommitHashdos metadados do grafo comoGRAPH_COMMIT_RAW. Resolva-o como um commit antes de usá-lo em qualquer diff do Git, em seguida, compare-o comgit rev-parse HEADe inspecione as alterações confirmadas e na árvore de trabalho do escopo do projeto a partir da raiz do projeto:GRAPH_COMMIT=$(git rev-parse --verify --end-of-options "${GRAPH_COMMIT_RAW}^{commit}" 2>/dev/null) git rev-parse HEAD git diff --name-only "$GRAPH_COMMIT" HEAD -- . git diff --cached --name-only -- . git diff --name-only -- . git ls-files --others --exclude-standard -- . - O pathspec
-- .é necessário: commits que apenas tocam um projeto monorepo irmão não devem tornar este grafo obsoleto. Uma incompatibilidade de hash sozinha não é obsoleta quando o diff do projeto está vazio. - Ignore o diretório de dados selecionado (
.ua/ou o legado.understand-anything/) em cada saída de comando, pois ele contém artefatos de grafo gerados, não desvios de origem do projeto. - Se o diff confirmado ou qualquer comando da árvore de trabalho relatar arquivos do projeto, avise antes de responder que o contexto derivado do grafo pode omitir essas alterações. Sugira: Execute
/understandpara atualizar o grafo. - Execute o diff do commit apenas quando
GRAPH_COMMIT_RAWfor resolvido com sucesso. Se o commit do grafo ou os metadados do Git estiverem ausentes, inválidos ou indisponíveis, forneça um breve aviso de melhor esforço e continue em vez de bloquear.
- Leia
Leia apenas os metadados do projeto — use Grep ou Read com um limite de linhas para extrair apenas a seção
"project"do topo do arquivo para contexto (nome, descrição, linguagens, frameworks).Procure por nós relevantes — use Grep para pesquisar o arquivo do grafo de conhecimento pelas palavras-chave da consulta do usuário: "$ARGUMENTS"
- Pesquise os campos
"name":grep -i "query_keyword"no arquivo do grafo - Pesquise os campos
"summary"por correspondências semânticas - Pesquise os arrays
"tags"por correspondências de tópicos - Anote os valores
idde todos os nós correspondentes
- Pesquise os campos
Encontre arestas conectadas — para cada ID de nó correspondente, use Grep para procurar esse ID na seção
edgespara encontrar:- O que ele importa ou depende (downstream)
- O que o chama ou o importa (upstream)
- Isso lhe dá o subgrafo de 1 salto em torno da consulta
Leia o contexto da camada — use Grep para
"layers"para entender a quais camadas arquitetônicas os nós correspondentes pertencem.Responda à consulta usando apenas o subgrafo relevante:
- Referencie arquivos, funções e relacionamentos específicos do grafo
- Explique quais camadas são relevantes e por quê
- Seja conciso, mas completo — vincule conceitos a locais de código reais
…
Perguntas frequentes
O que é um 'mapa de conhecimento'?
É um arquivo que contém informações organizadas sobre o código, como nomes de arquivos, funções, o que elas fazem e como se ligam umas às outras.
O que acontece se o mapa de conhecimento estiver desatualizado?
A ferramenta pode avisar que o código mudou desde a última vez que o mapa foi criado e sugerir que você o atualize.
Como a ferramenta encontra as informações?
Ela procura por palavras-chave da sua pergunta nos nomes, descrições e tags dentro do mapa de conhecimento e segue as conexões entre as partes do código.
Detalhes
Descrição original do autor
Use when you need to ask questions about a codebase or understand code using a knowledge graph
Popularidade
- Estrelas no GitHub
- 87 mil
- Posição no ranking
- #840
- Licença
- MIT
- Atualizada em
- 12/10/2026
Comentários
- …
Mais skills deste repositório
understand-dashboard
Ajuda seu agente a ver como um projeto de código está organizado. Ele cria um mapa interativo para entender as partes e como elas se conectam.
Egonex-AI/Understand-Anything
understand-diff
Permite que seu agente analise mudanças em códigos. Ele ajuda a entender o que foi alterado, quais partes foram afetadas e os riscos.
Egonex-AI/Understand-Anything
understand-domain
Faz seu agente extrair o conhecimento de negócios de um código. Ele gera um gráfico que mostra o fluxo de como as coisas funcionam.
Egonex-AI/Understand-Anything
understand-explain
Ajuda seu agente a explicar partes específicas de um código. Ele fornece detalhes sobre um arquivo, função ou módulo.
Egonex-AI/Understand-Anything
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