What problem does it solve?
.NET applications that run slowly, hang, deadlock, or consume excessive memory are hard to fix without structured diagnostics and a systematic review of common performance anti-patterns across async, memory, LINQ, JSON, and database code.
Core Features & Use Cases
- Live Process Diagnostics (Mode A): Triage running .NET processes with dotnet-counters, dotnet-stack, dotnet-trace, dotnet-gcdump, and dotnet-dump to find CPU hotspots, GC pressure, and deadlocks.
- Static Code Review (Mode B): Scan C# codebases against 14 optimization categories (memory, async, LINQ, EF Core, JSON, caching, DI, concurrency, HttpClient, exceptions, strings, startup, metrics) with grep-based detection recipes and severity-ranked findings.
- Guided Fixes with Measurement: Apply surgical optimizations one category at a time, verify with dotnet build/test, and validate improvements with BenchmarkDotNet or load tests.
- Use Case: A developer notices high memory usage in an ASP.NET Core API. The skill captures a gcdump, identifies LOH churn from repeated large buffer allocations, then reviews the hot path and replaces
new byte[] with ArrayPool<byte>.Shared rentals, re-measuring to confirm the fix.
Quick Start
Ask the assistant to analyze a slow or memory-heavy .NET process or review a C# file or directory for performance anti-patterns, optionally adding --fix to apply the recommended optimizations.