Agent Plugins Marketplace
All plugins

dotnet-upgrade

v0.1.1

Skills for migrating and upgrading .NET projects across framework versions, language features, and compatibility targets.

CodexClaude Code6 Skills

484 GitHub starsUpdated yesterday

Directory evidence

Runtimes
Codex and Claude Code
Parsed components
6 skill or MCP entries
Source updated
Sep 23, 2026
Manifest status
Canonical path parsed

The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology

Install dotnet-upgrade for Codex and Claude Code

Installs for the current user
codex plugin marketplace add IchenDEV/agent-plugin-mkt
codex plugin marketplace upgrade agent-plugin-marketplace
codex plugin add dotnet-upgrade@agent-plugin-marketplace

Paste and run these commands in a terminal with Codex. They add and refresh the PluginsMP catalog, then install this plugin.

The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.

Get the source manually
git clone https://github.com/managedcode/dotnet-skills

Clone the source repository, then follow its setup instructions to add the plugin to a compatible client. The plugin root is external-sources/upstreams/dotnet-skills/dotnet-upgrade/.

Plugin files

external-sources/upstreams/dotnet-skills/dotnet-upgrade/
├── .codex-plugin/plugin.json
├── .claude-plugin/plugin.json
├── skills/dotnet-aot-compat/SKILL.md
├── skills/migrate-dotnet10-to-dotnet11/SKILL.md
├── skills/migrate-dotnet8-to-dotnet9/SKILL.md
├── skills/migrate-dotnet9-to-dotnet10/SKILL.md
├── skills/migrate-nullable-references/SKILL.md
└── skills/thread-abort-migration/SKILL.md

Included Skills6

dotnet-aot-compatskills/dotnet-aot-compat/SKILL.md

Make .NET projects compatible with Native AOT and trimming by systematically resolving IL trim/AOT analyzer warnings. USE FOR: making projects AOT-compatible, fixing trimming warnings, resolving IL warnings (IL2026, IL2070, IL2067, IL2072, IL3050), adding DynamicallyAccessedMembers annotations, enabling IsAotCompatible. DO NOT USE FOR: publishing native AOT binaries, optimizing binary size, replacing reflection-heavy libraries with alternatives. INVOKES: no tools — pure knowledge skill.

migrate-dotnet10-to-dotnet11skills/migrate-dotnet10-to-dotnet11/SKILL.md

Migrate a .NET 10 project or solution to .NET 11 and resolve all breaking changes. This is a MIGRATION skill — use it when upgrading from .NET 10 to .NET 11, NOT for writing new programs. USE FOR: upgrading TargetFramework from net10.0 to net11.0, fixing build errors after updating the .NET 11 SDK, resolving source-breaking and behavioral changes in .NET 11 runtime, C# 15 compiler, and EF Core 11, adapting to updated minimum hardware requirements (x86-64-v2, Arm64 LSE), and updating CI/CD pipelines and Dockerfiles for .NET 11. DO NOT USE FOR: .NET Framework migrations, upgrading from .NET 9 or earlier, greenfield .NET 11 projects, or cosmetic modernization unrelated to the upgrade. NOTE: .NET 11 is in preview. Covers breaking changes through Preview 3.

migrate-dotnet8-to-dotnet9skills/migrate-dotnet8-to-dotnet9/SKILL.md

Migrate a .NET 8 project to .NET 9 and resolve all breaking changes. USE FOR: upgrading TargetFramework from net8.0 to net9.0, fixing build errors after updating the .NET 9 SDK, resolving behavioral changes in .NET 9 / C# 13 / ASP.NET Core 9 / EF Core 9, replacing BinaryFormatter (now always throws), resolving SYSLIB0054-SYSLIB0057, adapting to params span overload resolution, fixing C# 13 compiler changes, updating HttpClientFactory for SocketsHttpHandler, and resolving EF Core 9 migration/Cosmos DB changes. DO NOT USE FOR: .NET Framework migrations, upgrading from .NET 7 or earlier, greenfield .NET 9 projects, or cosmetic modernization unrelated to the upgrade.

migrate-dotnet9-to-dotnet10skills/migrate-dotnet9-to-dotnet10/SKILL.md

Migrate a .NET 9 project or solution to .NET 10 and resolve all breaking changes. USE FOR: upgrading TargetFramework from net9.0 to net10.0, fixing build errors after updating the .NET 10 SDK, resolving source and behavioral changes in .NET 10 / C# 14 / ASP.NET Core 10 / EF Core 10, updating Dockerfiles for Debian-to-Ubuntu base images, resolving obsoletion warnings (SYSLIB0058-SYSLIB0062), adapting to SDK/NuGet changes (NU1510, PrunePackageReference), migrating System.Linq.Async to built-in AsyncEnumerable, fixing OpenApi v2 API changes, cryptography renames, and C# 14 compiler changes (field keyword, extension keyword, span overloads). DO NOT USE FOR: .NET Framework migrations, upgrading from .NET 8 or earlier (use migrate-dotnet8-to-dotnet9 first), greenfield .NET 10 projects, or cosmetic modernization. LOADS REFERENCES: csharp-compiler, core-libraries, sdk-msbuild (always); aspnet-core, efcore, cryptography, extensions-hosting, serialization-networking, winforms-wpf, containers-interop (selective).

migrate-nullable-referencesskills/migrate-nullable-references/SKILL.md

Enable nullable reference types in a C# project and systematically resolve all warnings. USE FOR: adopting NRTs in existing codebases, file-by-file or project-wide migration, fixing CS8602/CS8618/CS86xx warnings, annotating APIs for nullability, cleaning up null-forgiving operators, upgrading dependencies with new nullable annotations. DO NOT USE FOR: projects already fully migrated with zero warnings (unless auditing suppressions), fixing a handful of nullable warnings in code that already has NRTs enabled, suppressing warnings without fixing them, C# 7.3 or earlier projects. INVOKES: Get-NullableReadiness.ps1 scanner script.

thread-abort-migrationskills/thread-abort-migration/SKILL.md

Guides migration of .NET Framework Thread.Abort usage to cooperative cancellation in modern .NET. USE FOR: modernizing code that calls Thread.Abort, catching ThreadAbortException, replacing Thread.ResetAbort, replacing Thread.Interrupt for thread termination, resolving PlatformNotSupportedException or SYSLIB0006 after retargeting to .NET 6+, migrating ASP.NET Response.End or Response.Redirect(url, true) which internally call Thread.Abort. DO NOT USE FOR: code that only uses Thread.Join, Thread.Sleep, or Thread.Start without any abort, interrupt, or ThreadAbortException usage — these APIs work identically in modern .NET and need no migration. Also not for projects staying on .NET Framework, or Thread.Abort usage inside third-party libraries you do not control.

Plugin manifests2

external-sources/upstreams/dotnet-skills/dotnet-upgrade/.codex-plugin/plugin.json
{
  "name": "dotnet-upgrade",
  "version": "0.1.1",
  "description": "Skills for migrating and upgrading .NET projects across framework versions, language features, and compatibility targets.",
  "skills": [
    "./skills/"
  ]
}
external-sources/upstreams/dotnet-skills/dotnet-upgrade/.claude-plugin/plugin.json
{
  "name": "dotnet-upgrade",
  "version": "0.1.1",
  "description": "Skills for migrating and upgrading .NET projects across framework versions, language features, and compatibility targets.",
  "skills": [
    "./skills/"
  ]
}

If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.

[dotnet-upgrade on Agent Plugins Marketplace](https://pluginsmp.com/plugins/dotnet-upgrade)