dwarf-expert
Ajuda seu agente a analisar arquivos de depuração DWARF. Útil para entender informações de depuração e trabalhar com código que as processa.
O que ela faz
Esta ferramenta ajuda a entender e trabalhar com informações de depuração chamadas DWARF. Ela pode explicar o que são esses dados, como usá-los para analisar programas e como verificar se estão corretos.
Quando usar
- ✓Quando você precisa entender informações de depuração de um programa compilado.
- ✓Para obter respostas sobre o padrão DWARF (versões 3, 4 e 5).
- ✓Ao escrever ou revisar código que lida com dados DWARF.
Exemplo do que pedir para a IA
“Como posso verificar se os dados DWARF em meu programa estão corretos usando o comando `llvm-dwarfdump --verify`?”
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 funciona consultando fontes oficiais e exemplos de código sobre o padrão DWARF. Ela também sabe como usar ferramentas como `dwarfdump` e `readelf` para extrair e analisar essas informações.
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 sickn33/agentic-awesome-skills --skill dwarf-expertOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/dwarf-expert/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.
Visão Geral
Esta habilidade fornece conhecimento técnico e expertise sobre o padrão DWARF e como interagir com arquivos DWARF. As tarefas incluem responder a perguntas sobre o padrão DWARF, fornecer exemplos de vários recursos DWARF, analisar e/ou criar arquivos DWARF e escrever/modificar/analisar código que interage com dados DWARF.
Quando Usar Esta Habilidade
- Entender ou analisar informações de depuração DWARF de binários compilados
- Responder a perguntas sobre o padrão DWARF (v3, v4, v5)
- Escrever ou revisar código que interage com dados DWARF
- Usar
dwarfdumpoureadelfpara extrair informações de depuração - Verificar a integridade dos dados DWARF com
llvm-dwarfdump --verify - Trabalhar com bibliotecas de análise DWARF (libdwarf, pyelftools, gimli, etc.)
Quando NÃO Usar Esta Habilidade
- Análise DWARF v1/v2: Expertise limitada às versões 3, 4 e 5.
- Análise Geral de ELF: Use ferramentas ELF padrão se os dados DWARF não forem necessários.
- Depuração de Executáveis: Use ferramentas de depuração dedicadas (gdb, lldb, etc.) para depurar código executável/comportamento em tempo de execução.
- Engenharia Reversa de Binários: Use ferramentas de RE dedicadas (Ghidra, IDA) a menos que esteja analisando especificamente seções DWARF.
- Depuração de Compiladores: Problemas de geração DWARF são específicos do compilador, não cobertos aqui.
Fontes Autoritativas
Quando informações específicas do padrão DWARF forem necessárias, use estas fontes autoritativas:
Padrões Oficiais DWARF (dwarfstd.org): Use a pesquisa na web para encontrar seções específicas da especificação oficial DWARF em dwarfstd.org. Consultas de pesquisa como "DWARF5 DW_TAG_subprogram attributes site:dwarfstd.org" são eficazes.
Implementação DWARF do LLVM: O código de manipulação DWARF do projeto LLVM em
llvm/lib/DebugInfo/DWARF/serve como uma implementação de referência confiável. Arquivos chave incluem:DWARFDie.cpp- Manipulação de DIE e acesso a atributosDWARFUnit.cpp- Análise de unidade de compilaçãoDWARFDebugLine.cpp- Informações de número de linhaDWARFVerifier.cpp- Lógica de validação
libdwarf: A implementação de referência em C em github.com/davea42/libdwarf-code fornece manipulação detalhada de estruturas de dados DWARF.
Fluxos de Trabalho de Verificação
Use as opções de verificação llvm-dwarfdump para validar a integridade dos dados DWARF:
Validação Estrutural
# Verify DWARF structure (compile units, DIE relationships, address ranges)
llvm-dwarfdump --verify <binary>
# Detailed error output with summary
llvm-dwarfdump --verify --error-display=full <binary>
# Machine-readable JSON error summary
llvm-dwarfdump --verify --verify-json=errors.json <binary>
Métricas de Qualidade
# Output debug info quality metrics as JSON
llvm-dwarfdump --statistics <binary>
A saída --statistics ajuda a comparar a qualidade das informações de depuração entre versões de compilador e níveis de otimização.
Padrões Comuns de Verificação
- Após a compilação: Verifique se os binários possuem DWARF válido antes da distribuição
- Comparando builds: Use
--statisticspara detectar regressões na qualidade das informações de depuração - Depurando depuradores: Identifique DWARF malformado que causa problemas no depurador
- Desenvolvimento de ferramentas DWARF: Valide a saída do analisador contra binários conhecidos e corretos
Análise de Informações de Depuração DWARF
readelf
Arquivos ELF podem ser analisados através do comando readelf ({baseDir}/reference/readelf.md). Use isso para informações gerais de ELF, mas prefira dwarfdump para análise específica de DWARF.
dwarfdump
Arquivos DWARF podem ser analisados através do comando dwarfdump, que é mais eficaz na análise e exibição de informações DWARF complexas do que readelf e deve ser usado para a maioria das tarefas de análise DWARF ({baseDir}/reference/dwarfdump.md).
Trabalhando com Código
Esta habilidade suporta a escrita, modificação e revisão de código que interage com dados DWARF. Isso pode envolver código que analisa dados de depuração DWARF do zero ou código que utiliza bibliotecas para analisar e interagir com dados DWARF ({baseDir}/reference/coding.md).
Escolhendo Sua Abordagem
┌─ Precisa verificar a integridade dos dados DWARF?
│ └─ Use `llvm-dwarfdump --verify` (veja Fluxos de Trabalho de Verificação acima)
├─ Precisa responder a perguntas sobre o padrão DWARF?
│ └─ Pesquise dwarfstd.org ou consulte o código fonte do LLVM/libdwarf
├─ Precisa de um dump simples de seção ou informações gerais de ELF?
│ └─ Use `readelf` ({baseDir}/reference/readelf.md)
├─ Precisa analisar, pesquisar e/ou descarregar nós DIE DWARF?
│ └─ Use `dwarfdump` ({baseDir}/reference/dwarfdump.md)
└─ Precisa escrever, modificar ou revisar código que interage com dados DWARF?
└─ Consulte a referência de codificação ({baseDir}/reference/coding.md)
…
Perguntas frequentes
O que são dados DWARF?
Dados DWARF são informações extras incluídas em programas compilados que ajudam ferramentas de depuração a entender o código-fonte original, como nomes de variáveis e funções.
Quais versões do DWARF esta ferramenta entende?
Ela entende as versões 3, 4 e 5 do padrão DWARF.
Posso usar esta ferramenta para depurar um programa em execução?
Não, esta ferramenta é para analisar os dados DWARF em si, não para depurar o comportamento de um programa em tempo real. Para isso, use ferramentas como GDB ou LLDB.
Detalhes
Descrição original do autor
Provides expertise for analyzing DWARF debug files and understanding the DWARF debug format/standard (v3-v5). Triggers when understanding DWARF information, interacting with DWARF files, answering DWARF-related questions, or working with code that parses DWARF data.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2887
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
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