migrating-powershell-sdk

Automate migration of legacy PowerShell SDK references to modern .NET.

19|2|Updated May 13, 2026
One-click install
npx skills add https://github.com/microsoft/upgrade-agent-plugins --skill migrating-powershell-sdk
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: migrating-powershell-sdk
Source: https://github.com/microsoft/upgrade-agent-plugins/tree/main/plugins/upgrade-agent/extenders/upgrade-dotnet/upgrade/skills/lazy/libraries/migrating-powershell-sdk
Command: npx skills add https://github.com/microsoft/upgrade-agent-plugins --skill migrating-powershell-sdk

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill automates the migration of legacy System.Management.Automation (PowerShell SDK) references from .NET Framework to modern .NET, simplifying the upgrade process.

Core Features & Use Cases

  • Legacy SDK Migration: Converts obsolete Windows PowerShell SDK references to the cross-platform System.Management.Automation NuGet package.
  • Target Framework Compatibility: Ensures compatibility with .NET 6+ and supports dual-targeting for Windows PowerShell 5.1 and PowerShell 7+.
  • Use Case: Ideal for developers who need to upgrade PowerShell cmdlet projects from .NET Framework to modern .NET, ensuring seamless integration and functionality.

Quick Start

Migrate your PowerShell SDK to .NET 6+ using the 'migrating-powershell-sdk' skill.

Frequently Asked Questions about migrating-powershell-sdk

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

FAQPage Schema
How do I migrate legacy PowerShell SDK references to .NET 6+?

Migrating legacy PowerShell SDK references to .NET 6+ involves converting obsolete Windows PowerShell SDK references to the cross-platform System.Management.Automation NuGet package. This process requires analyzing project references and determining correct package versions.

Can I dual-target Windows PowerShell 5.1 and PowerShell 7+ in a migrated project?

Yes, dual-targeting Windows PowerShell 5.1 and PowerShell 7+ is supported during migration. The process ensures target framework compatibility by configuring your project to support both environments using modern .NET.

What is the System.Management.Automation NuGet package used for in SDK migration?

The System.Management.Automation NuGet package replaces obsolete legacy Windows PowerShell SDK references. It provides a cross-platform reference that enables your cmdlet projects to run seamlessly on modern .NET versions.

How do I determine the correct package version when upgrading PowerShell cmdlet projects?

Determining the correct package version requires analyzing your existing project references during migration. The process targets .NET 6+ and ensures the selected System.Management.Automation package supports your required PowerShell versions.

Does migrating the PowerShell SDK to modern .NET affect cross-platform compatibility?

Migrating the PowerShell SDK to modern .NET enhances cross-platform compatibility. By converting legacy references to the System.Management.Automation NuGet package, your projects gain support across Windows PowerShell 5.1 and PowerShell 7+ environments.

When do I need to migrate from the .NET Framework PowerShell SDK?

You need to migrate from the .NET Framework PowerShell SDK when upgrading legacy cmdlet projects to modern .NET. This migration is necessary to ensure cross-platform functionality and seamless integration with .NET 6+ and PowerShell 7+.