Common Use Cases for dotnet/skills: Automating .NET Development with Agent Skills

The dotnet/skills repository provides Agent Skills that automate SDK installation, framework migrations, test upgrades, and build diagnostics for AI-assisted .NET development.

The dotnet/skills repository is a curated collection of Agent Skills that extend coding agents—including Copilot, Claude Code, Cursor, and Codex CLI—with deep .NET expertise. Each plugin implements self-contained skills formatted as markdown specifications that describe tasks, inputs, and step-by-step workflows for AI assistants. By leveraging these skills, development teams can automate complex .NET workflows, enforce consistent best practices, and accelerate project modernization without context switching.

Local .NET SDK Installation and Management

Managing local .NET SDK installations represents a foundational use case for the repository. The setup-local-sdk skill automates downloading specific .NET versions into project-local .dotnet/ folders, configuring global.json with the paths feature, and updating .gitignore to exclude the local runtime.

This skill resides in plugins/dotnet/skills/setup-local-sdk/SKILL.md. It guides agents through executing the official dotnet-install script with precise channel and quality flags, ensuring reproducible build environments across different machines.


# Add the marketplace and install the skill

/plugin marketplace add dotnet/skills
/plugin install setup-local-sdk@dotnet-agent-skills

# Verify installation

/skills

When invoked, the skill executes a workflow that downloads the install script, runs it with --channel and --quality flags, captures the installed version via ./.dotnet/dotnet --version, and generates a global.json file that prioritizes the local SDK.

Framework and Language Modernization

Migrating legacy codebases to modern .NET standards is a critical use case supported by specialized upgrade skills.

Nullable Reference Type Migration

The migrate-nullable-references skill in plugins/dotnet-upgrade/skills/migrate-nullable-references/SKILL.md detects existing project configurations and automatically adds #nullable enable directives where missing. It executes dotnet format with nullable-specific flags to safely transition codebases to null-safe paradigms without breaking existing functionality.

Test Framework Upgrades

For testing infrastructure modernization, the migrate-xunit-to-xunit-v3 skill in plugins/dotnet-test-migration/skills/migrate-xunit-to-xunit-v3/SKILL.md handles complex transitions between testing platforms. It parses project files, updates NuGet references from xUnit v2 to v3, rewrites test attributes, and validates the new Microsoft.Testing.Platform integration.


# Run the migration skill

dotnet skill migrate-nullable-references --project MyApp.csproj

Build System Diagnostics and Package Management

The repository provides deep integration with MSBuild and NuGet for troubleshooting and modernization.

MSBuild Issue Resolution

The resolve-project-references skill in plugins/dotnet-msbuild/skills/resolve-project-references/SKILL.md executes dotnet msbuild with diagnostic JSON output flags to identify failing targets and circular project-reference loops. It analyzes the build graph and suggests property-pattern improvements or local MSBuild server configurations for performance testing.

Central Package Management Conversion

The convert-to-cpm skill in plugins/dotnet-nuget/skills/convert-to-cpm/SKILL.md automates the transition to Central Package Management (CPM). It generates Directory.Packages.props at the repository root, migrates version numbers from individual <PackageReference> elements in project files, and runs dotnet restore to verify the centralized layout works correctly.


# Convert a project to CPM

dotnet skill convert-to-cpm --project MyLib.csproj

Web, Mobile, and Cloud Development

Specialized skills target modern application development frameworks with scaffolding and configuration automation.

ASP.NET Core and Blazor

The minimal-api-file-upload skill in plugins/dotnet-aspnetcore/skills/minimal-api-file-upload/SKILL.md scaffolds minimal API endpoints with file handling capabilities. It edits Program.cs, adds required package references like Microsoft.AspNetCore.Http.Features, and configures OpenTelemetry instrumentation when requested by the developer.

.NET MAUI Development

For cross-platform mobile developers, the maui-theming skill in plugins/dotnet-maui/skills/maui-theming/SKILL.md manages XAML resource dictionaries, configures Shell navigation patterns, and implements safe-area handling for iOS and Android platforms. It ensures platform-specific assets are present in the correct locations while updating MauiProgram.cs to register theme resources.

