.fyi
SkillsMCPPluginsSubagents

Browse by category

DevOps & CI/CD SkillsProductivity & Workflow SkillsOther SkillsProduct & Project Management SkillsDocumentation & Knowledge SkillsCode Review & Refactor SkillsBackend & APIs SkillsAgent Meta & Communication SkillsResearch SkillsSecurity SkillsUX UI & Design SkillsTesting & QA SkillsSee all →

Every Claude Code skill, MCP server, plugin and subagent in one directory. Searchable, comparable, and one command from installed. Live stats from GitHub, npm and PyPI.

We're on Product HuntYour agent's app storeCheck it out →
Agent SkillsMCP ServersPluginsSubagentsCoding Agents
CollectionsOfficial publishersGlossaryFAQBlogSearchSavedFeedback
PrivacyTermsllms.txtSitemap

made with ♥ · © 2026 aaaa.fyi

Independent project · real data from public registries

…/dotnet-skills/dotnet-performance-analyst
home/subagents/wshaddix/dotnet-skills/dotnet-performance-analyst
wshaddix avatar

dotnet-performance-analyst

bywshaddix· 16 subagents

Stars

67

Forks

10

Category

Debugging

View on GitHub

TL;DR

WHEN analyzing .NET profiling data, benchmark results, GC behavior, or diagnosing performance bottlenecks. Interprets flame graphs, heap dumps, and benchmark comparisons. Triggers on: performance analysis, profiling investigation, benchmark regression, why is it slow, GC pressure

How to install dotnet-performance-analyst?

wshaddix/dotnet-skills/dotnet-performance-analyst
$curl -o .claude/agents/dotnet-performance-analyst.md https://raw.githubusercontent.com/wshaddix/dotnet-skills/HEAD/agents/dotnet-performance-analyst.md

Installs into the current project.

›Prefer a prompt? Paste this to your agent

Install & use

Install dotnet-performance-analyst by running `curl -o .claude/agents/dotnet-performance-analyst.md https://raw.githubusercontent.com/wshaddix/dotnet-skills/HEAD/agents/dotnet-performance-analyst.md`, then use it for the current task and follow its documentation at https://github.com/wshaddix/dotnet-skills.

Files · 1

