Identifies the specific .NET app model and routes the task to the correct specialized skill.
Install
mkdir -p .claude/skills/dotnet && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/9554" && unzip -o skill.zip -d .claude/skills/dotnet && rm skill.zipInstalls to .claude/skills/dotnet
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Primary router skill for broad .NET work. Classify the repo by app model and cross-cutting concern first, then switch to the narrowest matching .NET skill instead of staying at a generic layer.Key capabilities
- →Detect .NET stack
- →Route to specialized skills
- →Validate build workflows
How it works
Classifies the .NET stack and routes to the narrowest matching skill.
Inputs & outputs
When to use dotnet
- →Determine which .NET framework to use for a new feature
- →Debug build issues in a multi-project .NET solution
- →Initiate a refactor across different .NET layers
About this skill
.NET Router Skill
Trigger On
- the user asks for general
.NEThelp without naming a narrower framework or tool - implementing, debugging, reviewing, or refactoring C# or
.NETcode in a repo with multiple app models or frameworks - deciding which
.NETskill should own a task before editing code - tasks that combine platform work with testing, quality, architecture, setup, or migration decisions
Workflow
- Detect the real stack first:
- target frameworks and SDK version
LangVersion- project SDKs and workload hints
- hosting model and app entry points
- test framework and runner
- analyzers, formatters, coverage, and CI quality gates
- Route to the narrowest platform skill as soon as the stack is known:
- Web:
dotnet-aspnet-core,dotnet-minimal-apis,dotnet-web-api,dotnet-blazor,dotnet-signalr,dotnet-grpc - Cloud and hosting:
dotnet-aspire,dotnet-azure-functions,dotnet-worker-services - Desktop and client:
dotnet-maui,dotnet-wpf,dotnet-winforms,dotnet-winui - Data and distributed:
dotnet-entity-framework-core,dotnet-entity-framework6,dotnet-orleans - AI and agentic:
dotnet-semantic-kernel,dotnet-microsoft-extensions-ai,dotnet-microsoft-agent-framework,dotnet-mlnet,dotnet-mixed-reality - Legacy:
dotnet-legacy-aspnet,dotnet-wcf,dotnet-workflow-foundation
- Web:
- Route cross-cutting work to the companion skill instead of keeping it inside generic
.NETadvice:- project bootstrap or repo shape:
dotnet-project-setup,dotnet-architecture - frontend asset analysis in mixed
.NETplus Node repos:dotnet-eslint,dotnet-stylelint,dotnet-htmlhint,dotnet-webhint,dotnet-biome,dotnet-sonarjs,dotnet-metalint,dotnet-chous - code review:
dotnet-code-review - language features:
dotnet-modern-csharp - testing:
dotnet-tunit,dotnet-xunit,dotnet-mstest - format, analyzers, coverage, and CI:
dotnet-format,dotnet-code-analysis,dotnet-quality-ci,dotnet-coverlet,dotnet-reportgenerator - maintainability and architecture rules:
dotnet-complexity,dotnet-netarchtest,dotnet-archunitnet
- project bootstrap or repo shape:
- If more than one specialized skill applies, prefer the one closest to the user-visible behavior first, then pull in the quality or tooling skill second.
- Do not stop at this skill once a narrower match exists. This skill should classify and hand off, not become a generic dumping ground.
- After code changes, validate with the repository's actual build, test, and quality workflow instead of generic
.NETcommands.
Routing Heuristics
- If the repo contains
Microsoft.NET.Sdk.Web, start from a web skill, not generic.NET. - If the repo contains Blazor, Razor Components, or
.razorpages, preferdotnet-blazor. - If the repo contains
package.json, frontend lint configs, or browser-facing asset pipelines inside the.NETsolution, prefer the dedicated frontend analysis skills instead of generic.NET. - If the repo contains Orleans grains or silo hosting, prefer
dotnet-orleans. - If the repo is mostly analyzers, CI, or coverage work, prefer the quality skill directly.
- If the user asks about “which skill should I use?”, answer with the narrowest matching skill and explain why in one short sentence.
- If no narrower skill matches, keep the work here and stay explicit about the missing specialization.
Deliver
- the correct specialized skill choice for the task
- repo-compatible code or documentation changes that stay aligned with the detected stack
- validation evidence that matches the real project runner and quality toolchain
Validate
- the chosen downstream skill actually exists in the catalog
- platform assumptions match project SDKs, packages, and workloads
- generic guidance has been replaced by framework-specific guidance whenever possible
- runner-specific commands are not mixed incorrectly
- language or runtime features are only used when the repo supports them
Documentation
References
references/routing.md- Decision tree for routing tasks to specialized .NET skills, including app model classification and cross-cutting concern handling.references/detection.md- Project detection patterns for identifying SDK types, target frameworks, workloads, language versions, and app models.
When not to use it
- →Generic dumping ground
- →Ignoring specialized skills
Prerequisites
Limitations
- →Requires .NET repository
- →Do not stop at this skill
How it compares
Prevents generic advice by routing to specialized platform skills immediately.
Compared to similar skills
dotnet side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| dotnet (this skill) | 0 | 3mo | No flags | Intermediate |
| csharp-developer | 43 | 2mo | No flags | Advanced |
| csharp-pro | 9 | 3mo | No flags | Intermediate |
| dotnet-architect | 12 | 3mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by managedcode
View all by managedcode →You might also like
csharp-developer
zenobi-us
Expert C# developer specializing in modern .NET development, ASP.NET Core, and cloud-native applications. Masters C# 12 features, Blazor, and cross-platform development with emphasis on performance and clean architecture.
csharp-pro
sickn33
Write modern C# code with advanced features like records, pattern matching, and async/await. Optimizes .NET applications, implements enterprise patterns, and ensures comprehensive testing. Use PROACTIVELY for C# refactoring, performance optimization, or complex .NET solutions.
dotnet-architect
sickn33
Expert .NET backend architect specializing in C#, ASP.NET Core, Entity Framework, Dapper, and enterprise application patterns. Masters async/await, dependency injection, caching strategies, and performance optimization. Use PROACTIVELY for .NET API development, code review, or architecture decisions.
orchardcore-module-creator
OrchardCMS
Creates new OrchardCore modules with proper structure, manifest, startup, and patterns. Use when the user needs to create a new module, add content parts, fields, drivers, handlers, or admin functionality.
dotnet
managedcode
Primary router skill for broad .NET work. Classify the repo by app model and cross-cutting concern first, then switch to the narrowest matching .NET skill instead of staying at a generic layer.
add-feature
adamint
Adds new features to the application including API endpoints, React pages, components, and curriculum content. USE FOR: implementing new features, adding API endpoints, creating React components, adding curriculum content, writing unit/API tests. DO NOT USE FOR: E2E browser tests (use add-e2e-tests