Skills DirectorySearch all skills ↗

AI agent skill · by @dennisdoomen

Csharp Guidelines

Apply the C# coding and design guidelines by Dennis Doomen when writing, reviewing, or refactoring C# code. Use this skill whenever you generate or evaluate C# to ensure it follows the established rules for class design, member design, maintainability, naming, performance, testability, and more.

Archived 2026-10-23 · Source updated 2026-07-21. Check the original repository for the latest version.

SKILL.md instructions

# C# Coding Guidelines

Apply these rules whenever writing or reviewing C# code.

**Severity:** **Must** = always enforce · **Should** = follow unless there is a clear reason not to · **May** = optional good practice.

Consult the `references/` files for the full set of rules per category:

- [General (AV0100)](references/general.md) — KISS, YAGNI, DRY, OOP pillars, AI code
- [Class Design (AV1000)](references/class-design.md) — SRP, LSP, LoD, coupling
- [Member Design (AV1100)](references/member-design.md) — properties, methods, parameters, null rules
- [Miscellaneous Design (AV1200)](references/misc-design.md) — exceptions, events, generics, LINQ
- [Maintainability (AV1500)](references/maintainability.md) — method size, var, control flow, naming files
- [Testability (AV1600)](references/testability.md) — test naming, builders, public API testing
- [Naming (AV1700)](references/naming.md) — casing, prefixes, abbreviations, async suffix
- [Performance (AV1800)](references/performance.md) — async/await, Task, ValueTask
- [Framework Usage (AV2200)](references/framework.md) — idiomatic C#, dynamic, LINQ syntax
- [Documentation (AV2300)](references/documentation.md) — XML docs, inline comments
- [Layout (AV2400)](references/layout.md) — indentation, member order, regions

Related skills