К основному содержанию
скилл CX Codex

ilspy-decompile — скилл для Claude Code: что делает и как установить

Декомпилирует сборки .NET через утилиту ilspycmd. Помогает изучать исходники пакетов NuGet и внутреннее устройство runtime-библиотек прямо в сессии агента.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Aaronontheweb/dotnet-skills --skill ilspy-decompile -a claude-code
Открыть на GitHub

Что делает ilspy-decompile

Скилл запускает консольную утилиту ilspycmd для исследования скомпилированных файлов .dll. Агент находит нужную сборку в кэше пакетов ~/.nuget/packages или в папке сборки bin/, после чего восстанавливает исходный C# код либо выводит инструкции промежуточного языка IL через флаг -il.

Для работы требуется .NET SDK и установленная утилита ilspycmd. Инструмент ставится глобально командой dotnet tool install --global ilspycmd или вызывается через dnx ilspycmd. Можно распаковать проект целиком с ключом -p или декомпилировать отдельный класс через флаг -t.

Эталонные сборки SDK содержат только сигнатуры и не покажут реализацию. На сборках с ReadyToRun или AOT часть кода будет вырезана либо потеряет читаемость, поэтому для анализа нужны обычные сборки без тримминга.

Какие задачи решает

  • изучить внутреннее устройство стороннего NuGet-пакета
  • декомпилировать сборку .NET в структуру C# проекта
  • посмотреть реализацию конкретного класса через параметр -t
  • проверить байт-код IL в скомпилированной библиотеке

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

  • Декомпилируй класс Namespace.ClassName из библиотеки MyLibrary.dll с помощью ilspycmd.
  • Найди сборку пакета в ~/.nuget/packages и распакуй проект в папку ./decompiled.

Как установить ilspy-decompile

1Через Skills CLI (Vercel)

npx skills add Aaronontheweb/dotnet-skills --skill ilspy-decompile -a claude-code

2Вручную: положить файлы

~/.claude/skills/ilspy-decompile/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/ilspy-decompile/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о ilspy-decompile

Как установить ilspy-decompile в Claude Code?

Выполните команду npx skills add Aaronontheweb/dotnet-skills --skill ilspy-decompile -a claude-code. Файл навыка сохранится в ~/.claude/skills/ilspy-decompile/SKILL.md.

Что делает скилл ilspy-decompile?

Он даёт агенту инструкции по декомпиляции сборок .NET в исходный C# код или байт-код IL с помощью утилиты ilspycmd. Это позволяет разбирать логику закрытых библиотек без исходников.

Какие системные требования нужны для работы?

В системе должен стоять .NET SDK и утилита ilspycmd. Её можно установить через dotnet tool install --global ilspycmd или запускать через dnx ilspycmd.

Исходный текст

SKILL.md · MIT
---
name: ilspy-decompile
description: Understand implementation details of .NET code by decompiling assemblies. Use when you want to see how a .NET API works internally, inspect NuGet package source, view framework implementation, or understand compiled .NET binaries.
allowed-tools: Bash(dnx:*)
---

# .NET Assembly Decompilation with ILSpy

Use this skill to understand how .NET code works internally by decompiling compiled assemblies.

## Prerequisites

- .NET SDK installed
- ILSpy command-line tool available via one of the following:
  - `dnx ilspycmd` (if available in your SDK or runtime)
  - `dotnet tool install --global ilspycmd`

Both forms are shown below. Use the one that works in your environment.

> Note: ILSpyCmd options may vary slightly by version.  
> Always verify supported flags with `ilspycmd -h`.

## Quick start

```bash
# Decompile an assembly to stdout
ilspycmd MyLibrary.dll
# or
dnx ilspycmd MyLibrary.dll

# Decompile to an output folder
ilspycmd -o output-folder MyLibrary.dll
```

## Common .NET Assembly Locations

### NuGet packages

```bash
~/.nuget/packages/<package-name>/<version>/lib/<tfm>/
```

### .NET runtime libraries

```bash
dotnet --list-runtimes
```

