msbuild-modernization

Convert legacy MSBuild project files to SDK-style format.

1|Updated Feb 18, 2026
One-click install
npx skills add https://github.com/JaiminVadadoriya/Distributed-Cloud-Storage---Sync-Platform --skill msbuild-modernization-jaiminvadadoriya
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: msbuild-modernization
Source: https://github.com/JaiminVadadoriya/Distributed-Cloud-Storage---Sync-Platform/tree/main/.agents/skills/msbuild-modernization
Command: npx skills add https://github.com/JaiminVadadoriya/Distributed-Cloud-Storage---Sync-Platform --skill msbuild-modernization-jaiminvadadoriya

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires dotnet-try-convert, upgrade-assistant, and includes scripts (resource) components.

What problem does it solve?

This Skill simplifies the process of modernizing and migrating MSBuild project files to the SDK-style format, enhancing the build system's maintainability and performance.

Core Features & Use Cases

  • Legacy to SDK Conversion: Converts legacy .csproj files to the SDK-style format.
  • Automated Migration: Migrates packages.config to PackageReference and removes unnecessary boilerplate.
  • Quick Check: Identifies legacy projects based on file size and presence of certain attributes.
  • Use Case: Ideal for .NET developers looking to upgrade their projects to the latest SDK-style format for better performance and maintainability.

Quick Start

Run the msbuild-modernization skill in your MSBuild/.NET build context to convert your legacy .csproj files to SDK-style format.

Frequently Asked Questions about msbuild-modernization

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

FAQPage Schema
How do I convert legacy MSBuild project files to SDK-style format?

To convert legacy MSBuild project files to SDK-style format, use an automated migration process that replaces ToolsVersion and packages.config with Sdk and PackageReference, removing unnecessary boilerplate to enhance build system maintainability and performance.

What is the difference between packages.config and PackageReference in .NET projects?

Migrating from packages.config to PackageReference centralizes dependency management directly inside the .csproj file. This SDK-style migration reduces project file size and eliminates boilerplate, streamlining NuGet restoration within modern .NET builds.

Do I need dotnet try-convert and upgrade-assistant to migrate .csproj files?

Yes, migrating legacy .csproj files to the SDK style format requires both the dotnet try-convert and upgrade-assistant tools. These dependencies automate the conversion of legacy project structures and package management formats.

Can I identify legacy .NET projects automatically before attempting an SDK-style migration?

You can identify legacy .NET projects by checking the .csproj file size and looking for specific legacy attributes like ToolsVersion. Projects requiring migration typically exhibit these characteristics before converting to SDK-style format.

What is the best way to modernize MSBuild project files for better build performance?

The best way to modernize MSBuild project files for better build performance is migrating to the SDK-style format. This conversion removes unnecessary boilerplate and transitions dependency management to PackageReference for improved maintainability.