What problem does it solve? C# codebases without proper nullable reference type (NRT) annotations suffer from NullReferenceException bugs and compiler warnings that AI agents often silence incorrectly with the null-forgiving operator. This Skill provides the annotation patterns, attributes, and migration strategies needed to adopt NRT correctly. ## Core Features & Use Cases - NRT Enablement & Migration: Enable <Nullable>enable</Nullable> project-wide or per-file with #nullable directives, including an incremental migration strategy for large legacy codebases. - Nullability Attributes: Apply [NotNullWhen], [MemberNotNull], [NotNullIfNotNull], [DoesNotReturn], and related attributes from System.Diagnostics.CodeAnalysis to express contracts the compiler cannot infer. - Agent Gotcha Prevention: Avoid the five most common AI agent mistakes, such as abusing the ! operator, ignoring CS8602 warnings, and breaking nullable contracts on interface implementations. - Use Case: When migrating a legacy .NET Framework codebase to net8.0, use this Skill to enable NRT incrementally, annotate Try-pattern methods correctly, and configure EF Core entities so required and optional columns map to non-nullable and nullable properties. ## Quick Start Ask the AI to enable nullable reference types in your .NET project and fix the resulting warnings file by file using proper annotations instead of the null-forgiving operator.