CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pointer-trail-emitter

Build a cursor trail whose spacing stays constant at any hand speed, by emitting motes per unit of distance travelled rather than on a timer, so a flick draws the same continuous ribbon as a crawl instead of breaking into scattered dots. Covers sub-segment placement, the ring-buffer ordering trap, the idle breath a distance emitter needs, anchoring the trail to the screen in a 3-D scene, scaling scatter against the plane it hangs on, coasting instead of stopping dead, touch and reduced-motion fallbacks, and why moving the emitter to a DOM overlay to raise its z-index costs more than it buys. Use for cursor wisps, pointer sparks, embers, magic trails, comet tails, plankton, dust, or any mote trail that must stay legible however fast the hand moves.

Quality

90%

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.

An unusually dense, high-signal body: real code for every core decision, tuned numbers, measured evidence for its claims, and a closing verification checklist. The only real defect is a referenced bundled demo that does not exist in the bundle, plus code snippets that stop just short of copy-paste completeness.

Suggestions

Ship the demo the body describes ('The bundled demo keeps the stage intentionally neutral... dependency-free Vanilla JavaScript') as a bundle file, or remove the claim — a reader told to keep 'the live canvas separate from the interface' has nothing to open.

Define spawn() and damp() once so the accumulation-loop, placement, and damping snippets become copy-paste executable rather than leaving elisions.

Consider moving the 3-D-only material (camera anchoring, plane-extent scaling, the DOM-overlay port discussion) into a references/ file, keeping SKILL.md focused on the 2-D emitter core.

DimensionReasoningScore

Conciseness

Every section carries non-obvious craft knowledge — the teleport guard ('without the guard that one frame spawns thousands of motes and stalls'), the ring-buffer ordering trap, plane-relative scatter ('±0.03 units of jitter is a thread stitched to the cursor, not a drift'), and measured results ('1885 motes slowly and 1738 quickly, a 1.08× spread'). No section explains concepts Claude already knows; nothing reads as padding. This is the 5 anchor; the 4 anchor's 'minor instances of over-explanation' does not apply.

5 / 5

Actionability

Concrete, mostly executable code for the core loop ('while (E.acc >= STEP && guard++ < 14)'), sub-segment placement, the ring buffer fix, damping, and frustum mapping, plus a fully tuned parameter table (steps, damping coefficients, life ranges, opacity windows). It is not the 5 anchor because the snippets elide internals — 'spawn(/* … */)' and an undefined damp() — so they are not copy-paste ready as a complete implementation. It clearly exceeds the 3 anchor: the code shown is real, executable logic, not pseudocode.

4 / 5

Workflow Clarity

A single-purpose skill whose sections each follow a trap → symptom → fix structure (e.g., 'Symptom to recognise: motes that look one step behind the cursor and pop rather than fade in'), capped by an explicit 15-item 'Verify' checklist that serves as validation ('Spacing along the path is constant; a flick and a crawl draw the same ribbon'). Per the simple-skill note and the 5 anchor's checklist criterion, this is a 5; the 4 anchor would require missing checkpoints, and none are missing.

5 / 5

Progressive Disclosure

The single-file body is well-sectioned with clear headers and an appropriately scoped numbers table, and no external references are needed. It falls to 4 rather than 5 because the body claims 'The bundled demo keeps the stage intentionally neutral... dependency-free Vanilla JavaScript rendered through the Canvas 2D API' while no bundle files (references/, scripts/, assets/) actually exist — a referenced artifact that is not shipped — and the 3-D-specific sections (camera anchoring, plane scaling, z-index porting) could live in a separate reference to keep SKILL.md lean.

4 / 5

Total

18

/

20

Passed

Description

88%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 dense, well-crafted description that names the core mechanism concretely, enumerates its coverage, and closes with an explicit, synonym-rich 'Use for' clause. The only gaps are a few natural trigger phrasings and no explicit disambiguation against the closely related packaged trail skills it coexists with.

DimensionReasoningScore

Specificity

Concrete action plus comprehensive coverage: 'Build a cursor trail... by emitting motes per unit of distance travelled rather than on a timer', then enumerates the specific sub-topics handled — 'sub-segment placement, the ring-buffer ordering trap, the idle breath a distance emitter needs, anchoring the trail to the screen in a 3-D scene, scaling scatter against the plane it hangs on, coasting instead of stopping dead, touch and reduced-motion fallbacks'. This matches the 5 anchor (multiple specific concrete actions, comprehensive coverage); it is well above the 4 anchor because the covered capabilities are enumerated rather than having minor gaps.

5 / 5

Completeness

Explicitly answers both questions: what ('Build a cursor trail whose spacing stays constant at any hand speed, by emitting motes per unit of distance travelled rather than on a timer...') and when ('Use for cursor wisps, pointer sparks, embers, magic trails, comet tails, plankton, dust, or any mote trail that must stay legible however fast the hand moves'). This is the 5 anchor verbatim in structure — clear what AND when with concrete trigger phrases — not the 4 anchor where the 'when' could be more explicit.

5 / 5

Trigger Term Quality

The trigger list 'Use for cursor wisps, pointer sparks, embers, magic trails, comet tails, plankton, dust, or any mote trail' gives good natural-phrase coverage, and 'cursor trail' appears in the opening. It falls short of the 5 anchor's comprehensive synonym coverage — common user phrasings such as 'mouse trail' or 'cursor particles/fairy dust' are missing — so it fits the 4 anchor (good coverage, a few natural terms missing) rather than 3, since the terms present are the ones users would naturally say in this niche.

4 / 5

Distinctiveness Conflict Risk

The trigger terms (wisps, embers, comet tails, plankton, dust) carve a clear niche and would rarely fire for the wrong skill, but the skill body itself names closely related packaged skills ('add-shader-cursor-trail', 'shaders-cursor-ripples', 'ambient-section-particles') whose territory overlaps generic 'magic trail'/'particles' requests, and the description does not disambiguate against them. Fits the 4 anchor (mostly distinct, minor overlap risk with closely related skills) rather than 5 (minimal conflict risk).

4 / 5

Total

18

/

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

MengTo/Skills

Path

agent-skills/web-design/pointer-trail-emitter/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.