dwarf-expert — Claude Code skill: what it does, how to install
Inspects DWARF debug sections in compiled binaries, verifies DIE trees, and assists with parsers. Handy when analyzing compiled code.
npx skills add trailofbits/skills --skill dwarf-expert -a claude-codeWhat dwarf-expert does
This skill guides the inspection of DWARF debug sections across compiled binaries. It formulates queries for llvm-dwarfdump or readelf, searches DIE trees by name or memory address, and looks up official specifications on dwarfstd.org. Runtime debugging with gdb and full binary decompilation in Ghidra remain outside its scope.
It covers structural integrity checks using llvm-dwarfdump --verify alongside quality statistics comparisons. When writing code to parse debug entries, it references libraries such as pyelftools, libdwarf, or gimli, while accounting for attribute indirections like DW_AT_abstract_origin.
Linked Mach-O binaries on macOS store DWARF inside .dSYM bundles or object files rather than the main executable. Because pyelftools only parses ELF containers, scripting Mach-O inspections requires sticking with LLVM tooling instead.
What it helps with
- inspect types and parameters inside
.debug_infosections - verify debug metadata integrity with
llvm-dwarfdump --verify - script DIE tree traversals using Python and
pyelftools - resolve attribute indirection chains like
DW_AT_abstract_origin
Example prompts for the agent
- Verify DWARF integrity in build/app using llvm-dwarfdump
- Find all parameters of type float * in the debug sections of this binary
- Help me write a pyelftools script to extract struct member offsets
How to install dwarf-expert
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill dwarf-expert -a claude-code2Manually: put the files in place
~/.claude/skills/dwarf-expert/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/dwarf-expert/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill dwarf-expert -a codex2Manually: put the files in place
.agents/skills/dwarf-expert/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill dwarf-expert -a cursor2Manually: put the files in place
.cursor/skills/dwarf-expert/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install trailofbits/skills dwarf-expert2Manually: put the files in place
.github/skills/dwarf-expert/SKILL.md1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill dwarf-expert -a gemini-cli2Platform CLI
gemini skills install https://github.com/trailofbits/skills --path plugins/dwarf-expert/skills/dwarf-expertManually: put the files in place
.devin/skills/dwarf-expert/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add trailofbits/skills --skill dwarf-expert -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set35
The whole set →Similar
Questions about dwarf-expert
How to install dwarf-expert in Claude Code?
Run npx skills add trailofbits/skills --skill dwarf-expert -a claude-code in your terminal.
What does the dwarf-expert skill do?
It equips the agent with knowledge to inspect DWARF sections, run verification tools, and write custom parsers for debug entries.
Does it support Mach-O binaries on macOS?
Yes, but linked Mach-O binaries store DWARF in separate .o files or .dSYM bundles. You must point inspection tools at the .dSYM bundle, and keep in mind that pyelftools works exclusively with ELF files.