agentsclimarketplace

Threejs choose skills

Skill linegel/threejs-complete-set-of-skill/skills/threejs-choose-skills

25 expert agent skills for ambitious Three.js WebGPU/TSL scenes — procedural oceans, clouds, planets, water optics, image pipelines, and screenshot-backed visual validation. For Claude Code, Codex, Cursor, and any skill-aware agent.

Install
npx -y skills add linegel/threejs-complete-set-of-skill --skill threejs-choose-skills

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Route multi-system Three.js WebGPU/TSL work to the smallest causal skill set. Use when a request spans multiple systems, needs shared pass/output ownership, or needs scene-wide performance coordination.

SKILL.md

11.9 KB, as published. Nobody here has run it

Route Three.js WebGPU/TSL Work

Route for Three.js r185 with WebGPURenderer from three/webgpu, TSL from three/tsl, and node materials. The installed package and initialized renderer are the source of truth for APIs, backend, attachment limits, and timing support.

Route in four steps

1. Fix the contract

Record the installed revision and initialized backend. Then state:

  • the primary observable and whether its contract is metric, identity, physically plausible, or perceptual;
  • the authoritative input, units, coordinate frame, scale, topology, time behavior, target views, and interaction;
  • each applicable deployment target and checkable bound for error, latency, frame time, and peak live memory;
  • the reproducible seed, input trace, or camera path required by any comparison or replay.

Treat missing authoritative inputs as explicit gaps. Canonical claims require an initialized WebGPU backend. Route compatibility teaching only when the user explicitly asks how to apply a fallback.

When the route claims frame time, latency, peak live memory, adaptive quality, or sustained performance, read composed-route-performance.md before freezing those bounds.

Complete when: the requested result, source of truth, and every applicable target and acceptance bound are explicit and mutually consistent.

2. Select causal owners

Find the earliest missing cause: data/topology, geometry, field, material, illumination, transport volume, motion, camera/projection, or image transform. When more than one viable mechanism remains, compare the least-complex candidates and name the evidence that rejects each losing candidate. Assign one primary owner to the earliest missing cause, then add only skills that own a requested cause, required input, or verification method.

When LOD, tessellation, impostors, field bands, or simulation extent depend on screen error, read projected-error-contract.md before choosing the representation.

Complete when: every requested observable has one owner or an explicit gap, and every selected skill owns at least one necessary item.

3. Close handoffs and presentation ownership

When selected systems exchange physical state, events, or GPU resources, read cross-system-handoffs.md and close every applicable row before implementation.

Name every producer, consumer, version, execution order, lifetime, and invalidation rule. Allocate depth, normal, velocity, identifiers, histories, or MRT attachments only for named consumers. Reuse one scene render when the shared RenderPipeline already exposes the required signals.

Assign one final-output owner per presentation target. Choose exactly one output conversion:

  • scene-linear outputNode with outputColorTransform = true; or
  • explicit renderOutput(...) with outputColorTransform = false.

Set renderPipeline.needsUpdate = true after changing outputNode or outputColorTransform. Key temporal state by semantic signal, view, encoding, resolution, jitter, cadence, and reset policy.

Complete when: every cross-system edge closes every applicable handoff row, every allocated resource has a consumer, and each target has one tone-map/output path.

4. Prove the composed route

Verify the no-post or minimum-mechanism baseline first, then inspect the field, geometry, material, depth, velocity, history, and output diagnostics that prove the selected causes. Use mutation or disable controls where a plausible image could hide a disconnected mechanism. Measure the full composition on the target matrix and classify unavailable evidence as unmeasurable.

Read router-recipes.md only when a listed multi-system workload matches the request; adapt its ownership pattern rather than treating it as a preset. Add $threejs-visual-validation whenever a route makes quantitative, temporal, adaptive, compute, or sustained-performance claims.

Complete when: every acceptance bound has direct evidence from the composed route, or the unsupported claim is narrowed and reported.

Installed-skill boundary

Intersect the destination map with the skills actually installed. Report missing owners; keep their requested causes outside the implementation until an owner is supplied.

Destination map

