videogencn

v2026.09.24

Use when generating video clips with Chinese video models — text-to-video (文生视频), image-to-video (图生视频), first/last-frame and reference-to-video across 4 platforms: Bailian (Wan/PixVerse/Kling/Vidu/HappyHorse), Jimeng (doubao-seedance), MiniMax (Hailuo), Hunyuan (hy-video)

GitHub
Install command
npx skhub add agents365-ai/videogencn
Markdown
SKILL.md

videogencn - Chinese Video Generation Skill

Overview

Generate short video clips using Chinese video models across four providers — Alibaba Cloud Bailian (Wan/PixVerse/Kling/Vidu/HappyHorse), Volcengine Ark (Jimeng/即梦), MiniMax (海螺 AI), and Tencent Hunyuan (混元).

Four modes, auto-selected from inputs:

ModeInputsDefault model
t2v 文生视频prompt onlywan2.7-t2v-2026-04-25 (Bailian)
i2v 图生视频prompt + --imagewan2.6-i2v-flash (Bailian)
kf2v 首尾帧prompt + --image + --last-framepixverse/pixverse-c1-kf2v (Bailian)
r2v 参考生视频prompt + --ref (1-7 images)pixverse/pixverse-c1-r2v (Bailian)

Video generation is asynchronous: submit → poll every 10s → download MP4. Result URLs expire after 24h, so the script always downloads immediately.

Local images: Wan/HappyHorse accept base64 data URIs directly; PixVerse/Kling/Vidu auto-upload to DashScope OSS (48h); Jimeng/Hunyuan use base64; MiniMax uploads via its file API.

When to Use This Skill

  • User asks to 生成视频 / 文生视频 / 图生视频 / 首尾帧 / 参考生视频
  • User names a Chinese video model: 万相/Wan, 爱诗/PixVerse, 可灵/Kling, Vidu, HappyHorse, 即梦/Jimeng, 海螺/MiniMax, 混元/Hunyuan
  • User needs B-roll, animated stills, character-consistent clips, or frame transitions
  • User asks about model pricing, features, or wants to compare models → open docs/models.html

Workflow

Step 0: Prompt Refinement (interactive)

Run for t2v/i2v unless skipped (see §0.4). Claude polishes the user's prompt before generation.

0.1 Analyze the raw input

DimensionCheck
SubjectWho/what? Appearance, action, expression
SceneWhere? Background, environment, atmosphere
LightingTime of day? Light quality? (golden hour, neon, soft diffused, backlit)
CameraShot type? (close-up, wide, aerial, tracking). Movement? (push-in, pan, orbit)
Mood/StyleEmotional tone? Visual style? (cinematic, anime, documentary, surreal)
MotionWhat moves? How? Speed, direction, dynamics
TemporalAny sequence? Beginning→middle→end?

0.2 Generate three refined variants

Present 3 variants in a table:

| # | 风格方向 | 优化后提示词 | 建议参数 |
|---|---------|-------------|---------|
| 1 | [风格名]  | [完整中文提示词] | 5s / 16:9 / 1080P |
| 2 | [风格名]  | [完整中文提示词] | 8s / 16:9 / 1080P |
| 3 | [风格名]  | [完整中文提示词] | 5s / 9:16 / 1080P |
  • Variant 1: 忠于原意 — preserve core idea, add cinematic detail
  • Variant 2: 创造性发散 — different artistic interpretation
  • Variant 3: 实用主义 — optimized for vertical short-video

Prompt writing rules:

  • Write in Chinese; front-load subject + action (first 20 chars matter most)
  • Concrete visual nouns ("金色麦田") not abstract concepts ("丰收的感觉")
  • Describe motion explicitly ("缓缓推近", "随风飘动")
  • Add camera/lighting cues at the end ("电影感镜头", "逆光剪影")
  • Keep within 150 characters
  • Wan 2.7 multi-shot: 第N个镜头[N-Ns]: 描述 format

0.3 User feedback loop