Specialized Engineering and Research

The repository includes skills for niche but critical development tasks and experimental scenarios.

Template Engine Operations

The template-validation skill in plugins/dotnet-template-engine/skills/template-validation/SKILL.md parses .template.config folders, validates template definitions against naming collision rules, and automates dotnet new --install workflows for teams authoring custom project templates.

AI-Assisted Technology Selection

Located in plugins/dotnet-ai/technology-selection/, these skills analyze project requirements to recommend appropriate machine learning approaches. They distinguish between LLM implementations, vector search solutions, or traditional ML.NET classifiers for tabular data, scaffolding starter code based on the specific use case.

Experimental Research

The exp-test-maintainability skill in plugins/dotnet-experimental/skills/exp-test-maintainability/SKILL.md executes bespoke benchmarks to measure test code quality, SIMD vectorization opportunities, and mock usage patterns, producing JSON reports with actionable refactoring suggestions.

Repository Structure and Validation

All skills in the repository follow the Agent Skills standard (agentskills.io), making them consumable by any compliant agent. The repository maintains quality through a dedicated validation system.

Key architectural files include:

  • plugins/<plugin>/plugin.json – Declares plugin identifiers, versions, and entry points for agent discovery
  • plugins/<plugin>/skills/<skill>/SKILL.md – Contains the canonical skill definition with structured inputs, workflows, and edge-case handling
  • eng/skill-validator/src/Program.cs – A static analysis binary that checks skill syntax, detects missing required fields, and ensures runtime compatibility across different agent platforms

The validator guarantees that skills like setup-local-sdk and convert-to-cpm remain well-formed and produce consistent, reproducible behaviors regardless of which AI assistant executes them.

Summary

  • The dotnet/skills repository provides ready-to-use Agent Skills for automating complex .NET development tasks
  • Primary use cases include local SDK installation, framework migration, test framework upgrades, and MSBuild diagnostics
  • Skills cover Central Package Management conversion, ASP.NET Core scaffolding, and MAUI theming
  • All skills follow the Agent Skills standard and are validated by the eng/skill-validator tool located in eng/skill-validator/src/Program.cs
  • Developers invoke skills through natural language within Copilot, Claude Code, or compatible agents, or via CLI commands like dotnet skill convert-to-cpm

Frequently Asked Questions

What is the dotnet/skills repository used for?

The dotnet/skills repository provides curated Agent Skills that teach AI coding assistants how to perform complex .NET development tasks. These skills automate workflows like installing specific .NET SDK versions into local directories, migrating projects to nullable reference types, and resolving MSBuild errors through standardized markdown specifications that any compliant agent can parse and execute.

How do I install and use a skill from dotnet/skills?

Install skills through your agent's plugin marketplace using commands like /plugin install setup-local-sdk@dotnet-agent-skills after adding the marketplace with /plugin marketplace add dotnet/skills. Once installed, invoke skills via natural language requests such as "Migrate this project to xUnit v3" or through explicit CLI patterns like dotnet skill migrate-nullable-references --project MyApp.csproj.

What types of .NET projects benefit most from these skills?

Projects undergoing modernization (upgrading from legacy .NET Framework or early .NET Core versions), microservices requiring consistent SDK versions via local installation, and enterprise codebases adopting Central Package Management see the most immediate value. Mobile developers using MAUI and teams implementing complex testing strategies with modern xUnit or MSTest platforms also benefit significantly from the automated migration paths and validation.

How are the skills in dotnet/skills validated for correctness?

The repository includes the skill-validator tool located in eng/skill-validator/src/Program.cs. This utility statically analyzes SKILL.md files and plugin.json manifests to ensure they contain required fields, valid syntax, and compatible structures before deployment, guaranteeing reliable behavior across different AI agent platforms including GitHub Copilot, Claude Code, and Cursor.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →