Claude Marketplaces
SkillsMCP serversMarketplacesDigestTools
Submit

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP servers by category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control
Claude Marketplaces

An independent directory of skills, plugins and MCP servers for Claude Code. Not affiliated with Anthropic.

Browse

  • Skills
  • MCP servers
  • Marketplaces
  • Weekly digest
  • Skill index
  • MCP index
  • Marketplace index

Site

  • About
  • Tools
  • Submit
  • Feedback
  • Privacy
  • llms.txt
  • Plugins reference

Maker

  • Snug
  • Agent Caffeine
  • knobs
  • Wax
  • Vectoys
  • mertduzgun.com
Crafted at
Skills/Git & Pull Requests
github avatar

Csharp Async

github/awesome-copilotOfficial

A solid code reviewer for async C# that catches the stuff that actually matters. It'll flag when you're mixing .Wait() with async code, remind you about ConfigureAwait(false) in library scenarios, and push you toward Task.WhenAll() instead of sequential awaits. The skill knows the difference between when to use ValueTask versus Task, and it won't let you get away with async void methods outside event handlers. Good for both fixing existing async code that's causing deadlocks and writing new async methods that follow TAP patterns correctly.

installs
10.9K
GitHub stars
40.5K
last updated
Aug 21, 2026
View on GitHubSave

Install

$ npx -y skills add github/awesome-copilot --skill csharp-async --agent claude-code

Installs into .claude/skills of the current project.

Files

C# Async Programming Best Practices

Your goal is to help me follow best practices for asynchronous programming in C#.

Naming Conventions

  • Use the 'Async' suffix for all async methods
  • Match method names with their synchronous counterparts when applicable (e.g., GetDataAsync() for GetData())

Return Types

  • Return Task<T> when the method returns a value
  • Return Task when the method doesn't return a value
  • Consider ValueTask<T> for high-performance scenarios to reduce allocations
  • Avoid returning void for async methods except for event handlers

Exception Handling

  • Use try/catch blocks around await expressions
  • Avoid swallowing exceptions in async methods
  • Use ConfigureAwait(false) when appropriate to prevent deadlocks in library code
  • Propagate exceptions with Task.FromException() instead of throwing in async Task returning methods

Performance

  • Use Task.WhenAll() for parallel execution of multiple tasks
  • Use Task.WhenAny() for implementing timeouts or taking the first completed task
  • Avoid unnecessary async/await when simply passing through task results
  • Consider cancellation tokens for long-running operations

Common Pitfalls

  • Never use .Wait(), .Result, or .GetAwaiter().GetResult() in async code
  • Avoid mixing blocking and async code
  • Don't create async void methods (except for event handlers)
  • Always await Task-returning methods

Implementation Patterns

  • Implement the async command pattern for long-running operations
  • Use async streams (IAsyncEnumerable) for processing sequences asynchronously
  • Consider the task-based asynchronous pattern (TAP) for public APIs

When reviewing my C# code, identify these issues and suggest improvements that follow these best practices.

SKILL.md on GitHub

Sponsors

SnugThe clipboard manager you and your agent can use, safelyAgent CaffeineClose your lid, come back to finished workWaxBlock anything with supervision, without erasing your iPhoneOpen StepsSponsoredFree and open-source skills that make AI coding agents easier to understand, verify, and control.

Details

Repository
github.com/github/awesome-copilot
Categories
Git & Pull Requests, AI & Agent Building, .NET & C#

More from github/awesome-copilot

All 318
  • Java Docs10.8K
  • Create Github Action Workflow Specification10.8K
  • Python Mcp Server Generator10.4K
  • Csharp Xunit10.3K
  • Ai Prompt Engineering Safety Review10.3K
  • Agentic Eval10.2K
  • Create Architectural Decision Record10.2K
  • Breakdown Feature Prd10K
  • Refactor Method Complexity Reduce10K
  • Pdftk Server10K
  • Scoutqa Test10K
  • Powerbi Modeling9.9K
  • Nano Banana Pro Openrouter9.9K
  • Markdown To Html9.9K
  • Meeting Minutes9.9K
  • Git Flow Branch Creator9.8K
  • Dataverse Python Production Code9.8K
  • Boost Prompt9.8K
  • Kotlin Springboot9.8K
  • Plantuml Ascii9.8K
  • Image Manipulation Image Magick9.7K
  • My Pull Requests9.7K
  • Devops Rollout Plan9.7K
  • Csharp Docs9.7K

Recommended

More Git & Pull Requests
1github avatarjava-docsgithub/awesome-copilotEnsure that Java types are documented with Javadoc comments and follow best practices for documentation.10.8Kinstalls
2github avatarpython-mcp-server-generatorgithub/awesome-copilotGenerate a complete MCP server project in Python with tools, resources, and proper configuration10.4Kinstalls
3github avatarcsharp-xunitgithub/awesome-copilotGet best practices for XUnit unit testing, including data-driven tests10.3Kinstalls
4github avataragentic-evalgithub/awesome-copilotPatterns and techniques for evaluating and improving AI agent outputs. Use this skill when: - Implementing self-critique and reflection loops - Building evaluat10.2Kinstalls
5github avatarcreate-architectural-decision-recordgithub/awesome-copilotCreate an Architectural Decision Record (ADR) document for AI-optimized decision documentation.10.2Kinstalls
6github avatarbreakdown-feature-prdgithub/awesome-copilotPrompt for creating Product Requirements Documents (PRDs) for new features, based on an Epic.10Kinstalls