What problem does it solve? Custom MSBuild targets often break silently: Directory.Build.targets files redefine SDK targets, CompileDependsOn chains get overwritten instead of extended, query targets return stale results, and missing Inputs/Outputs cause unnecessary rebuilds. This Skill provides canonical patterns from Microsoft.Common.CurrentVersion.targets to diagnose and fix these authoring anti-patterns. ## Core Features & Use Cases - Chain Extension Patterns: Teaches the Build→CoreBuild three-level pattern and how to append to $(XxxDependsOn) properties instead of overwriting them, preserving SDK targets. - Mechanism Selection Guidance: Clarifies when to use DependsOnTargets vs BeforeTargets vs AfterTargets, and Returns vs Outputs for query targets versus incremental builds. - Complete Target Template: Provides a full custom target template including validation targets, empty extensibility hooks, Inputs/Outputs incrementality, and FileWrites registration for clean tracking. - Use Case: Your Directory.Build.targets silently breaks the build because it redefines CompileDependsOn. Use this Skill to identify the overwrite, rewrite it as an append to $(CompileDependsOn), and add proper Inputs/Outputs for incremental builds. ## Quick Start Ask the AI to review your custom MSBuild target in Directory.Build.targets and fix any chain-overwriting or missing incrementality issues using canonical target authoring patterns.