Use when building microservices with Dapr (Distributed Application Runtime) in .NET. Covers service invocation, state management, pub/sub messaging, bindings, actors, secrets, and sidecar configuration. USE FOR: service-to-service invocation with automatic…
Skills in this repository
Tyler-R-Kendrick/agent-skills - Page 3
SkillsMP has collected 345 skills from Tyler-R-Kendrick/agent-skills. Open a skill to review its source and details.
Tyler-R-Kendrick/agent-skillsShowing 40 of 345 collected skills.
Use when resolving service endpoints dynamically with Microsoft.Extensions.ServiceDiscovery. Covers configuration-based, DNS-based, and Aspire-integrated service resolution for HttpClient, endpoint selection strategies, and health-aware routing. USE FOR:…
Use when building distributed, stateful applications with Microsoft Orleans. Covers grain design, state persistence, streams, timers, reminders, clustering, and ASP.NET Core co-hosting for virtual actor workloads. USE FOR: distributed virtual actor systems,…
USE FOR: Toggling runtime compatibility switches, enabling or disabling breaking-change mitigations between framework versions, gating legacy code paths at startup, and reading platform-level feature switches. DO NOT USE FOR: User-facing feature flags (use…
USE FOR: In-memory caching with IMemoryCache, distributed caching with IDistributedCache, output caching in ASP.NET Core, hybrid cache strategies, and cache invalidation patterns. DO NOT USE FOR: Persistent data storage, session state management without a…
USE FOR: Loading application settings from JSON files, environment variables, command-line arguments, user secrets, Azure Key Vault, and custom providers. Binding configuration sections to strongly-typed options classes with validation. DO NOT USE FOR:…
USE FOR: Reacting to configuration or file changes with IChangeToken, building custom change-notification providers, efficient string segmentation with StringSegment and StringTokenizer, and composing change signals with CompositeChangeToken. DO NOT USE FOR:…
USE FOR: Configuration-driven feature flags, percentage-based rollouts, time-windowed features, user-targeting filters, feature gates in ASP.NET Core controllers and Razor pages, and Azure App Configuration integration. DO NOT USE FOR: Runtime compatibility…
USE FOR: Persisting and restoring application state such as window positions, user preferences, form values, and UI settings in desktop applications (WPF, WinForms, Avalonia). DO NOT USE FOR: Server-side configuration management, web application session…
USE FOR: Vendor-neutral feature flag evaluation, switching between flag providers (LaunchDarkly, Flagsmith, Split, CloudBees, in-memory) without code changes, standardized targeting and context-based evaluation, and multi-provider setups. DO NOT USE FOR:…
USE FOR: High-performance SQL queries mapped to POCOs, read-heavy and latency-critical data access, stored procedure invocation, multi-mapping joins, bulk operations, and scenarios requiring full SQL control. DO NOT USE FOR: Schema migrations (use EF Core or…
USE FOR: CRUD data access with LINQ, database migrations, change tracking, complex domain models with relationships, database-first and code-first workflows, and multi-provider support (SQL Server, PostgreSQL, SQLite, Cosmos DB). DO NOT USE FOR: Bulk…
USE FOR: Unified cloud storage abstraction across Azure Blob Storage, AWS S3, Google Cloud Storage, local filesystem, and FTP. Blob read/write, listing, streaming large files, and switching storage providers without code changes. DO NOT USE FOR: Relational…
USE FOR: Per-user or per-assembly sandboxed file storage in desktop applications, small settings or cache data scoped to user identity, and legacy ClickOnce or partial-trust application scenarios. DO NOT USE FOR: Server-side web applications, cross-machine…
USE FOR: Full-text search indexing and querying, faceted search, autocomplete and suggestion systems, document search with relevance ranking, and applications requiring embedded search without an external server. DO NOT USE FOR: Relational data querying (use…
USE FOR: Running Apache Spark jobs from C# or F#, distributed big data processing with DataFrames and RDDs, Spark SQL queries from .NET, ETL pipelines at scale, and integration with Hadoop ecosystem data sources. DO NOT USE FOR: Small-dataset processing that…
USE FOR: GraphQL-like selective field projection in REST APIs, reducing over-fetching by returning only client-requested fields, dynamic response shaping based on query parameters, and bandwidth optimization for mobile or low-bandwidth clients. DO NOT USE…
USE FOR: Distributed caching, session storage, real-time pub/sub messaging, leaderboards and sorted sets, rate limiting, distributed locks, and high-throughput key-value operations using StackExchange.Redis. DO NOT USE FOR: Primary relational data storage,…
USE FOR: Registering and resolving services in the built-in .NET DI container, configuring service lifetimes (singleton, scoped, transient), keyed services, factory-based registrations, decorator patterns, and organizing registrations in extension methods. DO…
USE FOR: Building console applications, background services, and worker processes with standardized DI, configuration, logging, and graceful shutdown. Hosting long-running IHostedService and BackgroundService implementations, and composing application startup…
USE FOR: XML-based dependency injection in legacy .NET Framework applications, aspect-oriented programming (AOP) with method interception, declarative transaction management, and migrating Java Spring applications to .NET. DO NOT USE FOR: New .NET 6+…
Use when documenting .NET APIs with OpenAPI (Swagger) specifications, generating client SDKs, and configuring Swashbuckle or NSwag. USE FOR: API documentation with OpenAPI/Swagger, Swashbuckle configuration, NSwag client generation, XML comment documentation,…
Use when building concurrent, distributed, or fault-tolerant .NET applications with the actor model using Akka.NET. USE FOR: actor-based concurrency, distributed systems, supervision hierarchies, event sourcing with actors, cluster sharding, CQRS with…
Use when building state machine workflows integrated with MassTransit for distributed sagas and long-running processes. USE FOR: state machine definitions, MassTransit saga orchestration, order/workflow lifecycle management, distributed state transitions,…
Use when implementing CQRS command dispatching, request pipelines, and asynchronous task queues with Paramore Brighter in .NET. USE FOR: command dispatching, CQRS command side, request handler pipelines, async task queues, policy-based retry and circuit…
Use when implementing Command Query Separation (CQS) or CQRS patterns to separate read and write operations in .NET applications. USE FOR: separating read/write models, CQS pattern implementation, CQRS architecture, dedicated command and query handlers,…
Use when designing event-driven architectures and patterns for loosely coupled, asynchronous .NET systems. USE FOR: event-driven architecture patterns, domain events, integration events, event sourcing fundamentals, pub/sub design, event bus abstraction DO…
Use when building message-based distributed systems with MassTransit for pub/sub, request/response, sagas, and outbox patterns in .NET. USE FOR: distributed messaging, pub/sub consumers, request/response over message brokers, saga orchestration, outbox…
Use when implementing the mediator pattern with Mediator.NET (source-generated) for high-performance in-process command/query dispatch in .NET. USE FOR: source-generated mediator pattern, in-process command dispatch, query handling, notification pub/sub,…
Use when implementing in-process mediator, CQRS, and pipeline behavior patterns with MediatR in .NET applications. USE FOR: in-process command/query dispatch, CQRS with pipeline behaviors, notification fan-out, cross-cutting concern pipelines (validation,…
Use when building enterprise-grade distributed systems with NServiceBus for reliable messaging, sagas, and recoverability in .NET. USE FOR: enterprise messaging, durable message handling, saga orchestration, message routing, recoverability and error queues,…
Use when building message-driven .NET applications with Rebus, a lean and extensible service bus supporting multiple transports. USE FOR: lightweight service bus messaging, pub/sub with RabbitMQ or Azure Service Bus, saga orchestration, message routing,…
Use when building .NET applications with Wolverine for command/event handling, messaging, and HTTP endpoint integration with minimal ceremony. USE FOR: command and event handling, messaging with RabbitMQ/Azure Service Bus/Amazon SQS, HTTP endpoint generation,…
Use when applying function currying and partial application patterns in C# to create specialized, reusable function compositions. USE FOR: function currying, partial application, function composition, creating specialized functions from general ones,…
Use when building high-performance text parsers in F# using FParsec parser combinators. USE FOR: F# parser combinators, text parsing, expression parsers, DSL implementation in F#, protocol parsing, structured data extraction DO NOT USE FOR: C# parser…
Use when writing F# code on .NET, leveraging functional-first programming with discriminated unions, pattern matching, computation expressions, and type inference. USE FOR: functional-first .NET programming, discriminated unions and pattern matching,…
Use when applying functional programming patterns and principles in C# including immutability, pure functions, higher-order functions, and monadic patterns. USE FOR: functional programming concepts in C#, immutability patterns, pure functions, LINQ as…
Use when handling optional values with JFlepp.Maybe, a lightweight Maybe/Option monad library for C#. USE FOR: optional value handling with Maybe<T>, null elimination, monadic chaining of optional values, LINQ query syntax over optional values DO NOT USE FOR:…
Use when applying comprehensive functional programming patterns in C# with language-ext, including Option, Either, Try, immutable collections, and monadic composition. USE FOR: Option<T> for null elimination, Either<L,R> for typed error handling, Try<T> for…
Use when implementing the Optional/Maybe pattern in C# to eliminate null reference exceptions and make value absence explicit in the type system. USE FOR: Optional<T> type implementation, null elimination patterns, monadic optional chaining, safe value access…