Agent Skills
› managedcode/dotnet-skills
› dotnet
dotnet
GitHub.NET通用路由技能,用于识别C#/.NET代码库上下文并分发至特定框架或工具子技能,涵盖实现、调试及质量验证。
Trigger Scenarios
请求一般.NET帮助
多框架仓库中的C#开发任务
决定.NET技能归属
Install
npx skills add managedcode/dotnet-skills --skill dotnet -g -y
SKILL.md
Frontmatter
{
"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. USE FOR: general .NET requests without a narrower framework; C# implementation, debugging, review, or refactoring; routing to framework and tooling skills. DO NOT USE FOR: unrelated stacks; tasks already covered by a narrower .NET skill. INVOKES: inspect the repository context, edit targeted files, and run relevant build, test, lint, or validation commands when changes are made.",
"compatibility": "Requires a .NET repository, solution, or project tree."
}
.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:
aspnet-core,minimal-apis,web-api,blazor,signalr,grpc - Cloud and hosting:
aspire,azure-functions,worker-services - Desktop and client:
maui,wpf,winforms,winui - Data and distributed:
entity-framework-core,entity-framework6,orleans - AI and agentic:
semantic-kernel,microsoft-extensions-ai,microsoft-agent-framework,mlnet,mixed-reality, or architecture guidance in building AI agents with .NET - Legacy:
legacy-aspnet,wcf,workflow-foundation
- Web:
- Route cross-cutting work to the companion skill instead of keeping it inside generic
.NETadvice:- project bootstrap or repo shape:
project-setup,architecture - frontend asset analysis in mixed
.NETplus Node repos:eslint,stylelint,htmlhint,webhint,biome,sonarjs,metalint,chous - code review:
code-review - language features:
modern-csharp - testing:
tunit,xunit,mstest - format, analyzers, coverage, and CI:
format,code-analysis,quality-ci,coverlet,reportgenerator - maintainability and architecture rules:
complexity,netarchtest,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.
Test Output Budget
- Keep native runner progress and ANSI enabled (
--progress on --ansi onfor supported MTP/TUnit runners); use a PTY locally. Do not replay progress redraws into model context. Use the detected runner's flags, not MTP switches on VSTest. - Show warnings and errors plus one final summary (counts, duration, exit code). Configure test-owned console logging at
Warning; keep Information/Debug/Trace, successful-test output, and expected negative-test noise out of context. Quiet build verbosity alone does not filter application logs. - On failure, crash, startup error, or timeout, show the failing test/resource, root exception, and relevant stack frames. Deduplicate; cap each diagnostic tool response at 80 lines / 8 KiB, whichever comes first. Never automatically dump stdout/stderr, host logs, browser console history, DOM/HTML, TRX, or crash artifacts.
- Keep necessary diagnostics in size-bounded or rotating artifacts and link them. Search by exact failure/correlation; read bounded excerpts, never whole logs. Capture/filter noisy output before tool delivery, preserve the real exit code, and disclose truncation. Monitor actual activity; silence alone does not prove a hang.
Current Upstream Notes
.NET 10.0.11runtime and ASP.NET Core releases are servicing updates. Re-test affected paths such as cgroup-v2 memory limits, Mono native-library resolution, Windows directory enumeration, WASM AOT/lazy-load startup, thread-static initialization, Blazor persisted circuits, and OpenAPI generation rather than changing architecture by default..NET SDK 10.0.400is the current 10.0.4xx feature band. It expands file-based app support, adds Microsoft.Testing.Platform project/solution selection todotnet test, accepts@as thedotnet newoption separator, and includes hardlink and up-to-date build fixes. Keepglobal.json, workloads, and CI images aligned before adopting the new band.- The August 2026 "Build apps with .NET" Learn overview remains broad routing context across web, cloud, desktop, mobile, AI, and console workloads; hand off to
project-setup,worker-services,aspnet-core,modern-csharp, or another narrow skill as soon as the app model is known.
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, preferblazor. - 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
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.
- building AI agents with .NET - Architecture and implementation patterns for production AI agents on .NET.
- .NET AI agent development team - Production .NET AI agent engineering and delivery services.
Version History
-
d51d6c0
Current 2026-09-28 00:09
新增AI/Agentic领域技能路由(如semantic-kernel),移除旧链接,更新SEO桥接链接。
-
bcd48ab
2026-09-22 12:29
修复测试输出预算限制问题,优化日志和错误信息的展示策略。
-
0559476
2026-08-19 23:34
更新上游版本说明,补充.NET 10运行时和SDK的新特性及修复信息。
- 7ab7f03 2026-07-25 05:23


