CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

p5js

p5.js sketches: gen art, shaders, interactive, 3D.

55

Quality

69%

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 ./skills/creative/p5js/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

81%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 an exceptionally actionable production pipeline with a well-validated 6-stage workflow and a well-organized one-level-deep reference bundle. Its weaknesses are overlapping creative-manifesto prose that could be consolidated, and a prominently referenced template file (templates/viewer.html) that is missing from the bundle.

Suggestions

Add the missing templates/viewer.html to the bundle, or remove/replace the three references to it (Step 2 Viewer UI, Step 3, References table) so the 'Read the template first' instruction does not dead-end.

Merge 'Per-Project Variation Rules' and 'Project-Specific Invention' — both prescribe the same never-default/invent-one-thing rules — and trim the overlapping Creative Standard directives ('Dense, layered, considered' vs 'Cohesive aesthetic over feature count') to reclaim ~40-60 lines.

DimensionReasoningScore

Conciseness

The technical sections (FES overhead, seeded randomness, HSB mode, WebGL gotchas, noLoop headless capture, pixel-buffer vectorization) are tight and genuinely non-obvious, but roughly 60 lines of creative-manifesto prose overlap — 'Dense, layered, considered', 'Cohesive aesthetic over feature count', and 'Per-Project Variation Rules' repeat the directives of 'Project-Specific Invention'. This is 'Mostly efficient but includes some unnecessary explanation or could be tightened' rather than 4, since the repetition is more than minor.

3 / 5

Actionability

The body provides a complete copy-paste HTML scaffold, a working fbm() implementation, an export table with exact commands ('node scripts/export-frames.js sketch.html --width 3840 --height 2160 --frames 1', 'bash scripts/render.sh ...'), a keyPressed() convention, and a concrete fxhash pattern. Fully executable guidance covering the common cases; the few stubs ('// ... project-specific params') are justified as template placeholders.

5 / 5

Workflow Clarity

A clear 6-stage pipeline (CONCEPT → DESIGN → CODE → PREVIEW → EXPORT → VERIFY) is expanded into Steps 1–6 with an explicit validation stage (Step 6: resolution, 60fps performance, color, edge cases) and a feedback loop ('If it looks generic, go back to Step 1'). This is a creative-rendering skill, not a destructive/batch operation, so the validation cap does not apply.

5 / 5

Progressive Disclosure

Ten real, one-level-deep reference files are each mapped in a table with per-section pointers ('references/visual-effects.md § Noise'), and the referenced scripts (serve.sh, export-frames.js, render.sh) all exist. However, 'templates/viewer.html' — which Step 3 instructs the agent to 'Read the template first' and the References table lists — does not exist in the bundle, a real navigation gap that keeps this at 'minor organization gaps' rather than 5.

4 / 5

Total

17

/

20

Passed

Description

48%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 compact and names a distinctive niche, but it is a terse topic label rather than a capability statement: no actions, no trigger guidance, and abbreviated keywords. It would benefit most from an explicit 'what + when' structure in third person.

Suggestions

Rewrite in third-person action form with concrete capabilities, e.g. 'Creates p5.js sketches for generative art, interactive visualizations, 3D/WebGL scenes, and shader effects; exports to PNG, GIF, MP4, and SVG.'

Add an explicit 'Use when...' trigger clause naming natural user phrases: 'Use when the user mentions p5.js, creative coding, generative art, canvas animations, or browser-based visual art.'

Expand 'gen art' to 'generative art' and add synonyms users actually say (creative coding, data visualization, canvas animation) to improve trigger matching.

DimensionReasoningScore

Specificity

The description names the domain ('p5.js sketches') and four topic areas ('gen art, shaders, interactive, 3D') but contains no action verbs whatsoever — it is a topic list, not concrete actions like 'Create' or 'Export'. This matches the anchor 'Names the domain but actions are minimal or generic'; it is above 1 because the domain is clearly identified, and below 3 because no concrete actions are stated.

2 / 5

Completeness

A 'what' is present (p5.js sketches across several output types) but there is no 'when' — no 'Use when...' clause or equivalent trigger guidance anywhere, which per the rubric guidelines caps completeness at 3. It is not 2 because the 'what' is not vague; it is not 4 because the 'when' is entirely absent rather than merely under-specified.

3 / 5

Trigger Term Quality

'p5.js', 'sketches', 'shaders', 'interactive', and '3D' are natural user terms, but 'gen art' is an abbreviation of what users actually say ('generative art'), and common variations like 'creative coding', 'canvas animation', and 'data visualization' are missing. This lands at 'Some relevant keywords but missing common variations or synonyms' rather than 4's 'Good keyword coverage'.

3 / 5

Distinctiveness Conflict Risk

'p5.js' is a clearly distinct niche unlikely to trigger the wrong skill, but the broad trailing terms 'interactive', '3D', and 'shaders' carry minor overlap risk with other visualization and creative-coding skills. This is 'Mostly distinct; minor overlap risk' rather than 5's minimal-conflict profile.

4 / 5

Total

12

/

20

Passed

Validation

75%

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

Validation — 12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

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

Warning

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

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

Warning

Total

12

/

16

Passed

Repository

NousResearch/hermes-agent

Path

skills/creative/p5js/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.