skills/videoagent-video-studio/SKILL.md
Generate short AI videos from text or images — text-to-video, image-to-video, and reference-based generation — with zero API key setup. Use when the user wants to create a video clip, animate an image, or generate video from a description.
npx skillsauth add pexoai/pexo-skills videoagent-video-studioInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use when: User asks to generate a video, create a video from text, animate an image, make a short clip, or produce AI video.
Generate short AI videos with 7 backends. This skill picks the right mode (text-to-video or image-to-video), enhances the prompt for best results, and returns the video URL.
| User Intent | Mode | Typical Duration |
|-------------|------|------------------|
| "Make a video of..." (no image) | text-to-video | 4–10 s |
| "Animate this image" / "Make this move" | image-to-video | 4–6 s |
| "Turn this into a video with..." | image-to-video | 4–6 s |
| Cinematic, story, ad | Prefer text-to-video with detailed prompt | 5–10 s |
| Mode | Description | Models | |------|-------------|--------| | text-to-video | Text prompt only → video | minimax, kling, veo, hunyuan, grok, seedance | | image-to-video | Single image + prompt → animated clip | minimax, kling, veo, pixverse, grok, seedance | | reference-based | Reference images/video → consistent output | minimax, kling, veo, hunyuan, grok, seedance |
--model <id>)| Model ID | T2V | I2V | Reference | Notes |
|----------|-----|-----|-----------|-------|
| minimax | ✅ | ✅ | ✅ | Subject reference image, character consistency |
| kling | ✅ | ✅ | ✅ | Multi-element / character / keyframe (O3) |
| veo | ✅ | ✅ | ✅ | Google Veo 3.1, multiple reference images |
| hunyuan | ✅ | — | ✅ | Video-to-video style transfer |
| pixverse | — | ✅ | — | Stylized image-to-video |
| grok | ✅ | ✅ | ✅ | Video editing via reference video |
| seedance | ✅ | ✅ | ✅ | Seedance 1.5 Pro, synchronized audio, 4–12 s |
Full model details and endpoint reference: references/models.md.
Text-to-video:
node {baseDir}/tools/generate.js \
--mode text-to-video \
--prompt "<enhanced prompt>" \
--duration <seconds> \
--aspect-ratio <ratio>
Image-to-video:
node {baseDir}/tools/generate.js \
--mode image-to-video \
--prompt "<motion description>" \
--image-url "<public image URL>" \
--duration <seconds> \
--aspect-ratio <ratio>
Parameters:
| Parameter | Default | Description |
|-----------|---------|-------------|
| --mode | text-to-video | text-to-video or image-to-video |
| --prompt | (required) | Scene or motion description |
| --image-url | — | Required for image-to-video; public image URL |
| --duration | 5 | Length in seconds (typically 4–10) |
| --aspect-ratio | 16:9 | 16:9, 9:16, 1:1, 4:3, 3:4 |
| --model | auto | Model ID (e.g. kling, veo, grok, seedance); auto = proxy picks |
Other commands:
| Command | Description |
|---------|-------------|
| node tools/generate.js --list-models | List available models from the proxy |
| node tools/generate.js --status --job-id <id> | Check async job status |
The script returns JSON:
{
"success": true,
"mode": "text-to-video",
"videoUrl": "https://...",
"duration": 5,
"aspectRatio": "16:9"
}
Send videoUrl to the user.
User: "Generate a short video of a cat walking in the rain, cinematic."
node {baseDir}/tools/generate.js \
--mode text-to-video \
--prompt "A cat walking through rain, wet streets, neon reflections, cinematic lighting, slow motion, 4K" \
--duration 5 \
--aspect-ratio 16:9
User: "Animate this photo" (user uploads a landscape)
node {baseDir}/tools/generate.js \
--mode image-to-video \
--prompt "Gentle clouds moving across the sky, subtle grass movement, cinematic atmosphere" \
--image-url "https://..." \
--duration 5 \
--aspect-ratio 16:9
User: "Make a 10-second vertical video of a coffee pour, slow motion."
node {baseDir}/tools/generate.js \
--mode text-to-video \
--prompt "Close-up of coffee pouring into a white cup, slow motion, steam rising, soft lighting, product shot" \
--duration 10 \
--aspect-ratio 9:16
User: "Use Google Veo for a cinematic shot."
node {baseDir}/tools/generate.js \
--mode text-to-video \
--model veo \
--prompt "A dragon flying through cloudy skies, cinematic lighting, 8s" \
--duration 8 \
--aspect-ratio 16:9
User: "Animate this portrait."
node {baseDir}/tools/generate.js \
--mode image-to-video \
--model grok \
--prompt "Gentle smile, subtle head turn" \
--image-url "https://..." \
--duration 5
Zero API keys by default. Requests go through a hosted proxy. Set these for a custom proxy or token:
| Variable | Required | Description |
|----------|----------|-------------|
| VIDEO_STUDIO_PROXY_URL | No | Proxy base URL |
| VIDEO_STUDIO_TOKEN | No | Auth token if the proxy requires it |
testing
Make a video for your startup with Pexo. Describe your company, product, or vision (or paste your site) and Pexo writes the script, generates the shots, picks the models, and returns a finished, publish-ready startup video with music — for your homepage, fundraising deck, or social channels. Use for startup brand and intro videos: "startup video", "video for my startup", "company intro video", "about us video". NOT for paid ad campaigns (use the video-ad skill).
documentation
Make a SaaS demo or explainer video with Pexo. Describe your software (or paste your app URL or a screenshot) and Pexo writes the script, generates the visuals, picks the models, adds narration and captions, and returns a finished, publish-ready video — for your landing page, onboarding, or sales. Use for SaaS and software videos: "saas video", "saas demo video", "software demo", "app explainer video". NOT for live screen recording — Pexo generates the visuals.
development
Make a launch video for your startup or product with Pexo. Describe your product (or paste your landing-page URL or a screenshot) and Pexo writes the script, generates every shot, picks the models, and returns a finished, publish-ready launch video with music — built for Product Hunt, your landing page, or launch-day socials. Use for product and startup launches: "launch video", "product launch video", "make a launch video", "launch day video". NOT for ongoing ad campaigns (use the video-ad skill).
documentation
Make a founder video with Pexo — built for solo founders and small teams. Describe your story, product, or pitch (or paste your site) and Pexo writes the script, generates the shots, picks the models, and returns a finished, publish-ready founder video with music — for fundraising, Product Hunt, or your personal brand. Use for founder content: "founder video", "solo founder video", "founder pitch video", "founder story". NOT for paid ad campaigns (use the video-ad skill).