convert-to-cpm

Convert .NET projects to NuGet Central Package Management using Directory.Packages.props.

Updated Jul 20, 2026
One-click install
npx skills add https://github.com/Netcodr81/kinetic-reports --skill convert-to-cpm-netcodr81
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: convert-to-cpm
Source: https://github.com/Netcodr81/kinetic-reports/tree/main/.github/skills/convert-to-cpm
Command: npx skills add https://github.com/Netcodr81/kinetic-reports --skill convert-to-cpm-netcodr81

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Package versions scattered across many .csproj, .fsproj, and .vbproj files are hard to govern, drift out of sync, and produce version conflicts. This Skill migrates .NET projects and solutions to NuGet Central Package Management (CPM), centralizing all package versions into a single Directory.Packages.props file. ## Core Features & Use Cases - Guided CPM conversion: Audits package references, resolves version conflicts with user input, creates Directory.Packages.props, and strips Version attributes from project files. - Baseline validation: Captures pre- and post-conversion builds with binlogs and JSON package lists to prove the conversion is version-neutral. - Structured report: Produces a shareable convert-to-cpm.md report with conflict resolutions, package comparison tables, risk assessment, and follow-up items such as security advisories. - Use Case: A team with 15 projects referencing different versions of System.Text.Json asks to align NuGet versions; the Skill audits the conflicts, centralizes versions, validates the build, and documents every change. ## Quick Start Convert my solution MyApp.sln to NuGet Central Package Management and generate a conversion report.

Frequently Asked Questions about convert-to-cpm

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

FAQPage Schema
How do I convert a .NET solution to Central Package Management?▼

Central Package Management conversion audits all PackageReference items, creates a Directory.Packages.props file with PackageVersion entries, and removes Version attributes from project files. The Skill validates the result with a clean restore and build, then compares package lists before and after.

How do I resolve NuGet package version conflicts across multiple projects?▼

Version conflicts are resolved by aligning to the highest version in use, aligning to the lowest, or using VersionOverride for projects that must keep a different version. Each conflict is presented individually with affected projects and trade-offs, and the user decides per conflict.

Can I use Central Package Management with packages.config projects?▼

No, Central Package Management requires the PackageReference format. Projects using packages.config must first be migrated to PackageReference using Visual Studio's migration tooling or dotnet migrate before CPM conversion can proceed.

What do NuGet errors NU1008 and NU1010 mean during CPM migration?▼

NU1008 means a PackageReference still has a Version attribute while CPM is enabled; remove it or use VersionOverride. NU1010 means a PackageReference lacks a corresponding PackageVersion entry in Directory.Packages.props, so add the missing entry.

Does CPM conversion change my package versions?▼

The conversion never upgrades packages beyond the highest version already in use across the scope. Baseline and post-conversion package lists are compared to confirm version neutrality, and any intentional changes from conflict resolution are documented in the report.