dotnet-api-surface-validation

Track and enforce .NET library public API surfaces using Roslyn analyzers and Verify snapshots.

10|Updated Jan 28, 2026
One-click install
npx skills add https://github.com/AGIBuild/Agibuild.Fulora --skill dotnet-api-surface-validation
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotnet-api-surface-validation
Source: https://github.com/AGIBuild/Agibuild.Fulora/tree/main/.cursor/skills/dotnet-api-surface-validation
Command: npx skills add https://github.com/AGIBuild/Agibuild.Fulora --skill dotnet-api-surface-validation

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps .NET developers detect and manage changes to their library's public API surface, preventing accidental breaking changes and ensuring API stability across releases.

Core Features & Use Cases

  • API Change Detection: Uses Roslyn analyzers (PublicApiAnalyzers) to track shipped and unshipped APIs in text files.
  • Snapshot Testing: Employs the Verify library to create and compare reflection-based snapshots of the entire public API surface.
  • CI Enforcement: Integrates with CI pipelines to gate pull requests based on API compatibility using ApiCompat tooling.
  • Use Case: Ensure that a new version of a .NET library does not introduce any breaking changes to its public API before it is released to consumers.

Quick Start

Use the dotnet-api-surface-validation skill to set up PublicApiAnalyzers for your .NET project.

Frequently Asked Questions about dotnet-api-surface-validation

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

FAQPage Schema
How do I prevent accidental breaking changes to my .NET library's public API?

To prevent accidental breaking changes to a .NET public API, you can use Roslyn analyzers to track shipped and unshipped APIs in text files and snapshot testing with Verify to detect surface modifications.

How do I set up API change detection for a .NET project using Roslyn analyzers?

Setting up API change detection involves configuring PublicApiAnalyzers in your .NET project to manage shipped and unshipped API text files, requiring specific file formats and MSBuild configurations for effective implementation.

Can I gate pull requests in CI based on .NET API compatibility?

Yes, you can gate pull requests in CI based on .NET API compatibility by integrating ApiCompat tooling into your pipeline to enforce API stability and block unauthorized modifications before release.

What is the best way to track the public API surface of a .NET library?

The best way to track a .NET library public API surface is by combining Roslyn analyzers for file-based tracking, Verify for reflection-based snapshot testing, and ApiCompat for CI gating.

Does API surface validation work with snapshot testing for .NET libraries?

Yes, API surface validation works with snapshot testing by employing the Verify library to create and compare reflection-based snapshots of the entire public API surface across different builds.

What MSBuild configurations are needed for .NET API compatibility checking?

.NET API compatibility checking requires adherence to specific MSBuild configurations and file formats to effectively manage shipped and unshipped API files and run ApiCompat during builds.