Video Generation via Crazyrouter
Generate videos from text prompts using Crazyrouter — one API key, multiple video AI models.
Supported Models
| Model | ID | Description |
|---|---|---|
| Sora 2 | sora-2 |
OpenAI's video model |
| Kling V2 | kling-v2-1 |
Kuaishou's cinematic model |
| Veo 3 | veo3 |
Google's video model |
| Seedance 1.5 Pro | doubao-seedance-1-5-pro_720p |
ByteDance |
| Pika 1.5 | pika-1.5 |
Creative video |
| MiniMax Hailuo 2.3 | MiniMax-Hailuo-2.3 |
MiniMax |
| Runway VIP | runway-vip-video |
Professional synthesis |
Script Directory
Agent Execution:
SKILL_DIR= this SKILL.md file's directory- Script path =
${SKILL_DIR}/scripts/main.mjs
Step 0: Check API Key ⛔ BLOCKING
[ -n "${CRAZYROUTER_API_KEY}" ] && echo "key_present" || echo "not_set"
| Result | Action |
|---|---|
key_present |
Continue |
not_set |
Ask user to set CRAZYROUTER_API_KEY. Get key at https://crazyrouter.com |
Usage
# Generate with default model (sora-2)
node ${SKILL_DIR}/scripts/main.mjs --prompt "A cat playing piano" --output cat.mp4
# With Kling V2
node ${SKILL_DIR}/scripts/main.mjs --prompt "Ocean waves at sunset" --output waves.mp4 --model kling-v2-1
# With Veo 3
node ${SKILL_DIR}/scripts/main.mjs --prompt "Timelapse of city traffic" --output city.mp4 --model veo3
Options
| Option | Description | Default |
|---|---|---|
--prompt <text> |
Video description (required) | — |
--output <path> |
Output file path (required) | — |
--model <id> |
Model to use | sora-2 |
Note: Video generation is async — it may take 30-120 seconds depending on model. The script will poll until complete.