CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

has-selector

Use when reviewing stylesheets or components that use JavaScript to toggle classes on parent elements based on child state, form input values, or content presence — :has() may replace the JavaScript entirely.

Quality

85%

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

78%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 well-structured, lean overview body that delegates implementation detail appropriately to references/rule.md and keeps its directives concrete. The main improvement opportunities are trimming the duplicated motivational intro, adding one inline example selector, and pointing at the reference's verification steps from the body.

Suggestions

Trim or shorten the opening motivational paragraph in the body — it is repeated nearly verbatim as 'Why It Matters' in references/rule.md, so the body version competes for tokens without adding new information.

Add a single inline example :has() rule (e.g., '.card:has(img) { … }') to the Fix section so the core action is executable without opening the reference file.

Have the body's Fix or Code Review section mention that references/rule.md ends with verification steps (DevTools inspection, fallback check, performance profiling), so the validation loop is discoverable from the overview.

DimensionReasoningScore

Conciseness

The body is lean and directive with short sections ('Look for patterns in this code where JavaScript toggles a class on a parent element…', 'Replace the JavaScript class-toggling logic with a CSS :has() selector'), but the motivational intro paragraph duplicates the 'Why It Matters' text in references/rule.md and the dated claim 'Baseline support since late 2023 — all major browsers include it' is time-sensitive. This fits the 4 anchor (minor instances that could be trimmed) rather than the fully token-efficient 5.

4 / 5

Actionability

Guidance is concrete and executable for an instruction-only skill — 'Show the selector that targets the parent element when the relevant child condition is met' — with full executable CSS examples one level deep in references/rule.md. It is not a 5 because no example selector appears inline in the body, and not a 3 because the directives are specific rather than pseudocode-level.

4 / 5

Workflow Clarity

The Check → Fix → Explain sections give a coherent, unambiguous sequence for this single-purpose review skill, and no destructive/batch validation cap applies. It is a 4 rather than 5 because the 'Code Review' section partially restates Check/Fix guidance and the body does not surface that references/rule.md ends with explicit verification steps.

4 / 5

Progressive Disclosure

The body is a clear overview with a well-signaled, one-level-deep reference: 'For full implementation details, code examples, and framework-specific guidance, see references/rule.md' — and that file exists and appropriately holds the bulk content (code examples, browser support, verification). This matches the 5 anchor exactly.

5 / 5

Total

17

/

20

Passed

Description

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

A strong description with an explicit, well-qualified trigger clause and a concrete statement of what the skill does. It is specific, distinctive, and free of fluff; only minor synonym coverage (CSS, parent selector) keeps it from perfection on trigger terms.

DimensionReasoningScore

Specificity

The description names the domain and concrete conditions — 'reviewing stylesheets or components that use JavaScript to toggle classes on parent elements based on child state, form input values, or content presence' — and states the outcome ':has() may replace the JavaScript entirely'. It stops short of the 5 anchor's comprehensive multi-action coverage, but exceeds the 3 anchor's '1-2 concrete actions'.

4 / 5

Completeness

Both 'what' and 'when' are explicitly answered with concrete trigger phrases: 'Use when reviewing stylesheets or components that use JavaScript to toggle classes on parent elements based on child state, form input values, or content presence — :has() may replace the JavaScript entirely.' This matches the 5 anchor; it is above the 4 anchor because the 'when' is highly explicit and specific rather than improvable.

5 / 5

Trigger Term Quality

Natural trigger terms are present ('stylesheets', 'JavaScript', 'toggle classes', 'parent elements', 'form input values', ':has()'), giving good keyword coverage. A few natural terms users might say are missing (e.g., 'CSS' itself, 'parent selector'), so it fits the 4 anchor rather than the comprehensive 5.

4 / 5

Distinctiveness Conflict Risk

The description carves a clear niche — JS class-toggling on parents replaceable by :has() — with distinct triggers and minimal overlap risk with other skills, matching the 5 anchor ('Clear niche with distinct triggers; minimal conflict risk').

5 / 5

Total

18

/

20

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

thedaviddias/Front-End-Checklist

Path

skills/has-selector/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.