AIKraft/Skills/Эксперт по DWARF

Эксперт по DWARF

Analyzes DWARF debug information in compiled binaries. Use when inspecting .debug_* sections, DIE trees, or DW_TAG_/DW_AT_ entries with dwarfdump/llvm-dwarfdump or readelf, verifying debug info with llvm-dwarfdump --verify, answering DWARF standard questions, or writing code that parses DWARF (libdwarf, pyelftools, gimli).

trailofbits official Документы

Что делает навык

Навык обеспечивает экспертизу в области отладочной информации DWARF: парсинг, поиск данных, проверка целостности и написание кода для обработки DWARF. Он не предназначен для отладки во время выполнения, реверс-инжиниринга за пределами секций DWARF или анализа специфичных для компилятора ошибок генерации DWARF.

Когда применять

  • Анализ и поиск информации в отладочных секциях скомпилированных бинарных файлов.
  • Проверка целостности и валидация отладочной информации с помощью инструментов вроде llvm-dwarfdump --verify.
  • Ответы на вопросы о спецификации DWARF с опорой на официальные источники.
  • Написание кода для парсинга и потребления DWARF (например, с использованием libdwarf, pyelftools или gimli).

Как работает

  1. При необходимости точных данных выполнять поиск в официальной спецификации на dwarfstd.org, а не полагаться на память.
  2. Использовать референсную реализацию LLVM (файлы DWARFDie.cpp, DWARFUnit.cpp, DWARFDebugLine.cpp, DWARFVerifier.cpp) как надежный источник.
  3. Применять референсную C-реализацию libdwarf (github.com/davea42/libdwarf-code) для анализа.
  4. Использовать инструменты dwarfdump/llvm-dwarfdump или readelf для анализа секций .debug_*, деревьев DIE и записей DW_TAG_/DW_AT_.
  5. Писать код, потребляющий DWARF, используя библиотеки libdwarf, pyelftools или gimli.

Примеры запросов агенту

Проверь целостность отладочной информации в бинарном файле с помощью llvm-dwarfdump --verify.
Напиши код на C с использованием libdwarf для парсинга секции DWARF.
Какие атрибуты имеет DW_TAG_subprogram согласно спецификации DWARF5?

Описание составлено по SKILL.md навыка, сверено 05.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «dwarf-expert» из репозитория: # https://github.com/trailofbits/skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r dwarf-expert/ ~/.claude/skills/dwarf-expert/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.