From eachlabs-skills
Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content.
npx claudepluginhub joshuarweaver/cascade-content-creation-misc-1 --plugin eachlabs-skillsThis skill uses the workspace's default tool permissions.
Edit, transform, and enhance existing videos using 25+ AI models via the EachLabs Predictions API.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Edit, transform, and enhance existing videos using 25+ AI models via the EachLabs Predictions API.
Header: X-API-Key: <your-api-key>
Set the EACHLABS_API_KEY environment variable. Get your key at eachlabs.ai.
| Model | Slug | Best For |
|---|---|---|
| Veo 3.1 Extend | veo3-1-extend-video | Best quality extension |
| Veo 3.1 Fast Extend | veo3-1-fast-extend-video | Fast extension |
| PixVerse v5 Extend | pixverse-v5-extend | PixVerse extension |
| PixVerse v4.5 Extend | pixverse-v4-5-extend | Older PixVerse extension |
| Model | Slug | Best For |
|---|---|---|
| Sync Lipsync v2 Pro | sync-lipsync-v2-pro | Best lip sync quality |
| PixVerse Lip Sync | pixverse-lip-sync | PixVerse lip sync |
| LatentSync | latentsync | Open-source lip sync |
| Video Retalking | video-retalking | Audio-based lip sync |
| Model | Slug | Best For |
|---|---|---|
| Runway Gen4 Aleph | runway-gen4-aleph | Video transformation |
| Kling O1 Video Edit | kling-o1-video-to-video-edit | AI video editing |
| Kling O1 V2V Reference | kling-o1-video-to-video-reference | Reference-based edit |
| ByteDance Video Stylize | bytedance-video-stylize | Style transfer |
| Wan v2.2 Animate Move | wan-v2-2-14b-animate-move | Motion animation |
| Wan v2.2 Animate Replace | wan-v2-2-14b-animate-replace | Object replacement |
| Model | Slug | Best For |
|---|---|---|
| Topaz Upscale Video | topaz-upscale-video | Best quality upscale |
| Luma Ray 2 Video Reframe | luma-dream-machine-ray-2-video-reframe | Video reframing |
| Luma Ray 2 Flash Reframe | luma-dream-machine-ray-2-flash-video-reframe | Fast reframing |
| Model | Slug | Best For |
|---|---|---|
| FFmpeg Merge Audio Video | ffmpeg-api-merge-audio-video | Merge audio track |
| MMAudio V2 | mm-audio-v-2 | Add audio to video |
| MMAudio | mmaudio | Add audio to video |
| Auto Subtitle | auto-subtitle | Generate subtitles |
| Merge Videos | merge-videos | Concatenate videos |
| Model | Slug | Best For |
|---|---|---|
| Heygen Video Translate | heygen-video-translate | Translate video speech |
| Model | Slug | Best For |
|---|---|---|
| Motion Fast | motion-fast | Fast motion transfer |
| Infinitalk V2V | infinitalk-video-to-video | Talking head from video |
| Model | Slug | Best For |
|---|---|---|
| Faceswap Video | faceswap-video | Swap face in video |
GET https://api.eachlabs.ai/v1/model?slug=<slug> — validates the model exists and returns the request_schema with exact input parameters. Always do this before creating a prediction to ensure correct inputs.https://api.eachlabs.ai/v1/prediction with model slug, version "0.0.1", and input matching the schemaGET https://api.eachlabs.ai/v1/prediction/{id} until status is "success" or "failed"curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "veo3-1-extend-video",
"version": "0.0.1",
"input": {
"video_url": "https://example.com/video.mp4",
"prompt": "Continue the scene with the camera slowly pulling back"
}
}'
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "sync-lipsync-v2-pro",
"version": "0.0.1",
"input": {
"video_url": "https://example.com/talking-head.mp4",
"audio_url": "https://example.com/new-audio.mp3"
}
}'
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "auto-subtitle",
"version": "0.0.1",
"input": {
"video_url": "https://example.com/video.mp4"
}
}'
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "ffmpeg-api-merge-audio-video",
"version": "0.0.1",
"input": {
"video_url": "https://example.com/video.mp4",
"audio_url": "https://example.com/music.mp3",
"start_offset": 0
}
}'
curl -X POST https://api.eachlabs.ai/v1/prediction \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"model": "topaz-upscale-video",
"version": "0.0.1",
"input": {
"video_url": "https://example.com/low-res-video.mp4"
}
}'
See references/MODELS.md for complete parameter details for each model.