CtrlK
BlogDocsLog inGet started
Tessl Logo

template-validation

Validates custom dotnet new templates for correctness before publishing. Catches missing fields, parameter bugs, shortName conflicts, constraint issues, and common authoring mistakes that cause templates to fail silently. USE FOR: checking template.json files for errors before publishing or testing, diagnosing why a template doesn't appear after installation, reviewing template parameter definitions for type mismatches and missing defaults, finding shortName conflicts with dotnet CLI commands, validating post-action and constraint configuration. DO NOT USE FOR: finding or using existing templates (use template-discovery), creating projects from templates (use template-instantiation), creating templates from existing projects (use template-authoring).

76

Quality

95%

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

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 well-engineered validation spec: severity-tagged rules, a hard parse gate with feedback loop, a decisive output contract, and concrete fixes mandated for every finding. The only weaknesses are mild redundancy in the parse-gate/malformed-JSON instructions (stated three times) and an all-inline structure that a small references/ split could improve.

Suggestions

Consolidate the parse-gate guidance: state the two-part malformed-JSON response format once (e.g., in Workflow Step 2 or the opening blockquote) and reference it from Step 3 instead of repeating the 'exactly two parts' / 'do not append' rules in three places.

Consider moving the longer rule tables (e.g., symbol/constraint validation detail) into a references/ file, keeping SKILL.md as a lean overview with one-level-deep pointers, per progressive-disclosure best practice.

The Common Pitfalls table partially restates findings from the rule sections (shortName conflict, sourceName, prefix collision); trimming it to pitfalls not already covered as rules would save tokens without losing guidance.

DimensionReasoningScore

Conciseness

The body is dense and rule-driven (tables of field/severity/rule) with no explanation of concepts Claude already knows, but the parse-gate rule is stated three times — in the opening blockquote ("exactly two parts"), again in Workflow Step 2, and again in Step 3 ("exactly two parts" + "Do not append a findings table or semantic totals") — which could be consolidated. This fits anchor 4 (efficient, minor over-explanation that could be trimmed) rather than 5, and is well above anchor 3.

4 / 5

Actionability

Every rule carries a severity and location, findings require a "concrete fix — the corrected value, JSON snippet, or a specific edit instruction", a worked findings table shows exact fixes (e.g., `Rename to a distinctive value, e.g. "my-list"`), and a complete valid choice-parameter JSON example is included. This is copy-paste-ready instruction guidance, matching the top anchor.

5 / 5

Workflow Clarity

A clear three-step sequence (locate → parse → report) with an explicit validation checkpoint: "Parse JSON before applying any semantic rule. If parsing fails... stop" and a feedback loop ("Re-parse after the correction before making any semantic claim"). The verdict-header decision tree and severity-ordered findings table give an unambiguous output contract. This matches the top anchor (explicit validation steps, error-recovery loops).

5 / 5

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are absent) and the "More Info" links point one level deep to the authoritative dotnet templating wiki, clearly signaled. Sections are well organized, but ~200 lines of detailed rule tables are all inlined in SKILL.md where a references/ split (e.g., symbol/constraint detail) would lighten the always-loaded overview — a minor organization gap, so anchor 4 rather than 5.

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 a strong example: concrete capabilities, explicit USE FOR / DO NOT USE FOR triggers, third-person voice, and clear separation from sibling template skills. Every clause is trigger-relevant with no padding or over-claims.

DimensionReasoningScore

Specificity

The description enumerates multiple concrete actions — "Catches missing fields, parameter bugs, shortName conflicts, constraint issues" — plus specific trigger scenarios like "diagnosing why a template doesn't appear after installation". Coverage spans the full validation surface (fields, parameters, shortNames, post-actions, constraints) with no vague filler.

5 / 5

Completeness

It explicitly answers both questions: the 'what' ("Validates custom dotnet new templates for correctness before publishing") and the 'when' via an explicit "USE FOR:" clause with four concrete trigger phrases. Third-person voice is used throughout, matching the anchor example's structure.

5 / 5

Trigger Term Quality

It includes the natural terms a user would say: "template.json files", "template doesn't appear after installation", "shortName conflicts with dotnet CLI commands", "before publishing or testing", plus verb variants (checking, diagnosing, reviewing, finding, validating). File-level vocabulary (template.json, dotnet new) is comprehensive for this domain.

5 / 5

Distinctiveness Conflict Risk

A clear niche (validation only) is protected by an explicit "DO NOT USE FOR:" clause routing to sibling skills (template-discovery, template-instantiation, template-authoring). Trigger terms like "diagnosing why a template doesn't appear" and "checking template.json for errors" are distinct from authoring/usage triggers, minimizing overlap risk.

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
dotnet/skills
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.