Analyze a .NET solution's NuGet dependencies — version conflicts, duplicate/inconsistent versions across projects, unused packages, and central package management opportunities. Use this skill whenever the user wants to analyze dependencies, fix version conflicts, consolidate package versions, set up Central Package…
Add or fix OpenTelemetry observability (traces, metrics, logs) in an ASP.NET Core / .NET app. Use this skill whenever the user wants to instrument a .NET service, add distributed tracing, export to Jaeger/Tempo/Prometheus/an OTLP collector/Azure Monitor, create custom spans or metrics, set up correlation across…
Implement the ASP.NET Core options pattern with strongly-typed, validated configuration — IOptions/IOptionsSnapshot/IOptionsMonitor, data annotations or FluentValidation, and ValidateOnStart. Use this skill whenever the user wants strongly-typed config, the options pattern, to replace magic configuration strings…
Add a Result/Error pattern to a .NET codebase so expected failures stop using exceptions for control flow. Use this skill whenever the user wants a Result type, Result , railway-oriented programming, OneOf, error handling without exceptions, mapping domain errors to HTTP responses, or asks "how do I return errors…
Audit a .NET codebase for hardcoded secrets and unsafe configuration — connection strings, API keys, passwords, tokens in source/appsettings, and insecure config patterns — and recommend secret-store fixes. Use this skill whenever the user wants to find hardcoded secrets, leaked credentials, secrets in…
Set up structured logging with Serilog in ASP.NET Core — JSON output, enrichers, request logging, log levels, and sinks — correlated with traces. Use this skill whenever the user wants Serilog, structured logging, JSON logs, request logging, log enrichment, log sinks (Seq/Elastic/console), or asks "how do I add…
Refactor hot C# code to use Span , ReadOnlySpan , and Memory to cut allocations in parsing, slicing, and buffer work. Use this skill whenever the user wants to use Span/Memory, avoid substring/array-copy allocations, optimize parsing or string slicing, use stackalloc, or asks "how do I use Span here / make this…
Implement the Specification pattern for EF Core so query criteria (filters, includes, ordering, paging) become reusable, testable objects instead of duplicated LINQ. Use this skill whenever the user wants the specification pattern, reusable query criteria, to dedupe repeated Where/Include logic, a generic repository…
Convert raw SQL to EF Core LINQ and LINQ to tuned SQL, both directions, preserving semantics. Use this skill whenever the user wants to turn a SQL query into LINQ, convert LINQ to SQL, migrate stored procedures or ADO.NET queries to EF Core, or asks "how do I write this SQL in EF / what SQL does this LINQ produce /…
Optimize System.Text.Json usage in .NET — source-generated contexts, options reuse, streaming, and avoiding reflection/allocation overhead. Use this skill whenever the user works with System.Text.Json, JsonSerializer, slow or allocation-heavy serialization, source generation, custom converters, or asks "how do I speed…
Set up auditing and history in EF Core using SQL Server temporal tables or an application-level audit trail. Use this skill whenever the user wants temporal tables, row history, audit trail, point-in-time queries, who-changed-what, soft history, or asks "how do I track changes / keep history of records / audit my…
Find the meaningful test-coverage gaps in a .NET project — untested public types, uncovered branches, and risky code without tests — and prioritize what to test next. Use this skill whenever the user wants to find coverage gaps, what to test next, untested code, low-coverage areas, or asks "what's not tested / where…