User saysAction
"用第N个" / "N"Use variant N as-is
"更诗意" / "更浪漫"Regenerate with poetic tone
"更简洁"Strip to essentials
"加动态元素"Add more motion/action
"改为夜景" / "下雪" / etcApply scene change to all variants
"混合1和3"Combine subject of 1 with style of 3
"直接用" / "不改了"Skip refinement
Custom feedbackApply and regenerate

Iterate until the user explicitly approves ("好", "可以", "用这个", "生成吧").

0.4 Skip conditions

Skip refinement when user says "直接生成" / "不用优化" / "skip", the prompt is already detailed (>80 chars), or mode is kf2v/r2v.

Step 1: Decide mode, provider, and model

  • Mode: auto-detected from inputs (t2v / i2v / kf2v / r2v)
  • Provider: --provider {bailian,jimeng,minimax,hunyuan} or auto-detect from model name
  • Model: --model flag, or provider default for the mode
  • Parameters: duration, resolution, ratio from variant suggestion or user override

Step 2: Confirm and generate

Show the final command and confirm with the user. Run the script; it blocks until the task finishes and saves the MP4.

Step 3: Deliver

Report output path, file size, and generation time. Save to cwd if no path given.

Cost note: video APIs bill per second of output. Confirm with user for long/many clips.

Providers

Alibaba Bailian 百炼

One API key (DASHSCOPE_API_KEY) covers 5 model families. Third-party models (PixVerse/Kling/Vidu/HappyHorse) are cn region only. Models: Wan (t2v/i2v, up to 15s), PixVerse (all 4 modes, 1-15s), Kling (t2v/i2v/kf2v + r2v on omni), Vidu (q3: 1-16s with audio; q2: 1-10s), HappyHorse (t2v/i2v, 3-15s).

Volcengine Ark (Jimeng 即梦)

ARK_API_KEY via https://ark.cn-beijing.volces.com/api/v3. Seedance 2.0: t2v/i2v up to 15s/2K, with audio, lip-sync, and camera motion. Ratios: 16:9, 9:16, 1:1, 21:9.

MiniMax 海螺 AI

MINIMAX_API_KEY via https://api.minimax.chat. MiniMax-H3 (Hailuo 3.0): t2v/i2v, 4-15s, 768P/1080P (2K via direct API), 24fps with native stereo audio. Legacy video-01: 6s at 720P, prompt optimizer on by default (--no-prompt-optimizer to disable). Host override: MINIMAX_API_BASE (e.g. https://api.minimaxi.com CN / https://api.minimax.io intl).

Tencent Hunyuan 混元

HUNYUAN_API_KEY via TokenHub. hy-video-1.5: t2v/i2v (5-10s, 720P, supports --duration/--seed). Experimental i2v-only: yt-video-2.0, yt-video-fx, yt-video-humanactor. Flags --resolution, --ratio, --audio, --camera-motion are not yet supported.

Model Selection Guide

Use caseModelProvider
Best quality t2v, multi-shotwan2.7-t2v-2026-04-25Bailian
Fast action / combatpixverse/pixverse-c1-t2vBailian
Smart storyboard + audiokling/kling-v3-video-generationBailian
Long clips up to 16s + audiovidu/viduq3-pro_text2videoBailian
Douyin/XHS short-videodoubao-seedance-2-0-260128Jimeng
Smooth motion, natural physicsMiniMax-H3MiniMax
Animate an image (default)wan2.6-i2v-flashBailian
Transition between two framespixverse/pixverse-c1-kf2vBailian
Character/subject consistencypixverse/pixverse-c1-r2vBailian
Cheap draftswanx2.1-t2v-turbo, happyhorse-1.0-t2vBailian
Chinese t2v/i2v on Tencenthy-video-1.5Hunyuan
Portrait animation (experimental)yt-video-humanactorHunyuan

Run python scripts/generate_video.py --list-models for the full model catalog.

Model Comparison Page

When the user wants to compare models, browse pricing, filter by features, or pick a model:

Open docs/models.html in the browser. It's a self-contained static page — no server needed. Use open (macOS) or xdg-open (Linux):

open docs/models.html

The page supports filtering by provider, mode (文生/图生/首尾帧/参考生), and features (audio/camera/multi-shot), with pricing and capability comparison across all 24 models.

