Build, debug, modernize, or review ASP.NET Core applications with correct hosting, middleware, security, configuration, logging, and deployment patterns on current .NET.
Search every .NET skill
This is the full skill directory, with search, collection filters, and a dedicated page for every skill. For architecture blueprints and production workflows, explore building AI agents with .NET or partner with our .NET AI agent development team.
All skills
Use collection filters or a direct search query to narrow the catalog. Every card links to a dedicated skill page.
Build, upgrade, and operate Aspire 13.5.x C# or TypeScript application hosts with the current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, MCP, and deployment…
Build and debug Avalonia 11/12 .NET applications with XAML, compiled bindings, MVVM, custom controls, desktop lifetimes, and platform publishing.
Build, review, or migrate Azure Functions in .NET with correct execution model, isolated worker setup, bindings, DI, and Durable Functions patterns.
Build and review Blazor applications across server, WebAssembly, web app, and hybrid scenarios with correct component design, state flow, rendering, and hosting choices.
Maintain or migrate EF6-based applications with realistic guidance on what to keep, what to modernize, and when EF Core is or is not the right next step.
Design, tune, or review EF Core data access with proper modeling, migrations, query translation, performance, and lifetime management for modern .NET applications.
Build, review, or migrate .NET MAUI applications across Android, iOS, macOS, and Windows with correct cross-platform UI, platform integration, and native packaging assumptions.
Use ML.NET to train, evaluate, or integrate machine-learning models into .NET applications with realistic data preparation, inference, and deployment expectations.
Build .NET AI agents, harnesses, and multi-agent workflows with Microsoft Agent Framework using the right agent type, sessions, tools, workflows, hosting protocols, and…
Design and implement Minimal APIs in ASP.NET Core using handler-first endpoints, route groups, filters, and lightweight composition suited to modern .NET services.
Comprehensive guide for developing in the Astro monorepo.
Guides conversion of a pre-.NET 8 Blazor Server app into a .NET 8+ Blazor Web App.
Guides creation and modification of ASP.NET Core Web API endpoints with correct HTTP semantics, OpenAPI metadata, and error handling.
Create or review Blazor components (.razor files) with correct architecture.
Build forms, validate data, and react to user input in Blazor.
Add authentication and authorization to a Blazor Web App, accounting for the app's render mode.
Share state between components that don't have a direct parent-child parameter relationship, using cascading values, scoped services with change events, or CascadingValueSource…
Create a new ASP.NET Core web application or web site using Blazor.
Call APIs, load data into components, and handle the async lifecycle in Blazor.
Plan complex Blazor UI features by decomposing them into focused components.
Make interactive Blazor components work correctly with prerendering.
Add, configure, or review Ignite UI for Blazor Lite component support in Blazor applications.
Add, review, or fix JavaScript interop in Blazor components.
Diagnoses and fixes .NET MAUI development environment issues.
.NET MAUI app lifecycle guidance — the four app states, cross-platform Window lifecycle events (Created, Activated, Deactivated, Stopped, Resumed, Destroying), platform-specific…
Guidance for implementing CollectionView in .NET MAUI apps — data display, layouts (list & grid), selection, grouping, scrolling, empty views, templates, incremental loading…
Guidance for .NET MAUI XAML and C# data bindings — compiled bindings, INotifyPropertyChanged / ObservableObject, value converters, binding modes, multi-binding, relative…
Guidance for configuring dependency injection in .NET MAUI apps — service registration in MauiProgram.cs, lifetime selection (Singleton / Transient / Scoped), constructor…
.NET MAUI safe area and edge-to-edge layout guidance for .NET 10+.
Guide for implementing Shell-based navigation in .NET MAUI apps.
Guide for theming .NET MAUI apps — light/dark mode via AppThemeBinding, ResourceDictionary theme switching, DynamicResource bindings, system theme detection, and user theme…
Create, modify, debug, or review Windows Forms applications only when the request contains a concrete Windows Forms marker.
Design Microsoft Orleans systems from each primitive's purpose and failure model.
Build AI-enabled .NET applications with Semantic Kernel using services, plugins, prompts, and function-calling patterns that remain testable and maintainable.
Use SharpConsoleUI to build full terminal (TUI) applications in .NET — equally suited to full-screen single-window apps and multi-window desktops with overlapping draggable…
Implement or review SignalR hubs, streaming, reconnection, transport, and real-time delivery patterns in ASP.NET Core applications.
Comprehensive guide for developing WebGPU-enabled Three.js applications using TSL (Three.js Shading Language).
Build cross-platform .NET applications with Uno Platform targeting WebAssembly, iOS, Android, macOS, Linux, and Windows from a single XAML/C# codebase.
Work on WCF services, clients, bindings, contracts, and migration decisions for SOAP and multi-transport service-oriented systems on .NET Framework or compatible stacks.
Build and modernize WPF applications on .NET with correct XAML, data binding, commands, threading, styling, and Windows desktop migration decisions.
Build or maintain controller-based ASP.NET Core APIs when the project needs controller conventions, advanced model binding, validation extensions, OData, JsonPatch, or existing…
Build, maintain, or modernize Windows Forms applications with practical guidance on designer-driven UI, event handling, data binding, MVP separation, and migration to modern .NET.
Build or review WinUI 3 applications with the Windows App SDK, including MVVM patterns, packaging decisions, navigation, theming, windowing, and interop boundaries with other…
Build long-running .NET background services with `BackgroundService`, Generic Host, graceful shutdown, configuration, logging, and deployment patterns suited to workers and…
Maintain or assess Workflow Foundation-based solutions on .NET Framework, especially where long-lived process logic or legacy designer artifacts still matter.
Build or review gRPC services and clients in .NET.
Use the open-source free `ArchUnitNET` library for architecture rules in .NET tests.
Expert knowledge of the libvlc C API (3.x and 4.x), the multimedia framework behind VLC media player.
Build or consume Model Context Protocol (MCP) servers and clients in .NET using the official MCP C# SDK, including stdio, Streamable HTTP, tools, prompts, resources, and…
Implement the Model-View-ViewModel pattern in .NET applications with proper separation of concerns, data binding, commands, and testable ViewModels using MVVM Toolkit.
Use ManagedCode.Communication when a .NET application needs explicit result objects, structured errors, and predictable service or API boundaries instead of exception-driven…
Use ManagedCode.MarkItDown when a .NET application needs deterministic document-to-Markdown conversion for ingestion, indexing, summarization, or content-processing workflows.
Use ManagedCode.MimeTypes when a .NET application needs consistent MIME type detection, extension mapping, and content-type decisions for uploads, downloads, or HTTP responses.
Integrate ManagedCode.Orleans.Graph into an Orleans-based .NET application for grain-call policy enforcement, deadlock detection, live-call telemetry, and Mermaid graph…
Integrate ManagedCode.Orleans.SignalR for grain-driven SignalR delivery, connection and group routing, offline user queues, and restart-safe state.
Use ManagedCode.Storage when a .NET application needs a provider-agnostic storage abstraction with explicit configuration, container selection, upload and download flows, and…
Use the Microsoft.Extensions stack correctly across Generic Host, dependency injection, configuration, logging, options, HttpClientFactory, and other shared infrastructure…
Build provider-agnostic .NET AI integrations with `Microsoft.Extensions.AI`, `IChatClient`, embeddings, middleware, structured output, vector search, and evaluation.
Use the open-source free `NetArchTest.Rules` library for architecture rules in .NET unit tests.
Generate or scaffold ASP.NET Core code — Razor Pages, Blazor components, MVC controllers, views, and Minimal API endpoints — without using ASP.NET Core CLI…
Review and optimize application data access that uses Entity Framework Core (EF Core).
Use Sep for high-performance separated-value parsing and writing in .NET, including delimiter inference, explicit parser/writer options, and low-allocation row/column workflows.
Use XTwitterScraper when a .NET application needs typed access to Xquik's X automation REST API for tweet search, user lookup, posting workflows, extraction jobs, monitors…
Design or review .NET solution architecture across modular monoliths, clean architecture, vertical slices, microservices, DDD, CQRS, and cloud-native boundaries without…
Review .NET changes for bugs, regressions, architectural drift, missing tests, incorrect async or disposal behavior, and platform-specific pitfalls before you approve or merge…
Primary router skill for broad .NET work.
Maintain classic ASP.NET applications on .NET Framework, including Web Forms, older MVC, and legacy hosting patterns, while planning realistic modernization boundaries.
Apply minimal MCAF repository governance when the user explicitly asks to adopt MCAF or change MCAF-specific rules.
Work on C# and .NET-adjacent mixed-reality solutions around HoloLens, MRTK, OpenXR, Azure services, and integration boundaries where .NET participates in the stack.
Route C# and .NET requests to the exact installed specialist or smallest dotnet/skills marketplace plugin.
Safely refactors C#/.NET code without changing behavior.
Use only for MSBuild failure investigation, build-performance analysis, or review of existing build XML/extension contracts.
Install a .NET SDK locally for safe preview testing, specific-version pinning, or reproducible team setups — without modifying the system-wide installation.
Guides technology selection and implementation of AI and ML features in .NET 8+ applications using ML.NET, Microsoft.Extensions.AI (MEAI), Microsoft Agent Framework (MAF), GitHub…
Run file-based C# apps with the .NET CLI when the user explicitly wants C#/.NET code without creating a project.
Correctly call native (C/C++) libraries from .NET using P/Invoke and LibraryImport.
Set up NuGet trusted publishing (OIDC) on a GitHub Actions repo — replaces long-lived API keys with short-lived tokens.
Design, implement, optimize, and review SIMD code in .NET.
Provides guidance on the new System.Diagnostics.Process APIs introduced in .NET 11: Process.Run, Process.RunAndCaptureText, Process.StartAndForget…
Imperative guidance for the System.Text.Json APIs added in .NET 11: the built-in `JsonNamingPolicy.PascalCase` naming policy, and the strongly-typed generic…
Audits .NET test mock usage by tracing each mock setup through the production code's execution path to find dead, unreachable, redundant, or replaceable mocks.
Detects duplicate boilerplate, copy-paste tests, and structural maintainability issues across .NET test suites.
Make .NET projects compatible with Native AOT and trimming by systematically resolving IL trim/AOT analyzer warnings.
Migrate a .NET 10 project or solution to .NET 11 and resolve all breaking changes.
Migrate a .NET 8 project to .NET 9 and resolve all breaking changes.
Migrate a .NET 9 project or solution to .NET 10 and resolve all breaking changes.
Enable nullable reference types in a C# project and systematically resolve all warnings.
Guides migration of .NET Framework Thread.Abort usage to cooperative cancellation in modern .NET.
Create or reorganize .NET solutions with clean project boundaries, repeatable SDK settings, and a maintainable baseline for libraries, apps, tests, CI, and local development.
Use the open-source free `coverlet` toolchain for .NET code coverage.
Write, run, or repair .NET tests that use MSTest.
Write, run, or repair .NET tests that use NUnit.
Analyze assertion quality, depth, variety, and false confidence in existing tests.
ALWAYS USE for test work that requires changes: write, add, generate, repair, or strengthen tests for existing code in xUnit, MSTest, NUnit, pytest, Vitest/Jest, Go, or another…
Legacy compatibility alias for the code-testing skill.
Provides file paths to language-specific extension files for the code-testing pipeline.
Activation requires either supplied .NET coverage reports/percentages/line, branch, or condition metrics, or an explicit request to collect .NET coverage for analysis.
Calculates CRAP (Change Risk Anti-Patterns) for a named .NET method, class, or file.
ACTIVATION PREREQUISITE: the request or discovered target must explicitly identify C#, .NET, `.cs`, or `.csproj`; otherwise stay dormant without invoking this skill.
Reference-only filter syntax for VSTest and MTP with MSTest, NUnit, xUnit v3, and TUnit.
MANDATORY for static source-to-test pairing: find or list source files/modules without corresponding tests, or suggest test locations from repository structure.
DO NOT USE when the target already consumes an injected interface or built-in abstraction such as IFileSystem or TimeProvider, even if the request says "generate a wrapper"; no…
Grade curated individual tests for readiness, A-F quality and improvements.
ALWAYS USE when asked to migrate, replace, or make testable existing C# static calls with a named wrapper or built-in abstraction: DateTime.UtcNow/Now or DateTimeOffset.UtcNow to…
Set up or recover MTP hot reload for a long-lived console-host edit/re-run loop in a Microsoft Testing Platform project.
Identify a .NET project's test platform, framework, command mode, and SDK-style vs classic project system.
ALWAYS USE before running .NET tests or answering with a test command or flags.
MUST USE when an existing .NET test project was excluded from a .slnf/CI solution filter, disappeared from .sln/.slnx discovery, or lost its production ProjectReference; also for…
Provides file paths to language-specific reference files for the test ANALYSIS skills (assertion-quality, test-anti-patterns, test-gap-analysis, test-smell-detection…
Audit a test file or suite; produce a severity-ranked diagnostic report.
Find caller-visible production changes existing tests would miss through pseudo-mutation analysis; verify candidates or close gaps only when requested.
Audits existing tests in any language using formal, research-backed test smell names and the testsmells.org 19-smell academic taxonomy.
Classifies existing tests by standard traits and reports their distribution.
Assess tests for an identified code or test change, feature, PR or commit.
MUST USE for C#/.NET deterministic tests that require the smallest production seam for DateTime/Task.Delay/File/Environment/Guid/Random, static API preservation, nested/parallel…
ALWAYS USE when asked to fix, rewrite, update, improve, modernize, show corrected code for, or explain existing MSTest tests or MSTest-specific configuration.
Use this skill before answering or editing whenever an MSTest v1/v2 project is being upgraded or repaired for v3.
Use this skill before answering, planning, or editing any MSTest 3.x-to-4.x upgrade or post-upgrade failure.
Convert .NET tests from NUnit 3/4 to MSTest v4 while preserving VSTest or MTP.
Use this skill before answering, planning, or editing whenever .NET tests or CI are switching from VSTest to Microsoft.Testing.Platform (MTP), or an MTP migration behaves…
Convert .NET tests from xUnit.net v2/v3 to MSTest v4 while preserving VSTest or MTP.
Migrate .NET test projects from xUnit.net v2 to xunit.v3 and fix v3 breaks.
Add, repair, or review Playwright visual regression tests for browser-facing .NET apps, including screenshot baselines, Pixelmatch thresholds, deterministic rendering, and GitHub…
Use the open-source free `Stryker.NET` mutation testing tool for .NET.
Write, run, or repair .NET tests that use TUnit.
Write, run, or repair .NET tests that use xUnit with the right package, CLI, and runner guidance.
Use a repo-root `.editorconfig` to configure free .NET analyzer and style rules.
Use the open-source free `Asynkron.Profiler` dotnet tool for CLI-first CPU, allocation, exception, contention, and heap profiling of .NET commands or existing trace artifacts.
Use Biome in .NET repositories that ship Node-based frontend assets and want a fast combined formatter-linter-import organizer for JavaScript, TypeScript, CSS, JSON, GraphQL, or…
Use the open-source free `CSharpier` formatter for C# and XML.
Use Chous in .NET repositories that ship sizeable frontend codebases and want file-structure linting, naming convention enforcement, and folder-layout policy as a CLI gate.
Use Chrome DevTools MCP from .NET agents and .NET-focused repos to inspect, debug, and automate Chrome through an MCP client.
Use the free built-in .NET SDK analyzers and analysis levels with gradual Roslyn warning promotion.
Use the open-source CodeQL ecosystem for .NET security analysis.
Use free built-in .NET maintainability analyzers and code metrics configuration to find overly complex methods and coupled code.
Use dotnet-diagnostics-mcp for MCP-driven .NET CPU, allocation, GC, and test-host profiling.
Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets.
Write, review, or modernize F# code in .NET repositories with functional-first design, algebraic data types, pattern matching, pipelines, async workflows, project ordering, and…
Use F# Interactive (`dotnet fsi`) for .NET exploration, scriptable experiments, package-backed .fsx workflows, quick data transforms, and reproducible command-line probes.
Format or verify trusted .NET projects with the SDK-provided `dotnet format` command.
Use `graphify-dotnet` to generate codebase knowledge graphs, architecture snapshots, and exportable repository maps from .NET or polyglot source trees, with optional AI-enriched…
Use HTMLHint in .NET repositories that ship static HTML output or standalone frontend templates.
Use Metalint in .NET repositories that ship Node-based frontend assets and want one CLI entrypoint over several underlying linters.
Use the open-source free `Meziantou.Analyzer` package for design, usage, security, performance, and style rules in .NET.
Write modern, version-aware C# for .NET repositories while staying compatible with the repo's target framework and language-version policy.
Inspect and update NuGet package families using ManagedCode NuGetPackageManager, the nuget-manager CLI, or its VS Code extension.
Route gh-aw workflow design/create/debug/upgrade requests to the right prompts.
Author and review GitHub Actions workflow YAML safely so syntactically-valid YAML can't ship a workflow that GitHub Actions refuses to run.
Creates VS Code custom agent files (.agent.md) for specialized AI personas with tools, instructions, and handoffs.
Scaffolds new agent skills for the dotnet/skills repository.
Scaffolds eval.yaml evaluation specs for skills, custom agents, and redistributable gh-aw workflow packages in the dotnet/skills repository.
Scans .NET code for ~50 performance anti-patterns across async, memory, strings, collections, LINQ, regex, serialization, and I/O with tiered severity classification.
Symbolicate the .NET runtime frames in an Android tombstone file.
Symbolicate .NET runtime frames in Apple platform .ips crash logs (iOS, tvOS, Mac Catalyst, macOS).
Diagnoses .NET Framework CLR activation issues using CLR activation logs (CLRLoad logs) produced by mscoree.dll.
Guide developers through capturing diagnostic artifacts to diagnose production .NET performance issues.
Configure and collect crash dumps for modern .NET applications.
Activate this skill when BenchmarkDotNet (BDN) is involved in the task — creating, running, configuring, or reviewing BDN benchmarks.
Diagnoses and fixes skills in the dotnet/skills repository that lose to their own baseline, fail to activate, time out, or return "no credible improvement".
Analyze MSBuild binary logs to diagnose build failures.
Generate MSBuild binary logs (binlogs) for build diagnostics and analysis.
Analyze an MSBuild solution, solution filter, or Build.proj that schedules multiple project files.
Establish MSBuild/.NET build performance baselines before optimizing.
Diagnose MSBuild build performance bottlenecks using binary log analysis.
Detects MSBuild projects with conflicting OutputPath or IntermediateOutputPath.
Choosing an MSBuild CopyToOutputDirectory / CopyToPublishDirectory mode: Never, PreserveNewest, Always, and IfDifferent (MSBuild 17.13+), plus $(SkipUnchangedFilesOnCopyAlways).
USE ONLY for (1) two or more projects with repeated MSBuild policy, targets, or package versions, or (2) an existing Directory.Build.props/targets/rsp hierarchy with an import…
Guide for diagnosing and improving MSBuild project evaluation performance.
Own MSBuild import and hook discovery.
Own MSBuild generated-artifact integration.
Guide for optimizing MSBuild incremental builds.
Own concrete MSBuild ItemGroup and item-expression questions.
DO NOT INVOKE when the primary request explicitly asks to convert, migrate, modernize, or rewrite a legacy/old-style project to SDK style; use msbuild-modernization.
Guide for modernizing and migrating MSBuild project files to SDK-style format.
Diagnose and fix concrete MSBuild property defects in projects and existing shared-file hierarchies.
Guide for interpreting ResolveProjectReferences time in MSBuild performance summaries.
Canonical patterns for writing custom MSBuild targets.
Convert .NET projects and solutions (.sln, .slnx) to NuGet Central Package Management (CPM) using Directory.Packages.props.
Guides creation and validation of custom dotnet new templates from existing projects.
Compares two or more dotnet new templates side by side to help users choose between them based on parameters, feature support, frameworks, and classifications.
Helps find, inspect, and compare (at a high level) .NET project templates.
Creates .NET projects from templates with validated parameters, smart defaults, Central Package Management adaptation, and latest NuGet version resolution.
Applies cross-parameter default rules when creating .NET projects with dotnet new, filling gaps consistently without overriding values the user set explicitly.
Validates custom dotnet new templates for correctness before publishing.
Use the free official .NET diagnostics CLI tools for profiling and runtime investigation in .NET repositories.
Set up or refine open-source .NET code-quality gates for CI: formatting, `.editorconfig`, SDK analyzers, third-party analyzers, coverage, mutation testing, architecture tests…
Use the open-source free `QuickDup` clone detector for .NET repositories.
Use the free official JetBrains ReSharper Command Line Tools for .NET repositories.
Use the open-source free `ReportGenerator` tool for turning .NET coverage outputs into HTML, Markdown, Cobertura, badges, and merged reports.
Use the open-source free `Roslynator` analyzer packages and optional CLI for .NET.
Use Roslynk for semantic inspection and edits of *.cs, *.razor and *.cshtml solution files.
Use SonarJS-derived rules in .NET repositories that ship JavaScript or TypeScript frontends and need deeper bug-risk, code-smell, or cognitive-complexity checks than a minimal…
Use the open-source free `StyleCop.Analyzers` package for naming, layout, documentation, and style rules in .NET projects.
Use Stylelint in .NET repositories that ship CSS, SCSS, or other stylesheet assets alongside web frontends.
Use the open-source free `cloc` tool for line-count, language-mix, and diff statistics in .NET repositories.
Use `pvanalyze` to inspect existing .NET `.nettrace` files from the command line, including GC, JIT, CPU stacks, allocation, DATAS, events, exceptions, timeline, and call-tree…
Use webhint in .NET repositories that ship browser-facing frontends.
No skills match this search yet.