CtrlK
BlogDocsLog inGet started
Tessl Logo

dotnet-aot-compat

Make .NET projects compatible with Native AOT and trimming by systematically resolving IL trim/AOT analyzer warnings. USE FOR: making projects AOT-compatible, fixing trimming warnings, resolving IL warnings (IL2026, IL2070, IL2067, IL2072, IL3050), adding DynamicallyAccessedMembers annotations, enabling IsAotCompatible. DO NOT USE FOR: publishing native AOT binaries, optimizing binary size, replacing reflection-heavy libraries with alternatives. INVOKES: no tools — pure knowledge skill.

76

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is dotnet-aot-compat in dotnet/skills

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a strong, highly actionable workflow guide with executable code, clear validation feedback loops, and an externalized polyfills reference. Its only weakness is mild verbosity from a conceptual Background section and repeated anti-exploration reminders, plus detail that could be further split into reference files.

Suggestions

Collapse the 'Background: What AOT Compatibility Means' section to one line or fold it into 'Critical Rules' — Claude already understands trimming and static reachability analysis.

Consolidate the repeated 'do not explore the codebase / stay warning-driven' guidance into a single prominent callout near Step 1 instead of restating it in Step 3, Step 4, and Stop Signals.

Consider moving the Strategy A–D fix recipes and/or Common Gotchas into a references/ file (e.g. references/fix-recipes.md) to keep SKILL.md a tighter overview that points one level deep.

DimensionReasoningScore

Conciseness

Largely lean and code-forward, but the 'Background: What AOT Compatibility Means' section explains trimmer concepts Claude already knows, and the 'do not explore the codebase' admonition is repeated across the Step 1 intro, Step 3, Step 4, and Stop Signals — minor over-explanation that could be trimmed.

4 / 5

Actionability

Copy-paste-ready throughout: concrete `dotnet build ... | grep 'IL[0-9]{4}'` commands, csproj XML, and complete before/after C# for each Strategy A–D plus the JSON source-generation batch fix cover the common cases.

5 / 5

Workflow Clarity

A clear 6-step procedure with explicit validation checkpoints (rebuild after each 5–10 warning batch, Step 5 'Rebuild and repeat', Step 6 'Validate all TFMs'), feedback loops for cascading warnings, a Stop Signals section, and a final Checklist — fully matching the batch-operation feedback-loop expectation.

5 / 5

Progressive Disclosure

Good structure with well-signaled one-level-deep navigation to references/polyfills.md (verified to exist) and external Microsoft docs; however most detailed content (Strategies A–D, Common Gotchas) is inlined in SKILL.md rather than split into separate reference files, leaving minor organization gaps.

4 / 5

Total

18

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: it states the skill's purpose concretely, lists natural trigger phrases and specific IL codes, gives explicit use/avoid guidance, and uses third-person voice throughout. It matches the best reference examples in the rubric.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'systematically resolving IL trim/AOT analyzer warnings', 'fixing trimming warnings', 'resolving IL warnings (IL2026, IL2070, IL2067, IL2072, IL3050)', 'adding DynamicallyAccessedMembers annotations', 'enabling IsAotCompatible' — with comprehensive coverage of the skill's scope.

5 / 5

Completeness

Explicitly answers both 'what' (Make .NET projects compatible with Native AOT and trimming by resolving IL warnings) and 'when' via the 'USE FOR:' trigger list, with an additional 'DO NOT USE FOR:' boundary clause.

5 / 5

Trigger Term Quality

Includes natural phrases users would say ('make projects AOT-compatible', 'fix trimming warnings', 'fix IL warnings') plus specific IL codes and API names as synonyms; coverage is comprehensive for this domain.

5 / 5

Distinctiveness Conflict Risk

A clear .NET Native AOT/trimming niche with distinct triggers, and the explicit 'DO NOT USE FOR: publishing native AOT binaries, optimizing binary size...' sharply reduces overlap with adjacent skills.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
dotnet/msbuild
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.