Usage

# Text-to-Video (Bailian default)
python scripts/generate_video.py "一只柴犬在樱花树下奔跑,花瓣随风飘落,电影感镜头" shiba.mp4 \
  --duration 5 --resolution 1080P --ratio 16:9

# Image-to-Video
python scripts/generate_video.py "镜头缓缓推近,人物微笑" out.mp4 --image portrait.png

# First+Last Frame (kf2v)
python scripts/generate_video.py "花苞缓缓绽放成盛开的牡丹" bloom.mp4 \
  --image bud.png --last-frame bloom.png

# Reference-to-Video (r2v)
python scripts/generate_video.py "@girl 在 @cafe 里弹吉他" out.mp4 \
  --ref girl=girl.png --ref cafe=cafe.jpg

# Other providers
python scripts/generate_video.py "城市日落延时摄影" sunset.mp4 --provider jimeng --duration 10
python scripts/generate_video.py "海浪拍打礁石" ocean.mp4 --provider minimax --duration 6
python scripts/generate_video.py "金黄色的麦田在秋风中起伏" field.mp4 --provider hunyuan --duration 5

# Dry-run: preview request + cost estimate without submitting
python scripts/generate_video.py "一只柴犬在樱花树下奔跑" --dry-run

# Schema introspection (for agents)
python scripts/generate_video.py schema providers   # list all providers
python scripts/generate_video.py schema bailian     # list bailian models with capabilities

# JSON output (auto-detected when stdout is not a TTY; force with --format)
python scripts/generate_video.py --list-models --format json
python scripts/generate_video.py "海边的日落" out.mp4 --format json --provider jimeng

# Resume a task
python scripts/generate_video.py --task-id <task-id> out.mp4

# List all models
python scripts/generate_video.py --list-models

Options

FlagMeaningDefault
--providerbailian / jimeng / minimax / hunyuanauto-detect
-m/--modelmodel nameauto by mode
-i/--imagefirst-frame image (path/URL) → i2v—
--last-framelast-frame image → kf2v (requires -i)—
--refreference image name=path_or_url, repeatable → r2v—
-d/--durationseconds5
-r/--resolution360P/480P/540P/720P/1080P1080P
--ratio16:9 / 9:16 / 1:1 / 3:4 / 4:3 / 21:916:9
-s/--sizeexact W*H for size-based modelsfrom resolution+ratio
-n/--negativenegative prompt (Wan only)—
--no-prompt-extenddisable prompt rewriting (Wan only)extend on
--no-prompt-optimizerdisable built-in prompt optimizer (MiniMax only)optimizer on
--audioenable audio on PixVerse/Kling/Vidu/Jimengoff
--no-audiosilent output on Wan audio modelsaudio on
--camera-motioncamera motion (Jimeng Seedance 2.0 only)—
--seedreproducibilityrandom
--task-idresume polling an existing task—
--dry-runpreview request body + cost estimate, no submit—
--formatjson or table (default: table in TTY, json otherwise)auto
--list-modelslist models and exit—
schema <resource>introspection: providers or a provider id—

Requirements

pip install requests

Environment Variables

VariableRequiredProviderPurpose
DASHSCOPE_API_KEYyes (Bailian)Bailianhttps://bailian.console.aliyun.com/
DASHSCOPE_API_BASEnoBailiancn (default) / sg / us
DASHSCOPE_VIDEO_MODELnoBailiandefault model override
ARK_API_KEYyes (Jimeng)Jimenghttps://console.volcengine.com/ark/
MINIMAX_API_KEYyes (MiniMax)MiniMaxhttps://platform.minimax.io
MINIMAX_API_BASEnoMiniMaxAPI host override (CN: https://api.minimaxi.com, intl: https://api.minimax.io)
HUNYUAN_API_KEYyes (Hunyuan)Hunyuanhttps://console.cloud.tencent.com/hunyuan

Third-party Bailian models are cn region only.

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Not specified

Source path

plugins/videogencn/skills/videogencn

Default branch

main

Latest commit

f496359

Tree SHA

e0523c8