GitHub Copilot modernization is an interactive GitHub Copilot agent that adds capabilities to your development environment. This article answers frequently asked questions. For more information, see What is GitHub Copilot modernization.
The tool requires one of the following GitHub Copilot subscriptions:
- Copilot Free (Starting with Visual Studio 2026 version 18.1)
- Copilot Pro
- Copilot Pro+
- Copilot Business
- Copilot Enterprise
GitHub Copilot modernization is available in Visual Studio, Visual Studio Code, GitHub Copilot CLI, and on GitHub.com. For Visual Studio, it's included in Visual Studio 2026 (or Visual Studio 2022 version 17.14.17 and newer).
For more information about installation, Install GitHub Copilot modernization.
Modernization agent
What can the agent do?
GitHub Copilot modernization helps you upgrade your .NET (.NET, .NET Core, and .NET Framework) projects to newer versions of .NET. It also helps migrate services to Azure, upgrades dependencies, and fixes errors in code after migration. The agent performs the following steps in a Copilot chat session:
- Analyzes your projects and proposes a modernization plan.
- Runs a series of tasks to modernize your projects according to the plan.
- Operates in a working branch under a local Git repository.
- Fixes issues automatically during the code transformation.
- Reports progress and allows access to code changes and logs.
- Learns from your interactions during the session to improve subsequent transformations.
What limitations are there?
- The agent requires a local Git repository.
- The upgrade or migration suggestions aren't guaranteed to follow best practices.
- Code fixes and corrections you provide to Copilot during the upgrade process don't persist and aren't remembered for future upgrades.
Which model should I use?
Use a good coding model. Model availability is dependent on your Copilot subscription and environment. For a comparison of models, see GitHub Copilot AI model comparison.
Can I train the model based on my code base?
No. Unlike traditional AI tools where you might enter freeform prompts, the agent operates in a structured way. The AI is embedded in the build-and-fix process, so the prompts it uses are predefined and tied to the upgrade plan. You can't train it on your codebase, but it's used as context by the agent.
Can I customize or guide the agent?
The agent uses customization Copilot provides, such as instruction files and skills. Customization is based on what your Copilot supports. The agent includes 30+ built-in modernization skills that load automatically based on the technologies detected in your codebase. You can also create custom skills and scenarios. For more information, see Apply custom upgrade instructions.
If you manually adjust a fix, provide additional instructions in chat, or update the Markdown in the plan file, the agent learns from that interaction in the short term. Preferences and decisions are saved to scenario-instructions.md in the .github/upgrades/ folder so they persist across sessions.
Does the agent store my source code?
The agent never stores your codebase or uses your code to train the model. Once an upgrade or migration completes, the agent deletes session data.
Can I provide feedback?
Yes! There are two ways to provide feedback:
- In Visual Studio, use the Suggest a feature and Report a Problem features.
- File an issue at the @modernize-dotnet GitHub repository.
What data is collected?
The agent collects telemetry only about project types, intent to upgrade, and upgrade duration. The data is aggregated through your development environment and doesn't contain user-identifiable information. For more information about Microsoft's privacy policy, see Visual Studio Customer Experience Improvement Program.
Can I disable telemetry?
Yes. In Visual Studio, select Help > Privacy > Privacy Settings > "No, I would not like to participate." Telemetry settings might vary by development environment. Check your tool's privacy settings for more information.
Upgrade .NET apps
What can the agent upgrade?
GitHub Copilot modernization helps you upgrade your .NET projects or migrate them to Azure. The agent supports multiple scenarios beyond framework upgrades, including Aspire integration, SDK-style conversion, Newtonsoft.Json migration, SqlClient migration, Azure Functions upgrade, and Semantic Kernel to Agents migration. For a full reference, see Scenarios and skills reference.
The agent works with these project types:
- Azure Functions
- Console apps and class libraries
- Web technologies such as:
- MVC
- Blazor
- Razor Pages
- Web API
- Desktop technologies such as Windows Forms, Windows Presentation Foundation, and WinUI
- .NET MAUI and Xamarin
- Test projects such as MSTest, NUnit, and xUnit
- .NET Framework projects
The agent supports both C# and Visual Basic.
What .NET versions can I upgrade to?
The agent supports the following upgrade paths:
| Source | Target |
|---|---|
| .NET Framework (any version) | .NET 8 or later |
| .NET Core 1.x–3.x | .NET 8 or later |
| .NET 5 or later | .NET 8 or later |
Can I use the agent offline?
No. The agent requires an internet connection and the GitHub Copilot cloud infrastructure. The agent works with all Copilot subscription tiers, including the free tier.
Does the agent modify files outside the solution?
No. The agent only modifies files within your workspace and the .github/upgrades/ folder. Custom task data stays in your repository.
Can I partially accept the agent's changes?
Yes. Because each task is committed separately, you can cherry-pick specific commits by using standard Git commands. Review the commit history with git log --oneline and use git cherry-pick to select individual changes.
Migrate to Azure
What can the agent migrate?
The agent helps migrate and deploy your .NET applications to Azure, including:
- Web apps
- API apps
- Azure Functions
- Containerized applications
The migration scenarios include:
- Modernizing databases
- Storage
- Identity
- Messaging
- Event streaming
- Logging
- Security
For more information about these scenarios, see Predefined tasks for migration.
Can I monitor assessment progress?
Yes. Monitor the assessment progress through the Visual Studio interface. The agent provides real-time feedback and status updates on the migration process. Other development environments might offer different monitoring options.
In Visual Studio, monitor assessment progress by viewing the command-line output while the assessment runs:
- Go to View > Output to open the Output window.
- In the Output window, find the Show output from dropdown.
- Select AppModernizationExtension from the dropdown list.
- The command-line output from the assessment tool appears here, showing real-time progress.
Or, access the Output window with the keyboard shortcut Ctrl+Alt+O.
Related content
To learn more, see What is GitHub Copilot modernization?.