# .ai/SKILLS.md - C# / .NET Skill Router Use this file to route tasks to focused skill files. ## Always Load - `.ai/skills/00-agent-operating-rules.md` - `.ai/skills/17-code-review-definition-of-done.md` ## Route by Task | Task type | Load these skills | |---|---| | Project setup, SDKs, CLI, solution layout, tools | `.ai/skills/01-dotnet-platform-tooling.md`, `.ai/skills/15-packaging-publishing-nuget-aot.md` | | C# syntax, variables, operators, strings, console apps | `.ai/skills/02-csharp-language-fundamentals.md`, `.ai/skills/03-types-values-nullability.md` | | Null handling, value/reference types, conversions | `.ai/skills/03-types-values-nullability.md`, `.ai/skills/04-control-flow-exceptions.md` | | Flow control, loops, pattern matching, errors | `.ai/skills/04-control-flow-exceptions.md` | | Functions, debugging, logging, tests | `.ai/skills/05-functions-debugging-testing.md` | | Classes, structs, records, properties, indexers | `.ai/skills/06-oop-types-records.md`, `.ai/skills/03-types-values-nullability.md` | | Interfaces, generics, inheritance, polymorphism, events | `.ai/skills/07-interfaces-generics-events-inheritance.md`, `.ai/skills/06-oop-types-records.md` | | Collections, numbers, strings, regex, BCL | `.ai/skills/08-common-dotnet-types.md` | | Files, directories, streams, JSON, XML | `.ai/skills/09-files-streams-serialization.md` | | EF Core, relational database models, querying | `.ai/skills/10-ef-core-data-access.md`, `.ai/skills/11-linq-querying.md` | | Unit of Work/repository pattern | `.ai/skills/18-unit-of-work-pattern.md`, `.ai/skills/10-ef-core-data-access.md`, `.ai/skills/11-linq-querying.md`, `.ai/skills/12-aspnetcore-web-fundamentals.md` | | LINQ, sequence transformations, grouping, joins | `.ai/skills/11-linq-querying.md` | | ASP.NET Core websites, middleware, static assets | `.ai/skills/12-aspnetcore-web-fundamentals.md`, `.ai/skills/16-security-reliability-performance.md` | | Blazor components, forms, rendering | `.ai/skills/13-blazor-components.md`, `.ai/skills/16-security-reliability-performance.md` | | Minimal APIs, OpenAPI, HTTP clients | `.ai/skills/14-minimal-api-web-services.md`, `.ai/skills/16-security-reliability-performance.md` | | NuGet packages, publishing, deployment, AOT | `.ai/skills/15-packaging-publishing-nuget-aot.md`, `.ai/skills/16-security-reliability-performance.md` | | Security, reliability, performance review | `.ai/skills/16-security-reliability-performance.md`, `.ai/skills/17-code-review-definition-of-done.md` | ## Skill Loading Rule Load the narrowest skills that cover the task. For a full-stack feature, load the skills for each layer: domain model, data access, web endpoint/UI, tests, and review. ## Skill Update Rule When a task reveals a reusable project convention, add it to a project-specific skill file instead of bloating `AGENTS.md`. ## Reusable Pattern Skills - `.ai/skills/18-unit-of-work-pattern.md` - use for Unit of Work, generic repository, EF Core `DbContext`, transaction-boundary, and repository-backed service/controller tasks.