TriggerLoadBoundary
Contact-scale occlusion, GTAO, bent normals, or bilateral AO reconstruction$threejs-ambient-contact-shadingRequires owned depth and scale; normals are conditional. Preserve quantitative color semantics.
Curved rays, black holes, wormholes, or accretion transport$threejs-black-holes-and-space-effectsBloom and grading consume its HDR result after the transport mechanism passes.
Full-frame or selective HDR glow$threejs-bloomRequires proven HDR emission and exposure; bloom does not create emissive meaning.
Projection, orbit/free navigation, framing, floating origin, or control handoff$threejs-camera-controls-and-rigsOwns camera policy and reset signals, not subject motion.
Explicit teaching for an unavailable WebGPU backend$threejs-compatibility-fallbacksLoad only for a user-requested fallback lesson after identifying the canonical WebGPU owner.
Reproducible runtime/API failure, source/docs disagreement, regression, or upgrade triage$threejs-debuggingAdd domain skills only when isolating the failing mechanism requires them.
Persistent screen-space frost, clearing, blur, or history masks$threejs-dynamic-surface-effectsOwns screen-space history surfaces; world/object weather belongs to its domain owner.
Exposure, tone mapping, LUT grading, and display conversion$threejs-exposure-color-gradingQuantitative displays may require a fixed transfer function; one output conversion remains exclusive.
Shared pass signals, MRT, histories, ordering, and final presentation$threejs-image-pipelineLoad early for shared ownership and late for assembly; it owns no missing scene cause.
Reference-image feasibility, decomposition, or code-native object reconstruction$threejs-object-sculptorPhotogrammetry, exact mesh extraction, and imported-asset production remain outside the skill.
Particles, trails, event layers, plasma, or shockwaves$threejs-particles-trails-and-effectsObject transforms belong to motion; stable application/data identities remain authoritative.
Procedural building, facade, roof, ornament, or city grammar$threejs-procedural-buildings-and-citiesImported BIM/AEC representation and source-asset preparation remain external.
Procedural fauna, generated bodies, rigs, locomotion, or crowds$threejs-procedural-creaturesImported skinned-asset pipelines remain external.
Reusable scalar/vector fields, causal masks, domain warps, or derived normals$threejs-procedural-fieldsMeasured scientific data stays authoritative in its data layer.
Generated vertices, indices, profiles, rails, topology, UVs, or material groups$threejs-procedural-geometryCAD/glTF ingestion, mesh repair, compression, and generic asset optimization remain external.
BRDF identity, filtered patterns/atlases, frame fields, semantic surface masks, or specular AA$threejs-procedural-materialsGeometry owns silhouette; fields own shared causal masks.
Authored transform phases, rotating frames, springs, kinematics, or analytic motion$threejs-procedural-motion-systemsLive-data interpolation stays in the application data layer.
Spherical bodies, planetary horizon/precision, craters, biomes, or spherical LOD$threejs-procedural-planetsLocal planar terrain stays with fields and geometry.
Plant growth, distribution, allometry, roots, canopies, or rooted wind$threejs-procedural-vegetationTerrain/support fields and environmental forcing keep their own authority.
Rain/snow transport, receiver accumulation, wetness, puddles, or splashes$threejs-rain-snow-and-wet-surfacesConsumes supplied environmental forcing; meteorological-state synthesis remains a gap.
Dynamic, cascaded, tiled-coverage, or cached real-time shadows$threejs-scalable-real-time-shadowsStart with ordinary light shadows; add complexity only for a measured coverage/invalidation need.
Sky scattering, atmospheric shells, aerial perspective, or haze$threejs-sky-atmosphere-and-hazeImage skills own final exposure/output, not radiometric transport.
Horizon-scale homogeneous directional sea across wavelength bands$threejs-spectral-oceanPeriodic deep/open water ends at the coastal boundary owned by water optics.
Deterministic captures, diagnostics, sweeps, temporal checks, budgets, or regression evidence$threejs-visual-validationA report is evidence only when its required artifacts and controls were actually inspected.
Volumetric cloud density, lighting, transport, advection, or cloud shadows$threejs-volumetric-cloudsConsumes environmental forcing; generic volume rendering and meteorology remain gaps.
Analytic, bounded, or coastal water, shore transformation, ripples, caustics, refraction, or absorption$threejs-water-opticsOpen-water spectra belong to spectral ocean; select the least solver that preserves the observable.

Explicit gaps

Keep these owners outside the public skill set unless the project supplies one:

RequestOwner boundary
glTF/CAD/BIM/scientific ingestion, mesh repair, UV baking, compression, and source-asset LODProject asset/data pipeline and official Three.js tooling.
General lighting design, studio IBL/PMREM, reflection probes, and cube captureProject lighting owner and official Three.js guidance.
Generic volume rendering, point-cloud/octree streaming, graph layout, and tensor visualizationDedicated domain implementation.
Live transport, databases, telemetry schemas, and interpolation servicesApplication data layer.
Picking, selection, annotation, DOM UI, and accessibilityApplication interaction/UI layer.
WebXROfficial Three.js/WebXR guidance or a dedicated skill.
Physics-engine selection and engine-internal simulationThe supplied engine or domain solver. Route only declared Three.js consumers; unsupported coupling channels stay explicit gaps.
Meteorological-state synthesisA supplied environment coordinator. Weather and cloud skills consume its state.
Framework, deployment, editor, and generic application architectureProject conventions.

Route result

Return a compact result shaped like this; include only fields the request uses:

route:
  backend: { required: WebGPU, installedRevision: "", actualBackend: "" }
  contract: { observable: "", truth: "", units: "", frame: "", bounds: [] }
  primaryOwner: ""
  selected: []
  deferred: []
  gaps: []
  handoffs: []
  resources: []
  passes: []
  output: { owner: "", toneMap: "", conversion: "" }
  verification: []
  status: provisional | proven | blocked | unmeasurable

selected is minimal; deferred names a condition that would make each skill necessary. Every handoff closes the applicable quantity/units, frame, time, authority/version, validity/error, ordering, lifetime, and reset rows in cross-system-handoffs.md. Every resource names its format, physical extent, lifetime, and consumers. verification tests the selected cause rather than image plausibility alone.

Routing is complete when every requested observable or constraint has exactly one owning skill or an explicit gap; every selected skill owns at least one item; every cross-skill dependency closes every applicable handoff row; and every verification point tests the selected cause.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.