CtrlK
BlogDocsLog inGet started
Tessl Logo

threejs-lighting

Three.js lighting - light types, shadows, environment lighting. Use when adding lights, configuring shadows, setting up IBL, or optimizing lighting performance.

64

Quality

76%

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 ./plugins/AI-Agents-Safe-Coding-Skills/skills/threejs-lighting/SKILL.md

The canonical home for this skill is threejs-lighting in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

71%Scale 1-5

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

This is a thorough Three.js lighting reference with excellent actionability - every code example is complete and executable with proper imports. The main weakness is its length; at ~350 lines it reads more like a comprehensive reference document than a focused skill, and would benefit from splitting advanced topics into separate files. The workflow for shadow setup is clear but could include explicit validation/debugging steps.

Suggestions

Split advanced topics (Light Probes, Common Lighting Setups, Light Animation) into separate reference files and link from the main SKILL.md to improve progressive disclosure

Trim obvious inline comments (e.g., '// Modify at runtime', '// Properties') and consolidate the light type sections to reduce token count

Add a brief troubleshooting/validation workflow for shadows: 'If shadows don't appear: 1. Check renderer.shadowMap.enabled 2. Verify castShadow/receiveShadow on objects 3. Use CameraHelper to visualize frustum 4. Adjust bias if shadow acne appears'

DimensionReasoningScore

Conciseness

The skill is comprehensive but quite long (~350 lines). Some sections like Light Helpers and Common Lighting Setups are useful but add bulk. The inline comments are mostly helpful, though some are obvious (e.g., '// Modify at runtime'). The overview table is efficient, but the sheer volume of code examples for every light type makes this feel more like a reference manual than a concise skill.

3 / 5

Actionability

Every section provides fully executable, copy-paste ready code with correct import paths, constructor signatures, and property access patterns. The code covers common cases (shadow setup, IBL, light probes) with complete examples including necessary initialization steps like RectAreaLightUniformsLib.init().

5 / 5

Workflow Clarity

The Shadow Setup section provides a clear 3-step sequence (enable on renderer, enable on light, enable on objects). The skill includes debugging helpers (CameraHelper, LightHelper) and optimization guidance. However, there's no explicit validation/verification workflow - e.g., no 'check if shadows appear correctly, if not adjust bias' feedback loop, though the operations aren't destructive so this is a minor gap.

4 / 5

Progressive Disclosure

The skill has good section headers and a 'See Also' section referencing related skills, but the content is monolithic - all light types, shadow configuration, IBL, light probes, common setups, and animation are inlined in one file. Advanced topics like Light Probes and Common Lighting Setups could be split into separate reference files. No bundle files exist to offload content to.

3 / 5

Total

15

/

20

Passed

Description

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

This is a solid skill description that clearly communicates both what it does and when to use it, with good trigger terms specific to Three.js lighting. Its main weakness is that the 'what' portion lists categories (light types, shadows) rather than specific concrete actions, which limits specificity. Adding a few more synonym trigger terms would further strengthen discoverability.

Suggestions

Replace category labels with concrete actions, e.g., 'Add and configure point, spot, directional, and ambient lights; set up shadow maps; configure HDR environment lighting' to improve specificity.

Add common synonym trigger terms like 'shadow maps', 'HDRI', 'environment map', 'directional light', 'point light', 'ambient occlusion' to improve keyword coverage.

DimensionReasoningScore

Specificity

Names the domain (Three.js lighting) and lists a few areas (light types, shadows, environment lighting) but these are categories rather than concrete actions. It doesn't specify actions like 'configure shadow maps', 'add point/spot/directional lights', or 'set up HDR environment maps'.

3 / 5

Completeness

Clearly answers both 'what' (Three.js lighting - light types, shadows, environment lighting) and 'when' (Use when adding lights, configuring shadows, setting up IBL, or optimizing lighting performance) with explicit trigger phrases.

5 / 5

Trigger Term Quality

Includes good natural keywords like 'lights', 'shadows', 'IBL', 'lighting performance', and 'Three.js'. Missing some common variations like 'shadow maps', 'ambient light', 'directional light', 'HDRI', 'environment map', or specific light type names users might mention.

4 / 5

Distinctiveness Conflict Risk

Highly distinct — scoped specifically to Three.js lighting, which is a clear niche. The combination of 'Three.js', 'IBL', 'shadows', and 'lighting performance' makes it very unlikely to conflict with other skills.

5 / 5

Total

17

/

20

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
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.