CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

threejs-textures

Three.js textures: image loading, color spaces, UV channels and transforms, texture types from canvas to HDR and KTX2, render targets, texture memory. Use when working with images on materials, UV coordinates, cubemaps, render targets or texture optimization; on WebGL or with WebGPU and TSL.

Quality

86%

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 highly actionable, code-dense reference with excellent gotcha coverage and version-sensitive details properly isolated in a Common Mistakes/deprecated-patterns section. The main structural weakness is that everything is inlined in one long body with no reference files, plus some repeated setup boilerplate.

Suggestions

Split the long-tail sections (Dynamic Reflections, Render Targets, the WebGPU/TSL section, Common Mistakes) into reference files under references/ and keep SKILL.md as the overview with clearly signaled one-level-deep pointers.

Trim the duplicated renderer/scene/camera setup boilerplate in Quick Start and the WebGPU section down to just the texture-relevant lines.

State the r186 version pin in one place at the top and reference it, rather than repeating release numbers (r180, r181, three@0.186.0) inline throughout.

DimensionReasoningScore

Conciseness

Dense, code-first sections with terse, informative comments ("normalMap stays at NoColorSpace: it is data, not color") and no padding explaining known concepts. However the full renderer/scene/camera setup boilerplate is repeated in both Quick Start and the WebGPU section — code Claude already knows that could be trimmed.

4 / 5

Actionability

Every section contains executable, copy-paste-ready code covering the common cases, with concrete gotchas stated inline ("detectSupport(renderer); // required before loading", "await renderer.init(); // before any other use of the renderer"). This matches the fully-executable top anchor.

5 / 5

Workflow Clarity

A topic-reference skill rather than a multi-step process, but ordering constraints are explicit where they matter (map set before first render, needsUpdate afterwards, hide the reflective mesh before cubeCamera.update). There is no end-to-end sequenced workflow with validation checkpoints, so it sits between the reference-style and checkpoint anchors.

4 / 5

Progressive Disclosure

No bundle files exist, so all ~500 lines live in SKILL.md. Section headers are clear and the See Also list points to sibling skills, but substantial reference material (render targets, dynamic reflections, the WebGPU/TSL deep-dive, the 20-entry Common Mistakes list) is inlined where a reference-file split would be appropriate.

3 / 5

Total

16

/

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 strong description: concrete, third-person capability list paired with an explicit "Use when" clause covering renderer contexts. Its only weaknesses are a few missing synonyms/file extensions in the trigger terms and slight overlap with sibling material/loader skills.

Suggestions

Add file extensions and common synonyms to the trigger clause (e.g., .ktx2, .hdr, .exr files, "texture maps", "sprite atlas") to broaden natural-term coverage.

Sharpen distinction from sibling skills by replacing the broad "images on materials" trigger with texture-specific phrasing such as "texture maps on materials" to reduce overlap with a threejs-materials skill.

DimensionReasoningScore

Specificity

Lists six-plus concrete capabilities ("image loading, color spaces, UV channels and transforms, texture types from canvas to HDR and KTX2, render targets, texture memory"), comprehensively covering the skill's scope in third person. Coverage is comprehensive rather than having minor gaps, so it matches the top anchor.

5 / 5

Completeness

Explicitly answers both what (the capability list) and when ("Use when working with images on materials, UV coordinates, cubemaps, render targets or texture optimization; on WebGL or with WebGPU and TSL") with concrete trigger phrases, matching the anchor-5 example.

5 / 5

Trigger Term Quality

Good natural-term coverage: "cubemaps", "render targets", "UV coordinates", "texture optimization", "WebGL", "WebGPU and TSL" are phrases users would say. A few natural variants are missing — file extensions (.ktx2, .hdr, .exr) and synonyms like "texture maps" or "atlas" — so it falls just short of comprehensive.

4 / 5

Distinctiveness Conflict Risk

A clear texture-specific niche with distinct triggers (cubemaps, render targets, UV coordinates). However "images on materials" and "image loading" overlap with closely related sibling skills (threejs-materials, threejs-loaders), giving minor overlap risk.

4 / 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

skill_md_line_count

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

Warning

Total

15

/

16

Passed

Repository

CloudAI-X/threejs-skills

Path

skills/threejs-textures/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.