CtrlK
BlogDocsLog inGet started
Tessl Logo

new-control-api

Instructions for adding new public APIs (properties, methods, events, delegates) to existing WinForms controls or components. Covers API issue tracking, PublicAPI file maintenance, property/event conventions, CodeDOM serialization, design-time attributes, and XML documentation.

66

Quality

80%

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

Fix and improve this skill with Tessl

tessl review fix ./.github/skills/new-control-api/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

92%

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

The body is highly actionable and well-sequenced with concrete executable code, explicit validation checkpoints, and a final checklist, while remaining dense and free of filler. Its main weakness is progressive disclosure: everything lives in one ~630-line file with no bundle references to split out the detailed catalogs.

Suggestions

Extract the PublicAPI entry-format catalog (Section 2.3) and the Experimental API procedure (Section 7.2) into separate reference files under references/ and link to them one level deep, keeping SKILL.md as a tighter overview.

Move the full API-proposal-issue section template (Section 1.4) into a reference file so the main body can stay focused on the in-code conventions.

DimensionReasoningScore

Conciseness

The body is dense and assumes Claude's competence — it explains only non-obvious WinForms internals (PropertyStore constructor-ordering rationale, Events collection, RS0016 CI behavior, Experimental diagnostic IDs), not concepts Claude already knows. It is not a 2 because the length is driven by genuine domain breadth across nine convention areas with tight, actionable content rather than unnecessary explanation or padding.

3 / 3

Actionability

Provides complete, executable C# code blocks, exact file paths ('src\System.Windows.Forms\PublicAPI.Unshipped.txt'), exact Roslyn PublicAPI entry formats, and concrete attribute patterns that are copy-paste ready. It is not a 2 because the examples are fully executable rather than pseudocode and include the specific details (nullable '!'/'?' markers, static key patterns) needed to apply them.

3 / 3

Workflow Clarity

Multi-step processes are clearly sequenced with explicit checkpoints: numbered conditional issue-management steps, 'stop and ask the user before proceeding' when content is missing, the build.cmd RS0016 re-verification callout, and a final 'Checklist Before Submitting'. It is not a 2 because validation and feedback steps are explicit rather than implicit or missing.

3 / 3

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are absent) and the skill is a single monolithic ~630-line SKILL.md with all content inline; material that could live in separate reference files (the PublicAPI format catalog, the Experimental API deep-dive) is not split out. It is not a 1 because the content is well-organized into clearly headed, numbered sections rather than an unstructured wall; not a 3 because there are no one-level-deep references or file-based navigation, and it is well over the 50-line simple-skill threshold.

2 / 3

Total

11

/

12

Passed

Description

67%

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 specific, third-person, and well-scoped to a distinct WinForms niche, but it omits any explicit 'Use when…' trigger guidance and relies on somewhat technical terms, capping completeness and trigger-term quality at 2.

Suggestions

Add an explicit 'Use when...' trigger clause naming natural user phrases (e.g., 'Use when adding a new property, method, event, or delegate to an existing WinForms control or component').

Soften jargon in the trigger surface — include common user-facing variations like 'WinForms control API', 'add a property to a control', or 'new public member' alongside 'PublicAPI file' and 'CodeDOM serialization'.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions — 'adding new public APIs (properties, methods, events, delegates)' and 'API issue tracking, PublicAPI file maintenance, property/event conventions, CodeDOM serialization, design-time attributes, and XML documentation' — matching the score-3 anchor. It is not a 2 because the actions are concrete and comprehensive rather than naming only a domain and a few actions; uses correct third-person voice so no specificity penalty applies.

3 / 3

Completeness

Clearly answers 'what does this do' but provides no 'Use when…' clause or equivalent explicit trigger guidance, so per the judging guidelines completeness is capped at 2. It is not a 1 because the 'what' is strong and specific; not a 3 because 'when to use it' is entirely absent rather than explicit.

2 / 3

Trigger Term Quality

Contains relevant terms a WinForms developer would say ('adding new public APIs', 'WinForms controls', 'properties, methods, events, delegates') but leans technical ('PublicAPI file maintenance', 'CodeDOM serialization') and lacks common variations or explicit trigger phrasing. It is not a 3 because natural term coverage is incomplete and jargon-heavy; not a 1 because the domain keywords are genuinely relevant rather than generic.

2 / 3

Distinctiveness Conflict Risk

Targets a clear niche — adding public APIs 'to existing WinForms controls or components' — and the body explicitly distinguishes it from the coding-standards skill, making conflicts unlikely. It is not a 2 because the scope is sharply bounded to a specific platform and task, not a generic 'works with document files' style overlap.

3 / 3

Total

10

/

12

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (639 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

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