# dotnet-inspect-performance

Скилл находит узкие места в сборках .NET через анализ графа вызовов IL-кода. Он помогает приоритизировать рефакторинг библиотек без ручного профилирования.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 411 установок · ★ 156
- Автор: richlander
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/richlander/dotnet-inspect/tree/HEAD/skills/performance/SKILL.md
- Обновлён: 2026-10-25
- HTML: https://affpapa.org/nevibecode/skills/dotnet-inspect-performance

## Что делает

Скилл исследует скомпилированные сборки .NET с помощью утилиты `dnx dotnet-inspect`. Он ранжирует методы через метрику `Top Leverage`, оценивая прямые вызовы и внешние точки входа. Это позволяет сразу увидеть методы, оптимизация которых затронет больше всего вызывающего кода.

Для сортировки правок инструмент сопоставляет IL-код с готовыми паттернами расходов: аллокации в циклах, замыкания делегатов, боксинг и синхронные вызовы внутри `async`-методов. Анализ нацелен исключительно на явные затраты промежуточного языка, игнорируя оптимизации JIT вроде девиртуализации.

Статический анализ не доказывает реальный рост нагрузки во время исполнения, поэтому перед переписыванием кода результат требует подтверждения бенчмарками или трейсами аллокаций. Для работы утилиты потребуется установленная среда .NET с поддержкой запуска через `dnx`.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add richlander/dotnet-inspect --skill dotnet-inspect-performance -a claude-code
```
```bash
npx skills add richlander/dotnet-inspect --skill performance -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/performance/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/performance/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add richlander/dotnet-inspect --skill performance -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/performance/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add richlander/dotnet-inspect --skill performance -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/performance/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install richlander/dotnet-inspect performance
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/performance/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add richlander/dotnet-inspect --skill performance -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/richlander/dotnet-inspect --path skills/performance
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/performance/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add richlander/dotnet-inspect --skill performance -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/richlander/dotnet-inspect/tree/HEAD/skills/performance/SKILL.md

## Когда брать
- найти критические методы в сборке .NET по графу вызовов
- выявить скрытый боксинг и лишние аллокации в циклах
- обнаружить блокирующие синхронные вызовы внутри асинхронного кода
- отфильтровать неэффективные замыкания делегатов в библиотеке

## Примеры запросов агенту
- Проверь библиотеку MyLib.dll через dotnet-inspect и найди методы с наибольшим влиянием в Top Leverage.
- Запусти анализ MyLib.dll на аллокации строк и замыкания делегатов с фильтром по высокому приоритету.
- Покажи синхронные вызовы внутри асинхронных методов для типа MyType в сборке MyLib.dll.

## Похожие
- [analyzing-dotnet-performance](https://affpapa.org/nevibecode/skills/analyzing-dotnet-performance.md) — скилл · 4900 установок
- [type-design-performance](https://affpapa.org/nevibecode/skills/type-design-performance.md) — скилл · 655 установок
- [golang-performance](https://affpapa.org/nevibecode/skills/golang-performance.md) — скилл · 41900 установок
- [dotnet-design-pattern-review](https://affpapa.org/nevibecode/skills/dotnet-design-pattern-review.md) — скилл · 11609 установок
- [eval-performance](https://affpapa.org/nevibecode/skills/eval-performance.md) — скилл · 3400 установок
- [dotnet-architect](https://affpapa.org/nevibecode/skills/dotnet-architect.md) — скилл · 351 установка

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
