# .NET Upgrade

Ведёт проект через апгрейд .NET: находит текущие TargetFramework, строит план и обновляет проекты по одному. Пригодится, когда решение застряло на старом фреймворке.

- субагент · `type=agent` · GitHub Copilot · ★ 40418
- Автор: github · официальный репозиторий GitHub
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/github/awesome-copilot/tree/HEAD/agents/dotnet-upgrade.agent.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/agents/net-upgrade

## Что делает

Субагент разбирает репозиторий и вытаскивает версии фреймворка из каждого `*.csproj`. Дальше он классифицирует проекты: `netcoreapp` и `net5.0+` считает современными, `netstandard*` и `net4*` — кандидатами на миграцию. Порядок обновления строится от наименее зависимых библиотек к API, вебу и тестам, чтобы не ломать всё сразу.

Для каждого проекта агент предлагает ветку вида `upgrade/<project>-to-<targetVersion>`, правит `<TargetFramework>`, прогоняет `dotnet restore`, `dotnet build` и `dotnet test`, а затем обновляет CI/CD. В пайплайнах он советует брать версию динамически — через `UseDotNet@2` в Azure DevOps или `actions/setup-dotnet@v4` в GitHub Actions. Ещё он подсказывает, где искать устаревшие API и как перевести `Startup.cs` на top-level statements в `Program.cs`.

Одна оговорка: агент опирается на `microsoft.docs.mcp`, поэтому без настроенного MCP-сервера часть рекомендаций по документации не сработает. И проверять сборку всё равно придётся вам — шаги валидации в нём описаны, но выполняет он их через ваши же команды.

## Установка

### GitHub Copilot (родная платформа)

**Вручную: положить файлы**
- Файл: `.github/agents/dotnet-upgrade.agent.md`

### Claude Code

**Вручную: положить файлы**
- Файл: `.claude/agents/dotnet-upgrade.md` — Для всех проектов — ~/.claude/agents/. Claude делегирует задачу сам по полю description или по @-упоминанию. Поле tools у Copilot перечисляет инструменты по-своему — уберите его или перепишите под Claude Code

### Codex

**Вручную: положить файлы**
- Файл: `.codex/agents/dotnet-upgrade.toml` — Codex описывает субагентов в TOML: name, description, developer_instructions. Текст из Markdown перенесите в developer_instructions вручную. Для всех проектов — ~/.codex/agents/

### Cursor

**Вручную: положить файлы**
- Файл: `.cursor/agents/dotnet-upgrade.md` — Cursor понимает и .claude/agents/

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/github/awesome-copilot/tree/HEAD/agents/dotnet-upgrade.agent.md

## Когда брать
- узнать, на какой версии .NET сидит каждый проект в решении
- построить порядок обновления от независимых библиотек к тестам
- найти устаревшие API при переходе между версиями
- перевести `Startup.cs` на top-level statements
- обновить пайплайн CI/CD под новую версию SDK

## Примеры запросов агенту
- Проанализируй репозиторий и перечисли TargetFramework каждого проекта вместе с ближайшей LTS-версией
- Сгенерируй оптимальный порядок апгрейда, начиная с наименее зависимых проектов
- Составь план отката, если апгрейд проекта вызовет регрессии в сборке или рантайме

## Похожие
- [akka-net-best-practices](https://affpapa.org/nevibecode/skills/akka-net-best-practices.md) — скилл · 431 установка
- [migrate-dotnet10-to-dotnet11](https://affpapa.org/nevibecode/skills/migrate-dotnet10-to-dotnet11.md) — скилл · 3400 установок
- [migrate-dotnet9-to-dotnet10](https://affpapa.org/nevibecode/skills/migrate-dotnet9-to-dotnet10.md) — скилл · 3400 установок
- [akka-net-management](https://affpapa.org/nevibecode/skills/akka-net-management.md) — скилл · 409 установок
- [migrate](https://affpapa.org/nevibecode/skills/codewithmukesh-migrate.md) — скилл · 2800 установок
- [capacitor-plugin-upgrade-v5-to-v6](https://affpapa.org/nevibecode/skills/capacitor-plugin-upgrade-v5-to-v6.md) — скилл · 633 установки

Из того же набора: [github/awesome-copilot](https://affpapa.org/nevibecode/by/github/awesome-copilot.md) — 732 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

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