build-perf-diagnostics

Analyze MSBuild binlog Target and Task Performance Summaries to identify build bottlenecks.

1|Updated May 21, 2026
One-click install
npx skills add https://github.com/1k-off/umbraco-observability-playground --skill build-perf-diagnostics-1k-off
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: build-perf-diagnostics
Source: https://github.com/1k-off/umbraco-observability-playground/tree/main/.agents/skills/build-perf-diagnostics
Command: npx skills add https://github.com/1k-off/umbraco-observability-playground --skill build-perf-diagnostics-1k-off

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill diagnoses MSBuild build performance bottlenecks by analyzing binary logs so you can identify exactly which targets and tasks consume the most time.

Core Features & Use Cases

  • Binlog-based timeline and bottleneck analysis: Generates and interprets MSBuild binlogs, using Target/Task Performance Summary to surface expensive steps.
  • Targeted bottleneck detection: Flags common culprits such as ResolveAssemblyReference (RAR) slowness, Roslyn analyzer overhead, serialization bottlenecks, and excessive Copy/I/O time.
  • Safe, context-aware usage guidance: Enforces scope boundaries like using this after baselines exist (and not for first-time baseline creation), with fallback analysis when the MCP tooling is unavailable.

Quick Start

Run a binlog for your build, then ask the AI to analyze the Target/Task Performance Summary in the replay output to identify the top bottlenecks and likely root causes.

Frequently Asked Questions about build-perf-diagnostics

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

FAQPage Schema
How do I diagnose MSBuild build performance bottlenecks?

To diagnose MSBuild build bottlenecks, generate a binary log artifact using /bl, replay it with performance summaries enabled, and analyze the Target and Task Performance Summary sections to identify expensive steps.

What causes ResolveAssemblyReference to be slow in .NET builds?

ResolveAssemblyReference slowness in .NET builds is identified as a common bottleneck by analyzing MSBuild binlogs, where the Target and Task Performance Summary sections surface excessive time consumed during the assembly resolution phase.

How to check Roslyn analyzer overhead using an MSBuild binlog?

You can check Roslyn analyzer overhead by replaying an MSBuild binlog to inspect the Task Performance Summary, which flags analyzer execution time as a specific bottleneck category dominating the compile workflow.

Do I need a baseline measurement before analyzing MSBuild binlogs?

Yes, you need an existing baseline measurement before using this MSBuild binlog analysis, because it is designed to categorize bottlenecks after baselines exist rather than for first-time baseline creation.

Can I analyze build logs if the binlog MCP tooling is unavailable?

Yes, you can analyze build logs when the binlog MCP tooling is unavailable because the Skill provides fallback analysis by interpreting node utilization and performance thresholds directly from replayed binlog output.

Why does my MSBuild build spend so much time on Copy and I/O tasks?

Excessive Copy and I/O time is flagged as a specific bottleneck category by interpreting the MSBuild binlog performance summary, indicating that file operations are dominating the overall build timeline.