Generate AI videos and images via the official Vidu API using vidu-cli.
| Feature | Description |
|---|---|
| Text-to-Image | Generate images from text, up to 1080p/2K/4K |
| Text-to-Video | Generate videos from text, up to 16s |
| Image-to-Video | One image + text → video |
| Head-Tail-to-Video | Start frame + end frame + text → video |
| Reference-to-Image | 1–7 images/materials + text → image |
| Reference-to-Video | 1–7 images/materials + text → video |
| Lip Sync | Drive video mouth movement with TTS or audio file |
| Text-to-Speech | Convert text to speech, 300+ voices, 20+ languages |
| Video Compose | Multi-track timeline (video/audio/subtitle/effect) → exported video |
| Create References | Create personal reference material elements |
| Search Community References | Search community-shared reference materials |
| Query Quota/Credits | Check claw-pass daily quota and user credit balance |
| Cost Estimation | Estimate task credit cost before submitting (video/image/TTS/lip-sync) |
# Via npx skills (recommended, supports Claude Code, Cursor, Copilot, and 40+ agents)
npx skills add shengshu-ai/vidu-skills
# Via ClawHub (OpenClaw ecosystem)
clawhub install github:shengshu-ai/vidu-skillsRequires Node.js ≥ 14:
npm install -g vidu-cli@latest| Variable | Required | Description |
|---|---|---|
VIDU_TOKEN |
Yes | Vidu API token — obtain it at vidu.cn (mainland China) or vidu.com (overseas); see Get your Vidu API Token |
VIDU_BASE_URL |
No | Default https://service.vidu.cn (mainland China); use https://service.vidu.com for overseas |
VIDU_DEBUG |
No | Set to 1 to print full response body to stderr |
Mainland China — visit vidu.cn, log in, open the account menu from the avatar in the lower-left corner, then click Vidu Token:
Overseas — visit vidu.com, log in, open the account menu from the avatar in the left sidebar, then click Vidu Token:
This skill sends user-provided data to Vidu's servers:
- Text prompts are sent to the Vidu API.
- Local images, videos, and audio files are uploaded to Vidu API servers (
service.vidu.cnorservice.vidu.com) when used as task inputs. - Task parameters such as settings, model version, duration, and resolution are sent to the Vidu API.
Before using this skill, confirm that sending your content to Vidu is acceptable for your privacy and intellectual property requirements. Data handling follows Vidu's official policy.
Security recommendations:
- Create a token with limited scope if possible.
- Avoid using production or privileged tokens for initial testing.
- Review Vidu's terms of service and privacy policy.
Vidu terms and privacy:
- Overseas: https://www.vidu.com/terms
- Mainland China: https://www.vidu.cn/terms
# Text-to-video
vidu-cli task submit \
--type text2video \
--prompt "A cat running through a meadow" \
--model-version 3.2 \
--duration 5 \
--resolution 1080p
# Poll until success/failed
vidu-cli task get <task_id>
# Download result
vidu-cli task get <task_id> --output ./output# Image-to-video
vidu-cli task submit \
--type img2video \
--prompt "slow camera push-in" \
--image ./photo.jpg \
--model-version 3.2 \
--duration 5 \
--transition pro
# Text-to-speech
vidu-cli task tts \
--prompt "Hello, welcome to Vidu" \
--voice-id en_female_1 \
--subtitle-enable
# List available voices
vidu-cli task tts-voices| Command | Purpose |
|---|---|
vidu-cli upload <image> |
Upload image, returns upload_id |
| `vidu-cli task submit --type ... [--prompt ... | --prompt-path ...]` |
vidu-cli task get <task_id> [--output dir] |
Query task status, optionally download result; downloads subtitle JSON when subtitle_uri is present |
vidu-cli task compose --timeline <json> |
Video compose, returns task_id |
vidu-cli task lip-sync --video ... --text ... |
Lip sync (TTS mode) |
vidu-cli task lip-sync --video ... --audio ... |
Lip sync (audio file mode) |
| `vidu-cli task tts [--prompt ... | --prompt-path ... |
vidu-cli element create --name ... --image ... [--description ...] [--style ...] |
Create reference element |
vidu-cli element check --name ... |
Check element name availability |
vidu-cli element list [--keyword kw] |
List personal elements |
vidu-cli element search --keyword ... |
Search community elements |
vidu-cli task lip-sync-voices |
List available lip-sync voices (~86) |
vidu-cli task tts-voices |
List available TTS voices (300+, 20+ languages) |
vidu-cli task cost --type ... --model-version ... --duration ... |
Estimate video/image task credit cost |
vidu-cli task tts-cost --text ... --voice-id ... |
Estimate TTS task credit cost |
vidu-cli task lip-sync-cost --duration ... --voice-id ... |
Estimate lip-sync task credit cost |
vidu-cli quota pass |
Query claw-pass daily quota |
vidu-cli quota credit |
Query user credit balance |
TTS subtitles are enabled by default for single --prompt mode. Use --subtitle-enable false to disable subtitle output; multi-segment --text mode currently requires --subtitle-enable false. Download results with vidu-cli task get <task_id> --output <dir>; when subtitle_uri is present, this downloads generated audio plus preprocessed subtitle JSON as {task_id}_subtitle.json.
created → queueing → preparation → scheduling → processing → success / failed / canceled
Terminal states are success, failed, and canceled. Keep polling for all other states.
| File | Contents |
|---|---|
references/parameters.md |
Task matrix, CLI flags, examples, prompt tips |
references/errors_and_retry.md |
Task states, retry strategy |
references/compose.md |
Video compose timeline JSON schema |
- Homepage (mainland China): https://www.vidu.cn/
- Homepage (overseas): https://www.vidu.com/
- npm: https://www.npmjs.com/package/vidu-cli