165 published skills · page 1 of 2
- ▌ Fly Io · wshaddix bundleDeploy, configure, and manage applications on the Fly.io platform using flyctl CLI, fly.toml configuration, Fly Machines, Fly Volumes, private networking, secrets, health checks, autoscaling, and GitHub Actions CI/CD. Use when deploying any application to Fly.io, writing or modifying fly.toml configuration, managing Fly Machines or Volumes, configuring networking (public services, private 6PN, Flycast, custom domains, TLS), setting secrets, configuring health checks, setting up autostop/autostart or metrics-based autoscaling, deploying with GitHub Actions, managing Fly Postgres databases, or preparing an app for production on Fly.io.
- ▌ Slopwatch · wshaddixPatterns for detecting and managing code smells and technical debt in .NET applications. Run Slopwatch CLI to detect LLM reward hacking, disabled tests, suppressed warnings, empty catches, and other shortcuts. Use when identifying code smells, running quality gates in CI/CD, or validating LLM-generated code changes.
- ▌ Dotnet Grpc · wshaddixBuilding gRPC services. Proto definition, code-gen, ASP.NET Core host, streaming, auth.
- ▌ Dotnet Msix · wshaddixPackaging MSIX apps. Creation, signing, Store submission, App Installer sideload, auto-update.
- ▌ Local Tools · wshaddixBest practices for working with .NET local tools, including manifest management, tool installation, and versioning. Use when setting up dotnet-tools.json for a project, installing or updating local tools, or managing tool versions across team members.
- ▌ Dotnet Winui · wshaddixBuilding WinUI 3 apps. Windows App SDK setup, XAML patterns, MSIX/unpackaged deploy, UWP migration.
- ▌ Dotnet Xunit · wshaddixWriting xUnit tests. v3 Fact/Theory, fixtures, parallelism, IAsyncLifetime, v2 compatibility.
- ▌ Bootstrap5 UI · wshaddix bundleProduction-grade Bootstrap 5.3 patterns for building modern, responsive web UIs in HTML and ASP.NET Core Razor Pages/Views. Use when creating or styling web pages, layouts, navigation, forms, cards, modals, tables, or any UI component with Bootstrap 5. Covers the grid system, responsive breakpoints, utility classes, color modes (dark/light), accessibility, and integration with ASP.NET Core tag helpers and Razor syntax. Trigger on any task involving Bootstrap CSS classes, responsive HTML layouts, Razor Page UI design, or front-end styling for .NET web applications.
- ▌ Crap Analysis · wshaddixAnalyze code coverage and CRAP (Change Risk Anti-Patterns) scores to identify high-risk code. Use OpenCover format with ReportGenerator for Risk Hotspots showing cyclomatic complexity and untested code paths. Use when evaluating code quality and test coverage before changes, identifying high-risk code that needs refactoring or testing, setting up coverage collection for a .NET project, or establishing coverage thresholds for CI/CD pipelines.
- ▌ Dotnet Add CI · wshaddixAdding CI/CD to a .NET project. GitHub Actions vs Azure DevOps detection, workflow templates.
- ▌ Feature Flags · wshaddixMicrosoft.FeatureManagement patterns for feature toggles, gradual rollouts, and A/B testing in ASP.NET Core Razor Pages applications. Use when implementing feature toggles in ASP.NET Core applications, setting up gradual feature rollouts, or configuring A/B testing scenarios with feature flags.
- ▌ File Handling · wshaddixFile uploads, streaming, storage abstractions, and secure file handling patterns for ASP.NET Core Razor Pages applications. Use when implementing secure file uploads in Razor Pages, streaming large files, or creating storage abstractions for file operations.
- ▌ Rate Limiting · wshaddixRate limiting patterns for ASP.NET Core Razor Pages applications. Covers fixed window, sliding window, token bucket algorithms, and distributed rate limiting with Redis. Use when implementing rate limiting in ASP.NET Core applications, choosing between different rate limiting algorithms, or setting up distributed rate limiting with Redis.
- ▌ Serialization · wshaddixJSON and binary serialization patterns for .NET applications, including System.Text.Json source generators, Protocol Buffers, MessagePack, and AOT-compatible best practices. Use when configuring JSON serialization, choosing between formats, implementing Protocol Buffers for high-performance scenarios, or working with Native AOT.
- ▌ Skill Creator · wshaddix bundleGuide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends OpenCode's capabilities with specialized knowledge, workflows, or tool integrations.
- ▌ Csharp Scripts · wshaddixRun single-file C# programs as scripts for quick experimentation, prototyping, and concept testing. Use when the user wants to write and execute a small C# program without creating a full project.
- ▌ Dotnet Advisor · wshaddixWorking with .NET, C#, ASP.NET Core, or related frameworks. Routes to specialist skills.
- ▌ Dotnet File Io · wshaddixDoing file I/O. FileStream, RandomAccess, FileSystemWatcher, MemoryMappedFile, paths.
- ▌ Dotnet Openapi · wshaddixGenerating OpenAPI docs. MS.AspNetCore.OpenApi (.NET 9+), Swashbuckle migration, NSwag.
- ▌ Dotnet Uno MCP · wshaddixUsing Uno MCP server. Tool detection, search-then-fetch workflow, init rules, fallback, citation.
- ▌ Testcontainers · wshaddix bundlePatterns for using Testcontainers in .NET integration tests to spin up real dependencies like databases and message queues. Use when writing integration tests that require real databases, testing with message brokers like RabbitMQ or Kafka, or isolating test dependencies with Docker containers.
- ▌ Data Protection · wshaddixASP.NET Core Data Protection API patterns for encryption, key management, and secure data handling in web applications. Use when protecting sensitive data at rest or in transit, managing encryption keys in ASP.NET Core applications, or implementing secure token generation and validation.
- ▌ Dotnet Aot Wasm · wshaddixAOT-compiling for WebAssembly. Blazor/Uno WASM AOT, size vs speed, lazy loading, Brotli.
- ▌ Dotnet API Docs · wshaddixGenerating API documentation. DocFX setup, OpenAPI-as-docs, doc-code sync, versioned docs.
- ▌ Dotnet Channels · wshaddixUsing producer/consumer queues. Channel<T>, bounded/unbounded, backpressure, drain patterns
- ▌ Dotnet Maui Aot · wshaddixOptimizing MAUI for iOS/Catalyst. Native AOT pipeline, size/startup gains, library gaps, trimming.
- ▌ Dotnet Trimming · wshaddixMaking apps/libraries trim-safe. Annotations, ILLink descriptors, IL2xxx warnings, IsTrimmable.
- ▌ Dotnet XML Docs · wshaddixWriting XML doc comments. Tags, inheritdoc, GenerateDocumentationFile, warning suppression.
- ▌ Efcore Patterns · wshaddixEntity Framework Core best practices including NoTracking by default, query splitting for navigation collections, migration management, dedicated migration services, interceptors, compiled queries, and connection resiliency. Use when setting up EF Core in a new project, optimizing query performance, managing database migrations, integrating EF Core with .NET Aspire, or debugging change tracking issues.
- ▌ Dotnet Gc Memory · wshaddixTuning GC and memory. GC modes, LOH/POH, Gen0/1/2, Span/Memory deep patterns, ArrayPool, profiling.
- ▌ Dotnet Modernize · wshaddixAnalyzing .NET code for modernization. Outdated TFMs, deprecated packages, superseded patterns.
- ▌ Dotnet Profiling · wshaddixDiagnosing .NET performance issues. dotnet-counters, dotnet-trace, dotnet-dump, flame graphs.
- ▌ Security Headers · wshaddixSecurity headers configuration and best practices for ASP.NET Core Razor Pages applications. Covers CSP, HSTS, X-Frame-Options, and comprehensive security middleware setup. Use when configuring security headers in ASP.NET Core applications, implementing Content Security Policy (CSP), or setting up HSTS and other security-related HTTP headers.
- ▌ Snapshot Testing · wshaddixPatterns for snapshot testing in .NET applications using Verify. Covers API responses, scrubbing non-deterministic values, custom converters, HTTP response testing, email templates, and CI/CD integration. Use when implementing snapshot tests for API responses, verifying UI component renders, detecting unintended changes in serialization output, or approving public API surfaces.
- ▌ API Design · wshaddixDesign stable, compatible public APIs using extend-only design principles. Manage API compatibility, wire compatibility, versioning, naming conventions, parameter ordering, and return types for NuGet packages and distributed systems. Use when designing public APIs for NuGet packages or libraries, making changes to existing public APIs, planning wire format changes for distributed systems, or reviewing pull requests for breaking changes.
- ▌ Dotnet Ado Unique · wshaddixUsing ADO-exclusive features. Environments, approvals, service connections, classic releases.
- ▌ Dotnet Containers · wshaddixContainerizing .NET apps. Multi-stage Dockerfiles, SDK container publish (.NET 8+), rootless.
- ▌ Dotnet Gha Deploy · wshaddixDeploying .NET from GitHub Actions. Azure Web Apps, GitHub Pages, container registries.
- ▌ Dotnet Native Aot · wshaddixPublishing Native AOT. PublishAot, ILLink descriptors, P/Invoke, size optimization, containers.
- ▌ Dotnet Playwright · wshaddixAutomating browser tests in .NET. Playwright E2E, CI browser caching, trace viewer, codegen.
- ▌ Dotnet Resilience · wshaddixAdding fault tolerance. Polly v8 + MS.Extensions.Http.Resilience, retry/circuit breaker/timeout.
- ▌ Dotnet Tunit Test · wshaddixGuidelines for writing TUnit tests in .NET, including setup, assertions, async testing, and best practices. Use when writing unit tests with TUnit framework, setting up TUnit in a .NET project, or migrating from other test frameworks to TUnit.
- ▌ Dotnet UI Chooser · wshaddixSelecting a .NET UI framework. Decision tree across Blazor, MAUI, Uno, WinUI, WPF, WinForms.
- ▌ Dotnet Wpf Modern · wshaddixBuilding WPF on .NET 8+. Host builder, MVVM Toolkit, Fluent theme, performance, modern C# patterns.
- ▌ Playwright Blazor · wshaddixEnd-to-end testing patterns for Blazor applications using Playwright, including component testing and page navigation. Use when writing E2E tests for Blazor applications, testing Blazor component interactions with Playwright, or setting up Playwright testing infrastructure for Blazor apps.
- ▌ Project Structure · wshaddixGuidelines for organizing .NET projects, including solution structure, project references, folder conventions, .slnx format, centralized build properties, and central package management. Use when setting up a new .NET solution with modern best practices, configuring centralized build properties across multiple projects, implementing central package version management, or setting up SourceLink for debugging.
- ▌ Caching Strategies · wshaddixComprehensive caching patterns for ASP.NET Core Razor Pages applications. Covers output caching, response caching, memory caching, distributed caching with Redis, cache invalidation strategies, and HybridCache (.NET 9+). Use when implementing caching in Razor Pages applications, choosing between memory and distributed caching, or optimizing application performance with caching.
- ▌ Csharp Wolverinefx · wshaddixBuild .NET applications with WolverineFX for messaging, HTTP services, and event sourcing. Use when implementing command handlers, message handlers, HTTP endpoints with WolverineFx.HTTP, transactional outbox patterns, event sourcing with Marten, CQRS architectures, cascading messages, batch message processing, or configuring transports like RabbitMQ, Azure Service Bus, or Amazon SQS.
- ▌ Dotnet Add Testing · wshaddixAdding test infrastructure to a .NET project. Scaffolds xUnit project, coverlet, layout.
- ▌ Dotnet Ado Publish · wshaddixPublishing .NET artifacts from Azure DevOps. NuGet push, containers to ACR, pipeline artifacts.
- ▌ Dotnet Blazor Auth · wshaddixAdding auth to Blazor. AuthorizeView, CascadingAuthenticationState, Identity UI, per-model flows.
- ▌ Dotnet Gha Publish · wshaddixPublishing .NET artifacts from GitHub Actions. NuGet push, container images, signing, SBOM.
- ▌ Dotnet Github Docs · wshaddixCreating GitHub-native docs. README badges, CONTRIBUTING, issue/PR templates, repo metadata.
- ▌ Dotnet HTTP Client · wshaddixConsuming HTTP APIs. IHttpClientFactory, typed/named clients, resilience, DelegatingHandlers.
- ▌ Dotnet Uno Targets · wshaddixDeploying Uno Platform apps. Per-target guidance for WASM, iOS, Android, macOS, Windows, Linux.
- ▌ Dotnet Uno Testing · wshaddixTesting Uno Platform apps. Playwright for WASM, platform-specific patterns, runtime heads.
- ▌ Exception Handling · wshaddixComprehensive exception handling patterns for ASP.NET Core Razor Pages applications. Covers global exception handling, ProblemDetails API, custom error pages, exception middleware, and graceful degradation strategies. Use when implementing error handling in Razor Pages applications, configuring global exception middleware, or creating user-friendly error pages and API error responses.
- ▌ Package Management · wshaddixNuGet package management best practices including versioning strategies, central package management, and dependency resolution. Use when setting up Central Package Management (CPM), managing package versions across multiple projects, or resolving dependency conflicts in .NET solutions.
- ▌ Background Services · wshaddixHosted services, background jobs, outbox patterns, and graceful shutdown handling for ASP.NET Core applications. Includes patterns for reliable job processing, distributed systems, and lifecycle management. Use when implementing background processing in ASP.NET Core applications, handling outbox patterns for reliable message delivery, or managing graceful service shutdown.
- ▌ Dotnet Ado Patterns · wshaddixDesigning composable Azure DevOps YAML pipelines. Templates, variable groups, multi-stage, triggers.
- ▌ Dotnet API Security · wshaddixImplementing API auth. Identity, OAuth/OIDC, JWT bearer, passkeys (WebAuthn), CORS, rate limiting.
- ▌ Dotnet Cryptography · wshaddixChoosing crypto algorithms, hashing, encryption, or key derivation. AES-GCM, RSA, ECDSA, PQC.
- ▌ Dotnet Editorconfig · wshaddixAuthoring .editorconfig rules. IDE/CA severity, AnalysisLevel, globalconfig, code style enforcement.
- ▌ Dotnet Gha Patterns · wshaddixDesigning GitHub Actions workflows. Reusable workflows, composite actions, matrix builds, caching.
- ▌ Dotnet Io Pipelines · wshaddixBuilding high-perf network I/O. PipeReader/PipeWriter, backpressure, protocol parsers, Kestrel.
- ▌ Dotnet Localization · wshaddixLocalizing .NET apps. .resx resources, IStringLocalizer, source generators, pluralization, RTL.
- ▌ Dotnet Maui Testing · wshaddixTesting .NET MAUI apps. Appium device/emulator testing, XHarness, platform validation.
- ▌ Dotnet Minimal Apis · wshaddixBuilding Minimal APIs. Route groups, endpoint filters, TypedResults, OpenAPI 3.1, organization.
- ▌ Dotnet Terminal Gui · wshaddixBuilding full TUI apps. Terminal.Gui v2: views, layout (Pos/Dim), menus, dialogs, bindings, themes.
- ▌ Dotnet Test Quality · wshaddixMeasuring test effectiveness. Coverlet code coverage, Stryker.NET mutation testing, flaky detection.
- ▌ Dotnet Uno Platform · wshaddixBuilding Uno Platform apps. Extensions, MVUX reactive pattern, Toolkit controls, Hot Reload.
- ▌ Middleware Patterns · wshaddixCustom middleware patterns for ASP.NET Core applications. Covers request/response pipeline, middleware ordering, conditional middleware, IMiddleware factory pattern, IExceptionHandler (.NET 8+), and reusable middleware components. Use when creating custom middleware in ASP.NET Core applications, understanding middleware pipeline ordering, or implementing cross-cutting concerns like logging, authentication, and caching.
- ▌ Signalr Integration · wshaddixSignalR integration patterns for real-time communication in ASP.NET Core Razor Pages applications. Use when implementing real-time features in ASP.NET Core applications, setting up SignalR hubs and clients, or managing WebSocket connections and groups.
- ▌ Validation Patterns · wshaddixComprehensive validation patterns for ASP.NET Core applications. Covers FluentValidation integration, DataAnnotations, IValidatableObject, IValidateOptions<T>, MediatR pipeline behavior, and client-side validation. Use when implementing validation in ASP.NET Core applications, setting up FluentValidation, creating custom validators, configuring options validation, or implementing cross-field validation.
- ▌ Aspire Configuration · wshaddixConfigure Aspire AppHost to emit explicit app config via environment variables while keeping app code free of Aspire clients and service discovery. Use when wiring AppHost resources to application configuration, ensuring production configuration is transparent and portable outside of Aspire, or avoiding Aspire client packages inside application code.
- ▌ Database Performance · wshaddixDatabase access patterns for performance. Separate read/write models, avoid N+1 queries, use AsNoTracking, apply row limits, and never do application-side joins. Works with EF Core and Dapper. Use when designing data access layers, optimizing slow database queries, choosing between EF Core and Dapper, or avoiding common performance pitfalls.
- ▌ Dotnet Accessibility · wshaddixBuilding accessible .NET UI. SemanticProperties, ARIA, AutomationPeer, testing tools per platform.
- ▌ Dotnet Add Analyzers · wshaddixAdding analyzer packages to a project. Nullable, trimming, AOT compat analyzers, severity config.
- ▌ Dotnet Agent Gotchas · wshaddixGenerating or modifying .NET code. Common agent mistakes: async, NuGet, deprecated APIs, DI.
- ▌ Dotnet CLI Packaging · wshaddixPublishing to package managers. Homebrew, apt/deb, winget, Scoop, Chocolatey manifests.
- ▌ Dotnet Msbuild Tasks · wshaddixWriting custom MSBuild tasks. ITask, ToolTask, IIncrementalTask, inline tasks, UsingTask.
- ▌ Dotnet Observability · wshaddixAdding observability. OpenTelemetry traces/metrics/logs, health checks, custom metrics.
- ▌ Dotnet Wpf Migration · wshaddixMigrating desktop apps. WPF/WinForms to .NET 8+, WPF to WinUI or Uno, UWP to WinUI, decision matrix.
- ▌ Mjml Email Templates · wshaddixGuidelines for creating responsive email templates using MJML framework with .NET Razor syntax integration. Use when building responsive email templates in .NET applications, integrating MJML with Razor views, or creating email layouts that work across email clients.
- ▌ Razor Pages Patterns · wshaddixBest practices for building production-grade ASP.NET Core Razor Pages applications. Focuses on structure, lifecycle, binding, validation, security, and maintainability in web apps using Razor Pages as the primary UI framework. Use when building Razor Pages applications, designing PageModels and handlers, implementing model binding and validation, or securing Razor Pages with authentication and authorization.
- ▌ Dotnet Ado Build Test · wshaddixConfiguring .NET build/test in Azure DevOps. DotNetCoreCLI task, Artifacts, test results.
- ▌ Dotnet API Versioning · wshaddixVersioning HTTP APIs. Asp.Versioning.Http/Mvc, URL segment, header, query string, sunset.
- ▌ Dotnet Blazor Testing · wshaddixTesting Blazor components. bUnit rendering, events, cascading params, JS interop mocking.
- ▌ Dotnet Build Analysis · wshaddixInterpreting MSBuild output, NuGet errors, or analyzer warnings. Error codes, CI drift fixes.
- ▌ Dotnet Csproj Reading · wshaddixReading or modifying .csproj files. SDK-style structure, PropertyGroup/ItemGroup, CPM, props.
- ▌ Dotnet Gha Build Test · wshaddixConfiguring .NET build/test in GitHub Actions. setup-dotnet, NuGet caching, test reporting.
- ▌ Dotnet Native Interop · wshaddixCalling native libraries via P/Invoke. LibraryImport, marshalling, cross-platform resolution.
- ▌ Dotnet Security Owasp · wshaddixSecuring .NET code or reviewing for vulnerabilities. OWASP Top 10 mitigations, pattern warnings.
- ▌ Logging Observability · wshaddixProduction-grade logging and observability patterns for ASP.NET Core Razor Pages. Covers structured logging with Serilog, correlation IDs, health checks, request logging, OpenTelemetry integration, and diagnostic best practices. Use when setting up structured logging in ASP.NET Core applications, implementing distributed tracing with OpenTelemetry, or configuring health checks and observability.
- ▌ Playwright CI Caching · wshaddixOptimize CI/CD pipelines by caching Playwright browser binaries and dependencies to speed up test execution. Use when setting up Playwright in CI/CD pipelines, reducing build times by caching browser binaries, or configuring GitHub Actions or Azure DevOps for Playwright tests.
- ▌ Skills Index Snippets · wshaddixCode snippets and templates for working with the skills index and marketplace functionality. Use when creating new skills, updating skill index files, or validating skill metadata and structure.
- ▌ Dotnet Aspire Patterns · wshaddixUsing .NET Aspire. AppHost orchestration, service discovery, components, dashboard, health checks.
- ▌ Dotnet Benchmarkdotnet · wshaddixWriting benchmarks. BenchmarkDotNet setup, memory diagnosers, baselines, result analysis.
- ▌ Dotnet Blazor Patterns · wshaddixBuilding Blazor apps. Hosting models, render modes, routing, streaming rendering, prerender.
- ▌ Dotnet CI Benchmarking · wshaddixGating CI on perf regressions. Automated threshold alerts, baseline tracking, trend reports.