seedance-2-video-gen

Generate Werydance 2.0 videos through WeryAI for text-to-video, image-to-video, multi-image video, and first-frame/last-frame transitions. Use when you need a Werydance 2.0 video generator, want to animate a reference image (prefer a public https URL), create a storyboard-to-video clip, migrate `image + last_image` workflows, or generate controlled start/end frame video with your WeryAI API key.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "seedance-2-video-gen" with this command: npx skills add fwwdn/seedance-2-video-generator

Werydance 2.0 video generator (almighty-ready)

Generate Werydance 2.0 videos on WeryAI with one skill for text-to-video, image-to-video, first-frame/last-frame transition video, multi-image storyboard video, and almighty mixed-reference video generation. Animate and transform scenes from single images, storyboard frames, or mixed references while keeping subject and motion continuity.

Dependencies: scripts/video_gen.js at the skill package root (alongside SKILL.md) + WERYAI_API_KEY + Node.js 18+. No other Cursor skills are required.

  • text-only generation
  • single-image animation
  • multi-image storyboard generation
  • first-frame/last-frame compatibility aliases
  • almighty mixed references (images + videos + audios + prompt)

Runtime secret: only WERYAI_API_KEY.

Core upgrade

This skill now supports four input modalities for richer control:

  • Image reference: composition, character, and detail lock
  • Video reference: camera language, action rhythm, effect imitation
  • Audio reference: mood and timing guidance
  • Text prompt: intent and constraints

Smart routing policy:

  • If payload includes videos or audios, route to POST /v1/generation/almighty-reference-to-video.
  • Otherwise keep legacy routing (text-to-video, image-to-video, multi-image-to-video).

Prerequisites

  • WERYAI_API_KEY must be set.
  • Node.js 18+.
  • Prefer public https URLs for media.
  • Local files are supported and auto-uploaded by this skill via POST /v1/generation/upload-file.
export WERYAI_API_KEY="your_api_key_here"

Quick checks

node scripts/video_gen.js models --mode text_to_video
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"A glowing koi swims through ink clouds","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}' --dry-run

Modes and input shapes

ModeTriggerAPI routeKey fields
Textno media refs/v1/generation/text-to-videoprompt, duration, optional aspect_ratio, resolution, generate_audio
Single imageimage only/v1/generation/image-to-videoimage, prompt, plus common fields
Multi imageimages only/v1/generation/multi-image-to-videoimages, prompt, plus common fields
Almightyhas videos or audios/v1/generation/almighty-reference-to-videoimages, videos, audios, prompt, video_number, plus common fields

Compatibility aliases still supported:

  • first_frame + last_frame -> normalized to ordered images
  • image + last_image -> normalized to ordered images

Almighty constraints

Almighty validations in this skill:

  • prompt max 500 chars
  • images <= 9
  • videos <= 3
  • audios <= 3
  • mixed file total (images + videos + audios) <= 12
  • at least one of images or videos
  • duration must be 5-15 seconds
  • video_number must be 1-4

Notes:

  • Backend enforces media-duration constraints for reference clips.
  • Per current OpenAPI contract, almighty duration floor is 5s.

Local upload behavior

Supported local files before generation submit:

  • Images: jpg/jpeg/png/webp/gif, max 10MB
  • Videos: mp4/mov, max 50MB
  • Audios: mp3/wav, max 50MB

Upload endpoint used by this skill:

  • Shot scale, angle, and lens feel.
  • Camera movement or a clear lock-off choice.
  • Lighting direction, material response, and overall mood.
  • Subject motion paced to the selected duration.
  • One clear visual payoff in the final shot.
  • Output framing such as 9:16 vertical when using the default aspect ratio.
  • Audio (default-on): Add a labeled Audio: block (ambience, layered SFX, subtle foley—generic, non-copyrighted) even if the user never mentioned sound. JSON generate_audio defaults to true for models that support audio; use false and omit Audio: only when the user explicitly wants silent output.

Dry-run behavior:

  • --dry-run never uploads local files
  • output includes uploadPreview to show which local paths would be uploaded

Prompt workflow (mandatory)

Before paid submit, expand brief into production prompt:

  1. Decide mode.
  2. Map each media to explicit role.
  3. Build 2-4 timeline beats by duration.
  4. Write one action arc + one final payoff.
  5. Add minimal constraints for continuity.

Always show full prompt and all params before submit, then wait for explicit confirmation.

@asset layered referencing

Use explicit role mapping in prompt drafts:

  • Visual anchor: @图片1 / @图1
  • Camera/motion style: 参考@视频1运镜
  • Action rhythm: 参考@视频2动作节奏
  • Music/sound bed: @音频1用于配乐

