msbuild-modernization

Identify legacy MSBuild projects and guide migration to SDK-style format.

2|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/sayedihashimi/copilot-skill-eval --skill msbuild-modernization-sayedihashimi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: msbuild-modernization
Source: https://github.com/sayedihashimi/copilot-skill-eval/tree/main/examples/aspnet-razor-pages/plugins/dotnet-skills/dotnet-msbuild/skills/msbuild-modernization
Command: npx skills add https://github.com/sayedihashimi/copilot-skill-eval --skill msbuild-modernization-sayedihashimi

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Modernizes outdated MSBuild projects to the SDK-style format to reduce maintenance complexity and enable modern tooling.

Core Features & Use Cases

  • Guides the migration of legacy .csproj/.vbproj files to the SDK-style project format.
  • Helps identify legacy indicators such as ToolsVersion, explicit Compile Include entries, and packages.config, and recommends appropriate tooling (dotnet try-convert, Upgrade Assistant).
  • Supports incremental, safe migration with validation steps and best-practice recommendations for typical .NET projects.

Quick Start

Run the migration checklist on a sample legacy project to begin converting to SDK-style.

Frequently Asked Questions about msbuild-modernization

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate legacy MSBuild projects to SDK-style format?

Legacy MSBuild projects are identified by indicators like ToolsVersion, explicit Compile Include entries, or packages.config. Migrating them to SDK-style reduces maintenance complexity and enables modern .NET tooling.

How do I know if my .csproj or .vbproj file is a legacy MSBuild project?

Legacy .csproj or .vbproj files are identified by specific indicators: a ToolsVersion attribute, explicit Compile Include entries, or the presence of a packages.config file for dependency management.

What is the best way to convert a large .NET project to SDK-style?

For large .NET projects, the best way to convert to SDK-style is using an incremental migration workflow. This method outlines recommended toolchains and enforces validation steps to ensure a safe transition.

Should I use dotnet try-convert or Upgrade Assistant for .NET migration?

Both dotnet try-convert and Upgrade Assistant are recommended for .NET migration to SDK-style. The Skill guides you through applying these tools incrementally with validation steps and follow-up actions based on your project size.

Can I incrementally migrate legacy MSBuild files without breaking my build?

Yes, you can incrementally migrate legacy MSBuild files safely by following an enforced validation workflow. This process uses recommended tooling to convert projects step-by-step while checking for build integrity.