target-authoring

Diagnoses and fixes custom MSBuild target authoring anti-patterns using canonical SDK patterns.

Updated Jul 20, 2026
One-click install
npx skills add https://github.com/Netcodr81/kinetic-reports --skill target-authoring-netcodr81
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: target-authoring
Source: https://github.com/Netcodr81/kinetic-reports/tree/main/.github/skills/target-authoring
Command: npx skills add https://github.com/Netcodr81/kinetic-reports --skill target-authoring-netcodr81

SYSTEM DOCUMENTATION & REQUIREMENTS

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.

Frequently Asked Questions about target-authoring

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make a custom MSBuild target incremental?▼

Add Inputs and Outputs attributes to the core target so MSBuild skips it when outputs are newer than inputs. Also register generated files in the FileWrites item so Clean can remove them.