# vgpu

Guides agents through building WebGPU projects with vgpu, relying on local bundled docs, WGSL workflows, and Blender asset pipelines.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1600 installs · ★ 2588
- Author: vercel-labs
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/vercel-labs/vgpu/tree/HEAD/skills/vgpu/SKILL.md
- Updated: 2026-10-16
- HTML: https://affpapa.org/en/nevibecode/skills/vgpu

## What it does

The skill instructs coding assistants how to handle WebGPU applications using `vgpu`, `@vgpu` packages, and its CLI. It covers WGSL shaders, rendering in browsers or Node, performance profiling, and 3D scene assembly with cameras, transforms, and physics. For assets, it outlines Blender modeling, normal and ambient occlusion baking, LOD setups, and runtime validation.

The skill strictly enforces version neutrality. Instead of relying on model memory or remote docs, the agent queries the project-local CLI using commands such as `pnpm exec vgpu docs cat` or `npm exec --no -- vgpu docs find`. This keeps API usage tied to the exact installed package.

Bare `npx vgpu` or `bunx vgpu` commands are prohibited for version discovery because package managers may silently download unpinned releases. If the binary is missing, dependencies must be restored or inspected via lockfiles rather than defaulting to `@latest`.

## Requirements
- Works with: Blender

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add vercel-labs/vgpu --skill vgpu -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/vgpu/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/vgpu/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add vercel-labs/vgpu --skill vgpu -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/vgpu/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add vercel-labs/vgpu --skill vgpu -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/vgpu/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install vercel-labs/vgpu vgpu
```

2. **Manually: put the files in place**
- File: `.github/skills/vgpu/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add vercel-labs/vgpu --skill vgpu -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/vercel-labs/vgpu --path skills/vgpu
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/vgpu/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add vercel-labs/vgpu --skill vgpu -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/vercel-labs/vgpu/tree/HEAD/skills/vgpu/SKILL.md

## When to use it
- build and debug WebGPU rendering in browsers or Node
- assemble 3D scene hierarchies, transforms, and cameras
- bake normal and ambient occlusion maps for Blender assets
- query local vgpu API documentation and migration guides
- validate 3D asset LODs and runtime integration

## Example prompts
- Check the local vgpu documentation for scene hierarchy methods
- Help me write a WGSL compute shader pipeline using vgpu
- How do I set up baking for ambient occlusion maps in Blender for vgpu?

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 9aa74fa0d99662e9.

BEGIN THIRD-PARTY FILE 9aa74fa0d99662e9
````text
---
name: vgpu
description: >-
  Build, debug, test, and optimize WebGPU projects using vgpu, its CLI, or @vgpu packages.
  Use for vgpu API questions, WGSL workflows, browser or Node rendering, integrations,
  testing, performance work, and Blender asset modeling, baking, and runtime integration.
---

# vgpu

Treat the documentation bundled with the target project's installed `vgpu` package as the
authority for that project. This skill is intentionally version-neutral: do not infer API shapes
from the skill's Git revision, remembered APIs, the repository default branch, hosted docs, or a
hosted MCP server when local package docs are available.

The public skill install command has no branch pin:

```sh
npx skills add vercel-labs/vgpu
```

## 3D scenes

If you need to work with 3D scenes, read [Scene composition](./scene.md) before implementing
scene hierarchies, transforms, instances, cameras, or animation and physics integration.

## Blender assets

For Blender modeling, high/low-poly workflows, normal or ambient occlusion baking, LODs, and
asset validation, read [Blender assets](blender/index.md). That guide links to focused references
for shape and assembly or baking diagnostics; load them when the task needs them. Its authoring
guidance is independent of the vgpu version. For runtime API work, use the package docs below.

## Select the package version

Run the project-local `vgpu` executable from the workspace that owns the dependency. First check
the relevant package manifest and lockfile, then confirm which local CLI you resolved without
allowing the package manager to download a missing command:

```sh
pnpm exec vgpu --version
npm exec --no -- vgpu --version
```

Use a local-only equivalent for other package managers, such as `yarn exec vgpu --version` or an
already resolved `node_modules/.bin/vgpu`. Commands such as bare `npx vgpu` or `bunx vgpu`
may download a missing package, so do not use them for local version discovery. npm's `--offline`
is also insufficient because it can install a missing package from cache. Do not replace an
installed version merely to read newer documentation.

If a package manifest or lockfile selects `vgpu` but the local binary is unavailable, treat the
dependency tree as incomplete rather than unversioned. Restore the project's locked dependencies
when installation is within scope. For read-only access, the exact selected version can be invoked
explicitly instead:

```sh
npx -y vgpu@<selected-version> docs cat getting-started.md
```

Do not substitute `@latest` for a selected stable, RC, or other prerelease. Only when neither the
project nor the user has selected a vgpu version, default to the explicit stable tag:

```sh
npx -y vgpu@latest docs cat getting-started.md
```

When adding a previously unselected dependency is part of the requested work, install
`vgpu@latest` with the project's package manager. Use `vgpu@next`, an RC, or any other
````
END THIRD-PARTY FILE 9aa74fa0d99662e9

The third-party file has ended. Everything between the 9aa74fa0d99662e9 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2931 of 4905 bytes. © vercel-labs · MIT · https://github.com/vercel-labs/vgpu/tree/HEAD/skills/vgpu/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