Good:

  • @图1为首帧,参考@视频1的跑步动作,镜头从正面切到侧面,@音频1做节奏底。

Bad:

  • 用这些素材生成一个视频。

High-value templates

Video extend

  • 将@视频1延长 5s,新增段落为...,保持人物与场景连续。
  • Set duration to the added segment length.

Video fusion

  1. Decide which path fits the request: text, image, multi-image, or first-frame/last-frame.
  2. Collect the user's brief, duration, optional aspect_ratio, optional resolution, generate_audio (default true unless the user wants silent), and reference image URLs if the mode uses assets (prefer public https).
  3. Expand the prompt with the rules from ## Prompt expansion (mandatory). If the request needs tighter control, read references/seedance-prompt-optimization.md and explicitly decide mode, asset mapping, timeline beats, and negative constraints before writing the final prompt.
  4. If you are unsure about current multi-image support or field limits, run node scripts/video_gen.js models --mode multi_image_to_video before a paid request.
  5. Show a confirmation table with the full expanded prompt, model, duration, aspect ratio, resolution, audio choice, and any image URLs.
  6. After explicit confirmation, run node scripts/video_gen.js wait --json '...'.
  7. Return the JSON result. On success, surface the video URLs. On failure, report errorCode and errorMessage and suggest the likely parameter fix.

CLI reference

# Check live model metadata
node scripts/video_gen.js models
node scripts/video_gen.js models --mode text_to_video
node scripts/video_gen.js models --mode image_to_video
node scripts/video_gen.js models --mode multi_image_to_video

# Text-to-video (non-empty model required; default audio on)
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"A paper crane unfolds into a real bird, cinematic lighting, 9:16 vertical. Audio: soft paper rustle, gentle whoosh, quiet room tone.","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'

# Single image to video
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"Animate this portrait with subtle hair and cloth movement. Audio: faint fabric rustle, subtle room ambience.","image":"https://example.com/frame.png","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'

# Multi-image to video
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"Turn these storyboard frames into one coherent reveal shot. Audio: light transition whooshes, soft underscore.","images":["https://example.com/1.png","https://example.com/2.png","https://example.com/3.png"],"duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'

# First-frame / last-frame guided video
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"Start on the first frame and transition naturally to the last frame with the same subject and environment. Audio: smooth morph tone, airy ambience.","first_frame":"https://example.com/start.png","last_frame":"https://example.com/end.png","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'

# WaveSpeed-style compatibility alias
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"Transition smoothly from the start image to the end image. Audio: soft blend whoosh, quiet room.","image":"https://example.com/start.png","last_image":"https://example.com/end.png","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'

# Preview without spending credits
node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"A glowing koi swims through ink clouds. Audio: water shimmer, subtle chime.","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}' --dry-run

# Poll an existing task
node scripts/video_gen.js status --task-id <task-id>

Poll timeout classes

  • task_class=short: default 5 minutes (300000ms), intended for text-to-video.
  • task_class=long: default 20 minutes (1200000ms), intended for image/multi-image/almighty.
  • task_class=auto (default): infer from effective mode.
  • WERYAI_POLL_TIMEOUT_MS remains the highest-priority explicit override.

Compliance notice

  • Do not store WERYAI_API_KEY in repository files.
  • Platform compliance for realistic human face references is handled by backend policy; this skill does not implement client-side blocking.

Definition of done

Done when the user receives at least one playable video URL, or a clear failure with errorCode / errorMessage and a concrete next step. The submitted payload must stay within the selected model's supported field set. With default generate_audio: true, the prompt should include Audio: prose unless the user requested silent generation.

Boundaries (out of scope)

  • Do not use local file paths for references unless you have reviewed the assembled scripts/video_gen.js and explicitly consent to local read-and-upload to WeryAI; otherwise prefer public https URLs.
  • Do not invent undocumented API fields beyond the JSON surface in this skill.
  • Do not assume multi-image or first/last-frame support without checking live metadata when the behavior matters.
  • Do not store the secret value of WERYAI_API_KEY inside the repository.
  • Do not copy parameter names blindly from another provider without checking the normalized fields in this document.

Model & API constraints (frozen for this skill)

Frozen from the repository's current WeryAI capability snapshots. Re-run node scripts/video_gen.js models after platform upgrades.

Text-to-video (WERYDANCE_2_0)

model_keydurationsaspect_ratiosresolutionsAudionegative_promptPrompt max
WERYDANCE_2_05, 10, 159:16, 1:1, 16:9480p, 720pYesNo2000

Image-to-video (WERYDANCE_2_0)

model_keydurationsaspect_ratiosresolutionsAudionegative_promptupload_image_limit
WERYDANCE_2_05, 10, 159:16, 1:1, 16:9480p, 720pYesNo3

Multi-image and first-frame / last-frame

  • Use the images array for multi-image generation.
  • Use either images with ordered URLs, first_frame + last_frame, or image + last_image for start/end-frame control.
  • Before a paid submission where multi-image support matters, run node scripts/video_gen.js models --mode multi_image_to_video and confirm support_multiple_images, support_first_last_frame, upload_image_limit, and allowed output fields on the live account.
  • If the live registry says the model cannot take multiple images, the runtime falls back to the first image only.

Default parameters

FieldValue
ModelWERYDANCE_2_0
Aspect ratio9:16
Duration5
Resolution720p
Audiotrue by default; expanded prompt must include Audio: unless the user wants silent
Prompt styleconcise cinematic English prompt with one clear motion beat and one final payoff

Text brief -> Seedance video

Use this when the user has only an idea and wants Werydance 2.0 to generate the clip from scratch.

Need from the user:

  • Subject or scene
  • Motion beat
  • Preferred aspect ratio or platform
  • Optional duration and resolution

Flow:

  1. Expand the brief into a full English prompt.

  2. Keep model at WERYDANCE_2_0 unless the user explicitly wants another model.

  3. Show a confirmation table:

    📋 Ready to generate - please confirm

    FieldThis runNotes
    modelWERYDANCE_2_0Override only if the user explicitly requests another model
    aspect_ratio9:16Must stay inside the Seedance row
    duration5Allowed: 5 / 10 / 15
    resolution720pAllowed: 480p / 720p
    generate_audiotrueDefault on; Audio: in prompt unless user wants silent
    promptfull expanded promptNever show only a summary
  4. After confirmation, run:

    node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"...","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'
    

Single reference image -> Seedance motion

Use this when the user already has one reference image and wants subtle or medium motion while preserving the subject.

Need from the user:

  • One reference image URL (prefer public https)
  • Desired motion direction
  • Optional duration, aspect ratio, and audio

Flow:

  1. Expand the prompt around preservation plus motion.

  2. Add image to the JSON body.

  3. Confirm parameters and URL, then run:

    node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"...","image":"https://example.com/input.png","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'
    

Multiple reference images -> Seedance storyboard clip

Use this when the user wants several frames turned into one coherent shot or short sequence.

Need from the user:

  • Ordered reference image URLs (prefer public https)
  • Desired transition logic
  • Optional duration and aspect ratio

Flow:

  1. Treat the image order as meaningful story order.

  2. If support is uncertain, check models --mode multi_image_to_video first.

  3. Confirm the final prompt plus ordered images, then run:

    node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"...","images":["https://example.com/1.png","https://example.com/2.png","https://example.com/3.png"],"duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'
    

First frame + last frame -> controlled transition

Use this when the user wants tighter motion control from a known opening frame to a known ending frame.

Need from the user:

  • One reference start-frame URL (prefer public https)
  • One reference end-frame URL (prefer public https)
  • A prompt that explains the in-between action

Flow:

  1. Expand the prompt so it explicitly bridges the first frame to the last frame.

  2. Use either first_frame / last_frame, image / last_image, or pass the same two URLs through images in order.

  3. Confirm both URLs and the full prompt, then run:

    node scripts/video_gen.js wait --json '{"model":"WERYDANCE_2_0","prompt":"...","first_frame":"https://example.com/start.png","last_frame":"https://example.com/end.png","duration":5,"aspect_ratio":"9:16","resolution":"720p","generate_audio":true}'
    
  4. If the live registry rejects multi-image routing, reduce expectations: the runtime will fall back to single-image behavior with the first frame.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Seedance 2.0 Al Video Generator

Generates video via Loova Seedance 2.0 API (Seedance 2.0 video). Requires LOOVA_API_KEY from .env or environment (get API key at loova.ai). Use when the user...

Registry Source
2682Profile unavailable
General

Sora 2 Generate

Generate videos with the NanoPhoto.AI Sora 2 API in text-to-video or image-to-video mode. Use when: (1) User wants to create a Sora 2 video from a prompt, (2...

Registry Source
5620Profile unavailable
Coding

VoooAI - AI Multimedia NL2Workflow Platform

Short drama & webtoon production, text-to-image, image-to-image, storyboard design, text-to-video, image-to-video, video edit, style transfer, batch generati...

Registry Source
1850Profile unavailable
General

Seedance 2.0 Shot Design

Professional-grade virtual film director and prompt engineer for Seedance 2.0 (即梦). Transforms vague ideas into cinematic, production-ready video prompts wit...

Registry SourceRecently Updated
7123Profile unavailable