CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

authoring-errors-and-warnings

Guides authoring of MSBuild errors, warnings, and diagnostic messages. Consult when adding new MSBxxxx codes, writing or modifying user-facing diagnostic text, deciding between error/warning/message severity, working with Strings.resx resource files, formatting paths in error output, or evaluating whether a new warning could break WarnAsError builds.

Quality

88%

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

SKILL.md
Quality
Evals
Security

Quality

Content

75%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.

A strong, well-structured skill body that consistently delivers non-obvious domain knowledge — code ranges, resx conventions, severity decision framework, WarnAsError constraints — through concrete examples and a useful end checklist. The main improvements are small: deduplicate the assigning-msb-error-code.md link, supply exact resx file paths, and add explicit recovery guidance for common failure modes.

Suggestions

Remove the duplicated reference to assigning-msb-error-code.md — it appears both in the intro (line 11) and again in the Assignment Process section (line 73); keep one.

Add the exact Strings.resx file paths per assembly (e.g., src/Build/Resources/Strings.resx) so the assignment process is fully executable without further lookup.

Include a short feedback loop for the common failure case — e.g., 'If the next code is already in use, increment and re-check' — and a one-line example of how to test that a new error is emitted with the correct code and text.

DimensionReasoningScore

Conciseness

The body is dense with domain-specific knowledge Claude would not know (MSB code ranges, {StrBegin} markers, WarnAsError policy, resx conventions) with no basic-concept padding. It falls just short of fully lean due to minor trim candidates, notably the duplicated link to assigning-msb-error-code.md (once in the intro, again under Assignment Process) and the slightly chatty transition 'Use the standard formatting method that extracts and applies the error code.'

4 / 5

Actionability

Concrete, adaptable guidance throughout: the resx <data> XML format with {StrBegin} comment convention, exact C# API calls (Log.LogErrorWithCodeFromResources, ProjectErrorUtilities.ThrowInvalidProject), the code-range table, and the BAD/GOOD message example. Minor gaps keep it from copy-paste-ready: exact Strings.resx file paths are not given ('Open the Strings.resx file for the appropriate assembly') and no test example shows how to verify an error is produced.

4 / 5

Workflow Clarity

The assignment process is a clear numbered sequence with an explicit verification step ('Search the repo to confirm the code is not already in use'), and the final checklist provides explicit checkpoints (full build for .xlf generation, test verification). It lacks an explicit feedback loop for error recovery (e.g., what to do when a code is already in use), so it matches 'clear sequence with most checkpoints present; minor validation gaps' rather than the top anchor.

4 / 5

Progressive Disclosure

Well-organized sections with clearly signaled, one-level-deep references delegating detail appropriately ('For the mechanics of error code assignment, see assigning-msb-error-code.md'; 'See Localization.md for the full localization process'). However, the bundle contains no references/scripts/assets files to verify against, the external paths could not be confirmed in this environment, and the duplicated assigning-msb-error-code.md link is a minor organization gap.

4 / 5

Total

16

/

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.

An exemplary description: it states a clear what, an explicit and detailed when-clause enumerating six concrete trigger scenarios, uses third-person voice, and stays concise without padding. All terms are natural and domain-specific, minimizing conflict with other skills.

DimensionReasoningScore

Specificity

The description lists multiple specific concrete actions — 'adding new MSBxxxx codes', 'writing or modifying user-facing diagnostic text', 'deciding between error/warning/message severity', 'working with Strings.resx resource files', 'formatting paths in error output', 'evaluating whether a new warning could break WarnAsError builds' — covering the domain comprehensively, matching the anchor for multiple specific concrete actions.

5 / 5

Completeness

It explicitly answers both what ('Guides authoring of MSBuild errors, warnings, and diagnostic messages') and when ('Consult when adding new MSBxxxx codes, writing or modifying user-facing diagnostic text...') with concrete trigger phrases, in third-person voice.

5 / 5

Trigger Term Quality

Natural trigger terms include 'errors, warnings, and diagnostic messages', 'MSBxxxx codes', 'Strings.resx resource files', 'error/warning/message severity', and 'WarnAsError builds' — comprehensive coverage of what a user would naturally say, including file names and technical markers.

5 / 5

Distinctiveness Conflict Risk

Clear niche — MSBuild diagnostic authoring with MSB-specific triggers (MSBxxxx, Strings.resx, WarnAsError) — making it highly distinguishable from other skills with minimal conflict risk.

5 / 5

Total

20

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 4 suspicious

Warning

Total

14

/

16

Passed

Repository

dotnet/msbuild

Path

.github/skills/authoring-errors-and-warnings/SKILL.md

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.