Use only for MSBuild failure investigation, build-performance analysis, or review of existing build XML/extension contracts.
Custom Target Authoring Patterns
Canonical patterns for writing custom MSBuild targets. USE FOR: diagnosing and fixing custom target authoring anti-patterns; broken SDK target chains across files (e.g., Directory.Build.targets silently redefining SDK targets); targets that replace CompileDependsOn instead of extending it with $(CompileDependsOn); query targets returning stale results from Outputs vs Returns misuse; missing Inputs/Outputs causing unnecessary rebuilds; missing FileWrites registration. Covers DependsOnTargets vs BeforeTargets vs AfterTargets, the Build→CoreBuild three-level pattern, and the $(XxxDependsOn) chain-extension pattern. DO NOT USE FOR: incremental build tuning (use incremental-build), parallelization (use build-parallelism), general anti-patterns (use msbuild-antipatterns), non-MSBuild build systems.
Related skills
Analyze MSBuild binary logs to diagnose build failures.
Generate MSBuild binary logs (binlogs) for build diagnostics and analysis.
Building AI agents on .NET?
Managed Code builds production AI agents in C# and .NET.