video-backendlisted
Install: claude install-skill grooverLab/stash
# video-backend - one verb, three backends
The pipeline says "generate hero video." This skill decides WHERE that runs -
free local preview, a rented GPU, or a paid API - from config, never hardcoded.
That indirection is the point: you preview for free, a human approves, and only
then does the same call spend money on a hero render.
Run everything through the dispatcher; do not call a backend directly:
```
scripts/generate.sh --prompt "<shot>" --out <path.mp4> [--backend preview|vast|api]
[--res 512x768] [--frames 65] [--image <still.png>]
```
`--backend` overrides config for this one call (preview a shot, then hero it).
With no flag it reads `BACKEND` from `~/.claude/stash-video.conf`.
## The three backends (two real code paths)
| Backend | Runs on | Cost | Grade | Use for |
|---|---|---|---|---|
| `mlx` | local MLX-native Wan2.1-1.3B (fits 16GB, Apple framework) | free | storyboard | the gate before spend (default) |
| `comfyui` | ComfyUI at `COMFYUI_HOST` - local heavy OR rented vast.ai GPU | free / GPU-hour | preview / hero | heavier local, or hero on rented box |
| `api` | fal.run (Seedance / Kling / LTX hosted) | per-clip | hero | hero output, zero infra |
`mlx` is the light Apple-native local preview (MLX, not MPS) - it fits a base M1
16GB via a 4-bit Wan2.1-1.3B. `comfyui` is ONE HTTP code path pointed at any host,
so the same call previews on a local ComfyUI or renders hero on a vast.ai box just
by changing `COMFYUI_HOST`. `api` is the fal