一键导入
dotnet
// 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.
// 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.
Use a repo-root `.editorconfig` to configure free .NET analyzer and style rules. Use when a .NET repo needs rule severity, code-style options, section layout, or analyzer ownership made explicit. Nested `.editorconfig` files are allowed when they serve a clear subtree-specific purpose.
Design or review .NET solution architecture across modular monoliths, clean architecture, vertical slices, microservices, DDD, CQRS, and cloud-native boundaries without over-engineering.
Use the open-source free `ArchUnitNET` library for architecture rules in .NET tests. Use when a repo needs richer architecture assertions than lightweight fluent rule libraries usually provide.
Use the free built-in .NET SDK analyzers and analysis levels with gradual Roslyn warning promotion. Use when a .NET repo needs first-party code analysis, `EnableNETAnalyzers`, `AnalysisLevel`, or warning-as-error policy wired into build and CI.
Use free built-in .NET maintainability analyzers and code metrics configuration to find overly complex methods and coupled code. Use when a repo needs cyclomatic complexity checks, maintainability thresholds, or complexity-driven refactoring gates.
Calculates CRAP (Change Risk Anti-Patterns) score for .NET methods, classes, or files. Use when the user asks to assess test quality, identify risky untested code, compute CRAP scores, or evaluate whether complex methods have sufficient test coverage. Requires code coverage data (Cobertura XML) and cyclomatic complexity analysis. DO NOT USE FOR: writing tests, general test execution unrelated to coverage/CRAP analysis, or general code coverage reporting without CRAP context.
| name | dotnet |
| description | 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. |
| compatibility | Requires a .NET repository, solution, or project tree. |
.NET help without naming a narrower framework or tool.NET code in a repo with multiple app models or frameworks.NET skill should own a task before editing codeLangVersionaspnet-core, minimal-apis, web-api, blazor, signalr, grpcaspire, azure-functions, worker-servicesmaui, wpf, winforms, winuientity-framework-core, entity-framework6, orleanssemantic-kernel, microsoft-extensions-ai, microsoft-agent-framework, mlnet, mixed-realitylegacy-aspnet, wcf, workflow-foundation.NET advice:
project-setup, architecture.NET plus Node repos: eslint, stylelint, htmlhint, webhint, biome, sonarjs, metalint, chouscode-reviewmodern-csharptunit, xunit, mstestformat, code-analysis, quality-ci, coverlet, reportgeneratorcomplexity, netarchtest, archunitnet.NET commands.Microsoft.NET.Sdk.Web, start from a web skill, not generic .NET..razor pages, prefer blazor.package.json, frontend lint configs, or browser-facing asset pipelines inside the .NET solution, prefer the dedicated frontend analysis skills instead of generic .NET.orleans.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.