opencode-workflow
A universal OpenCode workflow setup with specialized agents, skills, commands, and plugins for any software project.
Skill files that give Claude Code current, verified knowledge of three.js, so the code it writes runs on the release you actually install. The skills target three.js r186 (three@0.186), React Three Fiber 9.8 with drei 10.7, and gltf-transform 4.5.
Claude Code
$ npx -y skills add cloudai-x/threejs-skills --agent claude-code
Codex
$ npx skills add cloudai-x/threejs-skills -a codex
Cursor
$ npx skills add cloudai-x/threejs-skills -a cursor
Gemini CLI
$ npx skills add cloudai-x/threejs-skills -a gemini-cli
GitHub Copilot
$ npx skills add cloudai-x/threejs-skills -a github-copilot
OpenCode
$ npx skills add cloudai-x/threejs-skills -a opencode
Windsurf
$ npx skills add cloudai-x/threejs-skills -a windsurf
Skill files that give Claude Code current, verified knowledge of three.js, so the code it writes runs on the release you actually install.
The skills target three.js r186 (three@0.186), React Three Fiber 9.8 with drei 10.7, and gltf-transform 4.5. Rendering examples use WebGLRenderer, directly or through React Three Fiber; the WebGPU and TSL section in every skill covers WebGPURenderer.
Claude Code knows three.js from its training data, which mixes many releases. A lot changed between r160 and r186: RGBELoader became HDRLoader, Clock gave way to Timer, PostProcessing became RenderPipeline, WebGL 1 support is gone, and the three.js docs now tell LLMs to use WebGPURenderer with TSL for custom shaders and materials. These skills give Claude Code the current API, working examples, and a Common Mistakes list of the outdated patterns models still reach for.
With the skills CLI:
npx skills add cloudai-x/threejs-skills
Or manually. Claude Code loads skills from ~/.claude/skills/ (all your projects) or .claude/skills/ (one project):
git clone https://github.com/CloudAI-X/threejs-skills.git
# all your projects
mkdir -p ~/.claude/skills && cp -r threejs-skills/skills/* ~/.claude/skills/
# or one project (run from the project root)
mkdir -p .claude/skills && cp -r threejs-skills/skills/* .claude/skills/
| Skill | Covers |
|---|---|
| threejs-fundamentals | Scene, cameras, renderer setup, animation loop, object hierarchy, transforms |
| threejs-geometry | Built-in shapes, BufferGeometry, merging, instancing, BatchedMesh, points, lines |
| threejs-materials | Material types, PBR, blending, stencil, recompiles, node materials |
| threejs-lighting | Light types and physical units, shadows, HDR environments, light probes |
| threejs-textures | Loading, color spaces, UV channels, texture types, render targets, memory |
| threejs-animation | Keyframes, the animation mixer, skeletal and morph animation, blending |
| threejs-loaders | glTF with Draco, meshopt and KTX2, other formats, HDR, progress, disposal |
| threejs-shaders | ShaderMaterial and RawShaderMaterial, shader chunks, TSL and node materials |
| threejs-postprocessing | EffectComposer, built-in renderer effects, the WebGPU RenderPipeline |
| threejs-interaction | Raycasting, camera controls, transform gizmos, drag and box selection |
| threejs-performance | Measuring frame cost, draw calls, GPU memory, fill rate, compile stalls |
| threejs-react-three-fiber | React Three Fiber 9 and a verified set of drei helpers, on WebGL or WebGPU |
| threejs-asset-pipeline | gltf-transform: Draco, meshopt, KTX2, WebP, and the matching loader setup |
Claude Code loads a skill when your request matches its description. When you ask it to:
threejs-fundamentalsthreejs-lightingthreejs-loadersthreejs-shaders and threejs-postprocessingthreejs-performancethreejs-react-three-fiberthreejs-asset-pipelineEvery skill follows the same layout:
---
name: threejs-<topic>
description: "What the skill covers. Use when ..."
---
# Three.js <Topic>
Targets three.js r186. Examples use WebGLRenderer; the WebGPU and TSL section uses WebGPURenderer.
## Quick Start a complete, runnable example
## <topic sections> the API with working examples
## WebGPU and TSL the same topic under WebGPURenderer
## Common Mistakes outdated or wrong code → the r186 fix, with the reason
## See Also related skills
The skills were checked against the published three@0.186.1 package and the official Migration Guide, and against @react-three/fiber@9.8.2, @react-three/drei@10.7.9, @gltf-transform/cli@4.5.1 and gltfjsx@6.5.3 where they apply:
THREE.* class used in an example, exists in its packageIf you find something that is wrong on the current release, please open an issue with the skill name, the line and the three.js version you use.
MIT, see LICENSE.
A universal OpenCode workflow setup with specialized agents, skills, commands, and plugins for any software project.
Helps you start and work on a software project with ready-made guidance for understanding existing code, designing databases and APIs, planning architecture, and building Convex backends. It also offers reviews, refactoring and security checks for everyday development.
See 12 threejs-skills alternatives
Skills for Next.js developers covering bundle size reduction, Cache Components and Partial Prefetching adoption, and verifying runtime behavior in a running app after code edits.
Helps you add, find, fix, style and compose shadcn UI components in your React project, with component docs and usage examples. It can also move a project from Radix UI primitives to Base UI.
electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS.
Gives coding agents a design direction, reference images and a browser check, so the websites and app screens they build look deliberate instead of like a generic template page.
Skill files that give Claude Code current, verified knowledge of three.js, so the code it writes runs on the release you actually install. The skills target three.js r186 (three@0.186), React Three Fiber 9.8 with drei 10.7, and gltf-transform 4.5. Install it with the command on its page. It includes threejs-animation, threejs-asset-pipeline, threejs-fundamentals. Its skills do not fire on their own yet. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it