From programming
Idiomatic C# /.NET development. Use when writing C# code, changing `.csproj` or `.sln`, or working on ASP.NET Core apps, libraries, CLIs, workers, and xUnit/NUnit/MSTest suites. Emphasizes nullable references, async/await, LINQ discipline, boundary validation, focused `dotnet` feedback, and minimal dependencies. NOT for Go, Python, TypeScript, shell scripts, or infra-only work.
How this skill is triggered — by the user, by Claude, or both
Slash command
/programming:writing-csharpengineerThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use only for C# and .NET code. Follow the project's SDK, target frameworks,
Use only for C# and .NET code. Follow the project's SDK, target frameworks, nullable settings, analyzer config, test stack, and local conventions.
Read principles.md before writing, changing, or reviewing C# code. Read conditional references only when the change touches that area.
dotnet test loop fast.dotnet format, analyzers, warning policy, or slow verification flow.*.csproj, Directory.Build.props, global.json, solution file, CI, and nearby code before using SDK- or framework-specific APIs.// for brief implementation notes; avoid long /* */ explanations.Run focused dotnet checks while editing, then the project-configured build,
tests, analyzers, and formatting checks before final output. Prefer the
narrowest useful project or solution target for the hot loop, then the broader
configured command before final output.
If a check is unavailable, state that and run the closest configured gate. If a check fails, quote the failure, diagnose the cause, fix one issue, and rerun the relevant check.
*.csproj or containing *.sln before choosing files or commands.TargetFramework, TargetFrameworks, LangVersion, global.json, CI, and lockfiles before using newer APIs or syntax.Include:
npx claudepluginhub alexei-led/cc-thingz --plugin programmingGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.