# Rawwerks Vibecad Vibecad

> glTF Transform

- Skill: `tomevault-io/rawwerks-vibecad-vibecad` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/rawwerks-vibecad-vibecad`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/rawwerks-vibecad-vibecad/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/rawwerks-vibecad-vibecad

---


# glTF Transform

Post-process GLB/glTF files: optimize, compress, inspect, and transform 3D models.

- CLI docs: https://gltf-transform.dev/cli
- GitHub: https://github.com/donmccurdy/glTF-Transform
- npm: `@gltf-transform/cli`

## Zero-Setup with bunx

No installation required. Run any command with:

```bash
bunx @gltf-transform/cli <command> [args]
```

First run downloads the tool, subsequent runs are instant.

## Quick Start

```bash
# Inspect model stats first
bunx @gltf-transform/cli inspect model.glb

# One-command optimization (good defaults)
bunx @gltf-transform/cli optimize input.glb output.glb --compress draco --texture-compress webp
```

## CAD Workflow Integration

Typical pipeline after generating models with build123d:

```
create geometry → export GLB → optimize → verify visually
```

1. **build123d** exports high-quality CAD geometry
2. **gltf-transform** compresses for web delivery
3. **render-glb** verifies the result

## Compression Methods

| Method | Best For | Trade-offs |
|--------|----------|------------|
| **Draco** | Web delivery, Three.js | Smallest geometry, requires decoder |
| **Meshopt** | Universal, animations | Good compression + animation support |
| **Quantize** | Compatibility | No decoder needed, moderate compression |

```bash
# Draco - best geometry compression
bunx @gltf-transform/cli draco input.glb output.glb

# Meshopt - geometry + animation compression
bunx @gltf-transform/cli meshopt input.glb output.glb

# Quantize only - no external decoder needed
bunx @gltf-transform/cli quantize input.glb output.glb
```

## Texture Compression

```bash
# WebP - good compression, wide browser support
bunx @gltf-transform/cli webp input.glb output.glb

# Resize large textures
bunx @gltf-transform/cli resize input.glb output.glb --width 1024 --height 1024
```

## Common Operations

### Inspect Model Stats
```bash
bunx @gltf-transform/cli inspect model.glb
```

Shows vertex count, file size breakdown, texture sizes - helps decide what to optimize.

### Simplify Geometry
```bash
# Weld duplicate vertices first
bunx @gltf-transform/cli weld input.glb temp.glb

# Then simplify
bunx @gltf-transform/cli simplify temp.glb output.glb --ratio 0.5
```

Useful for CAD models which often have more detail than needed for web viewing.

### Merge Multiple Models
```bash
bunx @gltf-transform/cli merge part1.glb part2.glb assembly.glb
```

### Aggressive Optimization
```bash
bunx @gltf-transform/cli optimize input.glb output.glb \
  --compress draco \
  --texture-compress webp \
  --simplify true \
  --simplify-ratio 0.5
```

## When to Use

| Scenario | Commands |
|----------|----------|
| Web delivery | `optimize --compress draco --texture-compress webp` |
| Check model stats | `inspect` |
| High-poly CAD model | `weld` then `simplify --ratio 0.5` |
| Combine parts | `merge` |
| Debug issues | `inspect` then targeted fixes |

---
> Source: [rawwerks/VibeCAD](https://github.com/rawwerks/VibeCAD) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-22 -->

