An Agent Skill for developing WebGPU-enabled Three.js applications using TSL (Three.js Shading Language).
> /plugin marketplace add dgreenheck/webgpu-claude-skill> /plugin install webgpu-threejs-tsl@webgpu-threejs-tsl
Repo: dgreenheck/webgpu-claude-skill
What's inside
An Agent Skill for developing WebGPU-enabled Three.js applications using TSL (Three.js Shading Language).
Last updated: April 1, 2026 โ aligned with Three.js r183+ API changes.
This skill provides Claude with comprehensive knowledge for:
This repo ships the same content in two formats so it works in both Claude Code (as an Agent Skill) and Cursor (as project rules). The Claude skill under skills/ is the source of truth; the Cursor rules under .cursor/rules/ are thin shims that @file-reference those same docs, so edits flow through automatically.
# Install from this repository
/skill install webgpu-threejs-tsl@<your-github-username>/webgpu-claude-skill
Or manually copy the skills/webgpu-threejs-tsl folder to:
~/.claude/skills/<project>/.claude/skills/Clone this repo and open it directly โ Cursor picks up .cursor/rules/ automatically.
To use the rules in your own project, copy both directories into your project root, preserving the paths:
your-project/
โโโ .cursor/rules/ # from this repo
โโโ skills/webgpu-threejs-tsl/ # from this repo (referenced by the rules)
The .mdc files use @file references pointing at skills/webgpu-threejs-tsl/..., so the skills/ directory must travel with them. If you'd rather not keep the skills/ folder, inline the referenced content into each .mdc file.
The rules are scoped by globs and auto-attach only on relevant files:
webgpu-threejs-tsl.mdc โ entry point, JS/TS filescompute-shaders.mdc โ files matching *compute* or *particle*post-processing.mdc โ files matching *post*, *effect*, *bloom*wgsl-integration.mdc โ .wgsl files and *wgsl* JS/TSdevice-loss-and-limits.mdc โ files matching *renderer* or *webgpu*skills/webgpu-threejs-tsl/
โโโ SKILL.md # Entry point with overview
โโโ REFERENCE.md # Quick reference cheatsheet
โโโ docs/
โ โโโ core-concepts.md # Types, operators, uniforms, control flow
โ โโโ materials.md # Node materials and properties
โ โโโ compute-shaders.md # GPU compute documentation
โ โโโ post-processing.md # Built-in and custom effects
โ โโโ wgsl-integration.md # Custom WGSL functions
โ โโโ device-loss.md # GPU device loss handling and recovery
โโโ examples/
โ โโโ basic-setup.js # Minimal WebGPU project
โ โโโ custom-material.js # Custom shader material
โ โโโ particle-system.js # GPU compute particles
โ โโโ post-processing.js # Effect pipeline
โ โโโ earth-shader.js # Complete Earth with atmosphere
โโโ templates/
โโโ webgpu-project.js # Starter project template
โโโ compute-shader.js # Compute shader template
import * as THREE from 'three/webgpu';
import { color, time, oscSine, normalWorld, cameraPosition, positionWorld, Fn, float } from 'three/tsl';
// WebGPU renderer
const renderer = new THREE.WebGPURenderer();
await renderer.init();
// TSL material with animated fresnel
const material = new THREE.MeshStandardNodeMaterial();
material.colorNode = color(0x0066ff);
material.emissiveNode = Fn(() => {
const viewDir = cameraPosition.sub(positionWorld).normalize();
const fresnel = float(1).sub(normalWorld.dot(viewDir).saturate()).pow(3);
return color(0x00ffff).mul(fresnel).mul(oscSine(time));
})();
PI2 deprecated (use TWO_PI), transformedNormalView/World renamed to normalView/Worldthree/webgpu import map entryMIT License
Code examples derived from Three.js (MIT License).
.claude-plugin/
marketplace.json
plugin.json
.cursor/
rules/
compute-shaders.mdc
device-loss-and-limits.mdc
post-processing.mdc
webgpu-threejs-tsl.mdc
wgsl-integration.mdc
README.md
skills/
webgpu-threejs-tsl/
docs/
compute-shaders.md
core-concepts.md
device-loss.md
limits-and-features.md
materials.md
post-processing.md
wgsl-integration.md
examples/
basic-setup.js
custom-material.js
earth-shader.js
particle-system.js
post-processing.js
REFERENCE.md
SKILL.md
templates/
compute-shader.js
webgpu-project.jsFAQ
webgpu-threejs-tsl is a Claude Code plugin with 1 hand-picked skill for development work, indexed on Flowy. Install it with the command on its page. It includes webgpu-threejs-tsl. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.