{what this skill teaches agents}
{what this skill teaches agents}
Run and debug GitHub Actions workflows locally using the `act` CLI tool. Covers runner image selection, secrets/vars handling, job targeting, event simulation, and common troubleshooting patterns. TRIGGER THIS SKILL WHEN: - Running or testing GitHub Actions workflows locally - Debugging CI/CD pipeline failures without pushing to GitHub - Validating workflow file changes before committing - Simulating different GitHub events (push, pull_request, workflow_dispatch) - Troubleshooting act runner image issues or missing tools SYMPTOMS THAT TRIGGER THIS SKILL: - Agent pushes workflow changes to test them instead of running locally - Agent doesn't know how to provide secrets or vars to local workflow runs - Agent can't reproduce a CI failure locally - Agent needs to run a specific job or workflow in isolation
Write integration tests using .NET Aspire's testing facilities with xUnit. Covers test fixtures, distributed application setup, endpoint discovery, and patterns for testing ASP.NET Core apps with real dependencies.
Design stable, compatible public APIs using extend-only design principles. Manage API compatibility, wire compatibility, and versioning for NuGet packages and distributed systems.
Write modern, high-performance C# code using records, pattern matching, value objects, async/await, Span<T>/Memory<T>, and best-practice API design patterns. Emphasizes functional-style programming with C# 12+ features.
Choosing the right concurrency abstraction in .NET - from async/await for I/O to Channels for producer/consumer to Akka.NET for stateful entity management. Avoid locks and manual synchronization unless absolutely necessary.
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.