### .NET SDK reference assemblies

```bash
dotnet --list-sdks
```

> Reference assemblies do not contain implementations.

### Project build output

```bash
./bin/Debug/net8.0/<AssemblyName>.dll
./bin/Release/net8.0/publish/<AssemblyName>.dll
```

## Core workflow

1. Identify what you want to understand
2. Locate the assembly
3. List types
4. Decompile the target

## Commands

### Basic decompilation

```bash
ilspycmd MyLibrary.dll
ilspycmd -o ./decompiled MyLibrary.dll
ilspycmd -p -o ./project MyLibrary.dll
```

### Targeted decompilation

```bash
ilspycmd -t Namespace.ClassName MyLibrary.dll
ilspycmd -lv CSharp12_0 MyLibrary.dll
```

### View IL code

```bash
ilspycmd -il MyLibrary.dll
```

## Notes on modern .NET builds

- ReadyToRun images may reduce readability
- Trimmed or AOT builds may omit code
- Prefer non-trimmed builds

## Legal note

Decompiling assemblies may be subject to license restrictions.

© Aaronontheweb · MIT · Aaronontheweb/dotnet-skills

Похожие скиллы

Все скиллы по теме «Языки программирования» →
project-structure codewithmukesh Скилл задаёт агенту правила раскладки .NET-решения: центральные версии пакетов, общие свойства сборки, формат .slnx и именование проектов. CX Codex +1 2 800установок csharp-scripts dotnet Запускает C#-код из одного файла через dotnet, без создания проекта. Пригодится для проверки языковой фичи или мелкой утилиты. CX Codex +1 3 800установок template-authoring dotnet Помогает превратить существующий проект .NET в готовый шаблон dotnet new. Создаёт .template.config/template.json с параметрами и сохраняет структуру исходного файла .csproj. CX Codex +1 3 200установок migrate codewithmukesh Скилл ведёт разработчика через миграции схемы EF Core, смену версии .NET и обновление NuGet. На каждом шаге он готовит план отката и запускает тесты. CX Codex +1 2 800установок nuget-manager официальный github Управляет NuGet-пакетами в .NET-проектах через dotnet CLI. Нужен при добавлении, удалении и обновлении зависимостей. 14 360установок dotnet-upgrade официальный github Помогает спланировать обновление проектов .NET: проверить зависимости, выбрать порядок миграции и подготовить проверки после неё. 11 475установок

Из того же набора32

database-performance Скилл задаёт правила производительности баз данных для .NET: разделяет чтение и запись, устраняет N+1 запросы и требует лимиты на выборки. CX Codex +1 664установок api-design Скилл для проектирования публичных API по принципу «только расширять»: помогает не ломать совместимость при выпуске новых версий. CX Codex +1 660установок dotnet-project-structure Скилл подсказывает агенту, как разложить .NET-решение: .slnx, Directory.Build.props, центральные версии пакетов и SourceLink. CX Codex +1 658установок type-design-performance Скилл для проектирования типов .NET с оглядкой на производительность: запечатанные классы, readonly-структуры, отложенный перебор коллекций. CX Codex +1 655установок microsoft-extensions-configuration Скилл для Claude и других ИИ-редакторов: подсказывает, как привязывать конфигурацию из appsettings.json к типизированным классам и проверять её на старте приложения. CX Codex +1 577установок serialization Помогает агенту выбрать формат сериализации для .NET: схему вместо рефлексии, System.Text.Json с генераторами для JSON. Пригодится при проектировании API, обмена сообщениями и хранения событий. CX Codex +1 569установок crap-analysis Скилл считает CRAP-оценки по покрытию и цикломатической сложности, чтобы найти в .NET-проекте код, который опасно менять. CX Codex +1 556установок dotnet-slopwatch Скилл отслеживает уловки нейросетей при правке кода C#: пропуск упавших тестов, скрытие предупреждений и пустые блоки catch. Он запускает утилиту slopwatch для защиты проекта от фиктивных правок. CX Codex +1 552установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой