Seedance 2.0 Al Video Generator (Text to Video, Image to Video, Reference to Video)

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...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
3 · 55 · 0 current installs · 0 all-time installs
byloova@HJianfeng
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description, required LOOVA_API_KEY, documented endpoints (https://api.loova.ai/...), and the included script all align: the package implements submitting video generation jobs and polling for results. No unrelated credentials, binaries, or capabilities are requested.
Instruction Scope
SKILL.md and the script describe submitting tasks, optionally uploading local files, and polling. The only file/IO behavior is opening user-supplied media files for multipart upload and saving uploaded chat attachments into the workspace per the instructions — this is coherent with an upload-capable video generator.
Install Mechanism
No install spec; dependencies are small (requests, python-dotenv) listed in requirements.txt. No downloads from untrusted URLs or archive extraction.
Credentials
Only LOOVA_API_KEY (primary credential) is required. The script also tolerates a similarly named env var LOOAI_API_KEY as a fallback, which is a minor convenience/typo-tolerant behavior but still related to the service.
Persistence & Privilege
always:false and no requests to modify other skills or system-wide configs. The skill writes/reads user media files only within the workspace as expected for uploading media.
Assessment
This skill appears to do what it says: it uses your LOOVA_API_KEY to call Loova's Seedance 2.0 API, upload media (if provided), and poll for results. Before installing, consider: (1) protect the LOOVA_API_KEY (do not share it); (2) uploaded files are saved in the agent/workspace — avoid sending sensitive/private files unless you're comfortable with them being stored there; (3) video generation can take hours and the script polls the external API once per minute; (4) verify you obtained the API key from loova.ai and are okay with sending media and prompts to that external service. If you want tighter limits, use a restricted API key or run the script locally instead of allowing autonomous agent invocation.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.11
Download zip
ai-videovk976ws446fjwkk19dh6zd07d6s839thycreative-toolsvk976ws446fjwkk19dh6zd07d6s839thyimage-to-videovk976ws446fjwkk19dh6zd07d6s839thylatestvk976ws446fjwkk19dh6zd07d6s839thyseedancevk976ws446fjwkk19dh6zd07d6s839thyseedance-2vk976ws446fjwkk19dh6zd07d6s839thytext-to-videovk976ws446fjwkk19dh6zd07d6s839thyvideo-generationvk976ws446fjwkk19dh6zd07d6s839thy

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

EnvLOOVA_API_KEY
Primary envLOOVA_API_KEY

SKILL.md

Seedance 2.0 Video Generator

Create AI videos from text or images using the latest multi-modal reference system with the Loova Seedance 2.0 API (Seedance 2.0 Video). Submit a job, poll for completion, and get the video result. Generation may take up to 3 hours; poll once per minute and return to the user immediately when status becomes succeeded or failed (or any terminal error state). Stop polling immediately on failure/error and return the error details to the user.

Capabilities

  1. Image to Video – Turn images into videos using the Loova Seedance 2.0 Video API, powered by Seedance 2.0 or Seedance 2.0 Fast.
  2. Text to Video – Convert text into videos with the Loova Seedance 2.0 Video API, powered by Seedance 2.0 or Seedance 2.0 Fast.
  3. Multi-Modal Reference System – Supports multiple input types, including text, images, videos, and audio. These inputs can be used as references for different parts of your video.
  4. Configurable Settings – Customize duration (4–15 seconds), aspect ratio, and function mode (first frame, last frame, or omni reference).
  5. Attachment-friendly workflow
  • When users provide media via URL, pass it directly using --image-urls, --video-urls, or --audio-urls (no download required).
  • When users upload files in chat (images, videos, or audio), save them locally in the OpenClaw workspace (e.g., workspace/assets/) and pass the file paths via --files.
  • If both URLs and local files are provided for the same media type, URLs take precedence (local files of the same type will be ignored).

Quick Start

# Generate video from prompt only
python scripts/run_seedance.py --prompt "Camera slowly pushes in, person smiles"

# With local file(s) (sent as FormData File uploads)
python scripts/run_seedance.py --prompt "Person turns head" --files "photo.jpg" --duration 8

# Fast model, custom ratio
python scripts/run_seedance.py --prompt "A cat in the sun" --model seedance_2_0_fast --ratio "16:9"

Setup

Required API Key

Obtain your API key from your account after logging in at https://loova.ai/. Do not hardcode the key; use environment variables or .env.

Add to your environment or .env file in the project root:

# Required for Loova API
LOOVA_API_KEY=your_api_key_here

Create .env from the example:

cp .env.example .env
# Edit .env and set LOOVA_API_KEY

The script loads variables from .env automatically (via python-dotenv). You can also export LOOVA_API_KEY in your shell.

Install Dependencies

pip install -r requirements.txt

Dependencies: requests, python-dotenv. No FFmpeg or other system binaries required.

Usage Examples

1. Text to Video (prompt only)

python scripts/run_seedance.py --prompt "A futuristic city at night with flying cars" --duration 5

2. Image to Video (with reference image URL)

python scripts/run_seedance.py --prompt "Person slowly smiles" --image-urls "https://your-cdn.com/portrait.jpg" --duration 8

3. Multiple Reference Images

python scripts/run_seedance.py --prompt "Smooth transition between scenes" --image-urls "https://example.com/a.jpg,https://example.com/b.jpg" --function-mode first_last_frames

4. Fast Model, Custom Aspect Ratio

python scripts/run_seedance.py --prompt "Ocean waves" --model seedance_2_0_fast --ratio "9:16" --duration 6

Scripts Reference

ScriptDescription
scripts/run_seedance.pySubmit Seedance 2.0 video task and poll until done; prints result JSON (includes video URL on success)

Arguments: --prompt (required), --model, --duration, --ratio, --function-mode, --files (comma-separated local paths; sent as multipart File uploads). URL inputs: --image-urls, --video-urls, --audio-urls (comma-separated). When no files are uploaded, the request uses Content-Type: application/json; when uploading files it uses multipart/form-data. Note: for multipart uploads, let the HTTP client set Content-Type with boundary automatically; do not set Content-Type manually.

API Flow

  1. SubmitPOST https://api.loova.ai/api/v1/video/seedance-2 with Authorization: Bearer <API_KEY>; response contains task_id.
  2. PollGET https://api.loova.ai/api/v1/tasks?task_id=<task_id> once per minute until status is succeeded or failed.
  3. Result – Response includes the video result (e.g. URL). Script prints full JSON.

Parameters Summary

ParameterRequiredDefaultDescription
modelYesseedance_2_0seedance_2_0 or seedance_2_0_fast
promptYesPrompt; supports @ reference syntax
functionModeNofirst_last_frames or omni_reference
(multipart) filesNoOptional File parts (images/video/audio); sent as multipart/form-data
image_urlsNoOptional image URL list (pass via --image-urls)
video_urlsNoOptional video URL list (pass via --video-urls)
audio_urlsNoOptional audio URL list (pass via --audio-urls)
ratioNo16:9Aspect ratio
durationNo5Duration in seconds (4–15)

For full API details, see reference.md. For a short setup guide, see QUICK_START.md.

Files

6 total
Select a file
Select a file to preview.

Comments

Loading comments…