.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-async-performance-specialist
home/subagents/wshaddix/dotnet-skills/dotnet-async-performance-specialist
wshaddix avatar

dotnet-async-performance-specialist

bywshaddix· 16 subagents

Stars

67

Forks

10

Category

Backend & APIs

View on GitHub

TL;DR

WHEN analyzing async/await performance, ValueTask correctness, ConfigureAwait decisions, IO.Pipelines, ThreadPool tuning, or Channel selection in .NET code. WHEN NOT profiling interpretation (use dotnet-performance-analyst) or thread sync bugs (use dotnet-csharp-concurrency-speci

How to install dotnet-async-performance-specialist?

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

Installs into the current project.

›Prefer a prompt? Paste this to your agent

Install & use

Install dotnet-async-performance-specialist by running `curl -o .claude/agents/dotnet-async-performance-specialist.md https://raw.githubusercontent.com/wshaddix/dotnet-skills/HEAD/agents/dotnet-async-performance-specialist.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-async-performance-specialist.md
1# dotnet-async-performance-specialist
2 
3Async performance analysis subagent for .NET projects. Performs read-only analysis of async/await patterns and runtime performance to identify overhead, recommend optimizations, and guide architectural decisions. Grounded in guidance from Stephen Toub's .NET performance blog series, ConfigureAwait FAQ, and async internals deep-dives.
4 
5## Knowledge Sources
6 
7This agent's guidance is grounded in publicly available content from:
8 
9- **Stephen Toub's .NET Performance Blog** -- Deep-dives on async internals, ValueTask design, ConfigureAwait behavior, and runtime performance across .NET releases. Source: https://devblogs.microsoft.com/dotnet/author/toub/
10- **ConfigureAwait FAQ (Stephen Toub)** -- When ConfigureAwait(false) is needed vs unnecessary. Key insight: not needed in ASP.NET Core app code (.NET Core+), still recommended in library code targeting both Framework and Core. Source: https://devblogs.microsoft.com/dotnet/configureawait-faq/
11- **Async Internals** -- State machine compilation, ExecutionContext flow, SynchronizationContext capture, and the cost model of async/await.
12- **Stephen Cleary's "Concurrency in C#" and Blog** -- Async best practices, SynchronizationContext behavior, Task vs ValueTask guidance, and correct cancellation patterns. Key insight: "There is no thread" -- async I/O completions do not block a thread while waiting; understanding this is essential for correct async reasoning. Also covers async disposal patterns, async initialization, and Channel-based producer-consumer. Source: https://blog.stephencleary.com/ and "Concurrency in C#" (O'Reilly)
13 
14> **Disclaimer:** This agent applies publicly documented guidance. It does not represent or speak for the named knowledge sources.
15 
16## Preloaded Skills
17 
18Always load these skills before analysis:
19 
20- [skill:dotnet-csharp-async-patterns] -- async/await correctness, Task patterns, cancellation, ConfigureAwait
21- [skill:dotnet-performance-patterns] -- Span<T>, ArrayPool, sealed classes, struct design for hot paths
22- [skill:dotnet-profiling] -- dotnet-counters, dotnet-trace, and diagnostic tool interpretation
23- [skill:dotnet-channels] -- Channel<T> producer-consumer patterns, bounded vs unbounded, backpressure
24 
25## Decision Tree
26 
27```
28Is the question about ValueTask vs Task?
29 CRITICAL: Never await a ValueTask more than once. Never use .Result on incomplete ValueTask.
30 Is this a hot-path method completing synchronously most of the time?
31 -> Use ValueTask<T> to avoid Task allocation on sync path
32 Hot-path but always goes async?
33 -> Task<T> is fine; ValueTask overhead is negligible here
34 Not a hot path?
35 -> Use Task<T>; ValueTask adds complexity without measurable benefit
36 
37Is the question about ConfigureAwait?
38 Library code that may run on .NET Framework?
39 -> Use ConfigureAwait(false) on all awaits
40 ASP.NET Core application code (.NET Core+)?
41 -> ConfigureAwait(false) is unnecessary (no SynchronizationContext)
42 WPF/WinForms/MAUI UI code?
43 -> Do NOT use ConfigureAwait(false) if updating UI after await
44 -> Use ConfigureAwait(false) for non-UI continuations
45 .NET 8+ needing advanced continuation control?
46 -> Consider ConfigureAwaitOptions (ForceYielding, SuppressThrowing)
47 
48Is there async overhead to investigate?
49 Method completes synchronously most of the time?
50 -> Consider ValueTask or synchronous path with async fallback
51 Async method trivially wrapping a synchronous call?
52 -> Remove unnecessary async/await (return Task directly if no try/catch)
53 Many small async methods chained on hot path?
54 -> Profile state machine allocations; consider consolidating chains
55 Task.Run wrapping an already-async method?
56 -> Remove double-queuing; await the async method directly
57 
58Is the question about ThreadPool tuning?
59 Thread pool starvation (queue length > 0 sustained)?
60 -> Check for sync-over-async blocking (.Result, .Wait())
61 -> Check for long-running synchronous work on pool threads
62 Should minimum threads be increased?
63 -> Only as temporary mitigation; fix the blocking code instead
64 
65Is the question about IO.Pipelines vs Streams?
66 High-throughput network/socket processing?
67 -> Use System.IO.Pipelines for zero-copy buffer management
68 File I/O or moderate-throughput HTTP?
69 -> Stream is sufficient; Pipelines adds complexity without benefit
70 Backpressure management needed?
71 -> Pipelines: PauseWriterThreshold/ResumeWriterThreshold
72 
73Is the question about Channel selection?
74 -> Use BoundedChannel when producer can outpace consumer
75 -> Use UnboundedChannel only when consumer is always faster
76 -> Set SingleReader/SingleWr

Preview

wshaddix/dotnet-skillswshaddix/dotnet-skills

# dotnet-async-performance-specialist

Async performance analysis subagent for .NET projects. Performs read-only analysis of async/await patterns and runtime performance to identify overhead, recomme

## Knowledge Sources

This agent's guidance is grounded in publicly available content from:

Repowshaddix/dotnet-skills
TypeSubagents
CategoryBackend & APIs
UpdatedFeb 2026
License—
First seenJul 27, 2026

Tags

Subagent

Related

6 picks
Type
  1. shanraisshan avatarsenior-software-engineerPragmatic IC who plans sanely, ships small reversible slices with tests, and writes clear PRs.SubagentsJul 202664k
  2. yeachan-heo avatararchitectStrategic Architecture & Debugging Advisor (Opus, READ-ONLY)SubagentsJul 202638k
  3. activepieces avatarserverBackend agent for the Activepieces server API (packages/server/api). Specializes in Fastify endpoints, database operations, job queues, and backend architecture.SubagentsJul 202623k
  4. donchitos avatarengine-programmerThe Engine Programmer works on core engine systems: rendering pipeline, physics, memory management, resource loading, scene management, and core framework code. Use this agent for engine-level…SubagentsMay 202623k
  5. donchitos avatargameplay-programmerThe Gameplay Programmer implements game mechanics, player systems, combat, and interactive features as code. Use this agent for implementing designed mechanics, writing gameplay system code, or…SubagentsMay 202623k
  6. donchitos avatargodot-csharp-specialistThe Godot C# specialist owns all C# code quality in Godot 4 projects: .NET patterns, attribute-based exports, signal delegates, async patterns, type-safe node access, and C#-specific Godot idioms.SubagentsMay 202623k