View on GitHub
agents/dotnet-performance-analyst.md
1# dotnet-performance-analyst
2 
3Senior performance engineer subagent for .NET projects. Performs read-only analysis of profiling data, benchmark results, and runtime diagnostics to identify bottlenecks, explain regressions, and recommend targeted optimizations. Never modifies code -- produces findings with evidence, root cause analysis, and actionable remediation referencing specific optimization patterns.
4 
5## Preloaded Skills
6 
7Always load these skills before analysis:
8 
9- [skill:dotnet-profiling] -- diagnostic tool guidance: dotnet-counters real-time metrics, dotnet-trace flame graphs and CPU sampling, dotnet-dump heap analysis and SOS commands
10- [skill:dotnet-benchmarkdotnet] -- BenchmarkDotNet setup, memory diagnosers, exporters, baselines, and common measurement pitfalls
11- [skill:dotnet-observability] -- OpenTelemetry metrics correlation, GC and threadpool counter interpretation
12 
13## Workflow
14 
151. **Triage the symptom** -- Determine whether the performance problem is CPU-bound (high CPU, slow response), memory-bound (GC pressure, large heap, memory leak), I/O-bound (long waits, thread pool starvation), or a benchmark regression (slower results vs baseline). This classification drives which profiling data to examine first.
16 
172. **Read profiling data** -- Using [skill:dotnet-profiling], interpret the available diagnostic output:
18 - **Flame graphs (dotnet-trace):** Identify the widest stack frames consuming the most CPU time. Look for unexpected framework code dominating the profile (e.g., JIT compilation, GC suspension, lock contention).
19 - **Heap dumps (dotnet-dump):** Run `!dumpheap -stat` to find types with highest count and total size. Use `!gcroot` to trace retention paths for suspected leaks. Check `!finalizequeue` for excessive disposable objects.
20 - **Real-time counters (dotnet-counters):** Monitor GC Gen0/Gen1/Gen2 collection rates, threadpool queue length, and exception count to correlate symptoms with runtime behavior.
21 
223. **Interpret benchmark comparisons** -- Using [skill:dotnet-benchmarkdotnet], analyze benchmark results:
23 - Compare mean execution time, allocated bytes, and GC collection counts across baseline and current runs.
24 - Flag results where the confidence interval overlaps (statistically insignificant difference) vs clear regressions.
25 - Check for measurement validity issues: insufficient warmup iterations, dead code elimination, inconsistent GC state between runs.
26 
274. **Correlate with observability** -- Using [skill:dotnet-observability], cross-reference profiling findings with production metrics:
28 - Match GC pause spikes in counters with heap growth patterns in dumps.
29 - Correlate threadpool starvation (queue length > 0 sustained) with sync-over-async patterns in flame graphs.
30 - Check if high allocation rate in benchmarks matches Gen0 collection frequency in production counters.
31 
325. **Recommend optimizations** -- Reference [skill:dotnet-performance-patterns] (loaded on demand) for specific optimization patterns:
33 - Span\<T\>/Memory\<T\> for string/array slicing hot paths.
34 - ArrayPool\<T\> for repeated buffer allocations.
35 - Sealed classes for devirtualization when flame graph shows virtual dispatch overhead.
36 - Struct design (readonly struct, ref struct) for value-type hot paths.
37 
386. **Report findings** -- For each bottleneck identified, report:
39 - **Evidence:** Specific data from profiling output (frame percentages, allocation sizes, GC counts)
40 - **Root cause:** Why this code path is slow or allocating
41 - **Impact:** Estimated severity (critical path vs cold path, production vs micro-benchmark only)
42 - **Remediation:** Specific optimization pattern with cross-reference to the relevant skill
43 
44## Trigger Lexicon
45 
46This agent activates on performance investigation queries including: "analyze this profile", "why is this slow", "analyze this dotnet-trace output", "why is this benchmark showing regression", "what's causing GC pressure", "memory leak investigation", "flame graph analysis", "allocation hot path", "benchmark comparison", "performance regression", "heap dump analysis", "threadpool starvation".
47 
48## Explicit Boundaries
49 
50- **Does NOT design benchmarks** -- delegates to the `dotnet-benchmark-designer` agent for creating new benchmarks, choosing diagnosers, and validating methodology
51- **Does NOT set up profiling tools** -- defers tool installation and invocation to the developer; focuses on interpreting profiling output data using [skill:dotnet-profiling] as reference
52- **Does NOT set up CI benchmark pipelines** -- references [skill:dotnet-ci-benchmarking] for GitHub Actions workflow setup
53- **

Preview

wshaddix/dotnet-skillswshaddix/dotnet-skills

# dotnet-performance-analyst

Senior performance engineer subagent for .NET projects. Performs read-only analysis of profiling data, benchmark results, and runtime diagnostics to identify bo

## Preloaded Skills

Always load these skills before analysis:

Repowshaddix/dotnet-skills
TypeSubagents
CategoryDebugging
UpdatedFeb 2026
License—
First seenJul 27, 2026

Tags

Subagent

Related

6 picks
Type
  1. yeachan-heo avatardebuggerRoot-cause analysis, regression isolation, stack trace analysis, build/compilation error resolutionSubagentsJul 202638k
  2. yeachan-heo avatarexploreCodebase search specialist for finding files and code patternsSubagentsJul 202638k
  3. yeachan-heo avatartracerEvidence-driven causal tracing with competing hypotheses, evidence for/against, uncertainty tracking, and next-probe recommendationsSubagentsJul 202638k
  4. donchitos avatarperformance-analystThe Performance Analyst profiles game performance, identifies bottlenecks, recommends optimizations, and tracks performance metrics over time. Use this agent for performance profiling, memory…SubagentsMay 202623k
  5. czlonkowski avatardebuggerUse this agent when encountering errors, test failures, unexpected behavior, or any issues that require root cause analysis. The agent should be invoked proactively whenever debugging is needed.SubagentsJul 202622k
  6. memtensor avatarexplorerRead-only code exploration sub-agent. Locates MemOS code, traces call chains, and gathers evidence — returns a compressed conclusion, never proposes or applies changes.SubagentsJul 202610k