Use when designing, reviewing, or refactoring a CLI that must serve AI agents alongside humans, or when converting an API or SDK into an agent-usable CLI interface.
The English summary is being prepared. Showing the original description.
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)
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
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:
| Mode | Inputs | Default model |
|---|---|---|
| t2v 文生视频 | prompt only | wan2.7-t2v-2026-04-25 (Bailian) |
| i2v 图生视频 | prompt + --image | wan2.6-i2v-flash (Bailian) |
| kf2v 首尾帧 | prompt + --image + --last-frame | pixverse/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.
docs/models.htmlRun for t2v/i2v unless skipped (see §0.4). Claude polishes the user's prompt before generation.
| Dimension | Check |
|---|---|
| Subject | Who/what? Appearance, action, expression |
| Scene | Where? Background, environment, atmosphere |
| Lighting | Time of day? Light quality? (golden hour, neon, soft diffused, backlit) |
| Camera | Shot type? (close-up, wide, aerial, tracking). Movement? (push-in, pan, orbit) |
| Mood/Style | Emotional tone? Visual style? (cinematic, anime, documentary, surreal) |
| Motion | What moves? How? Speed, direction, dynamics |
| Temporal | Any sequence? Beginning→middle→end? |
Present 3 variants in a table:
| # | 风格方向 | 优化后提示词 | 建议参数 |
|---|---------|-------------|---------|
| 1 | [风格名] | [完整中文提示词] | 5s / 16:9 / 1080P |
| 2 | [风格名] | [完整中文提示词] | 8s / 16:9 / 1080P |
| 3 | [风格名] | [完整中文提示词] | 5s / 9:16 / 1080P |
Prompt writing rules:
第N个镜头[N-Ns]: 描述 format| User says | Action |
|---|---|
| "用第N个" / "N" | Use variant N as-is |
| "更诗意" / "更浪漫" | Regenerate with poetic tone |
| "更简洁" | Strip to essentials |
| "加动态元素" | Add more motion/action |
| "改为夜景" / "下雪" / etc | Apply scene change to all variants |
| "混合1和3" | Combine subject of 1 with style of 3 |
| "直接用" / "不改了" | Skip refinement |
| Custom feedback | Apply and regenerate |
Iterate until the user explicitly approves ("好", "可以", "用这个", "生成吧").
Skip refinement when user says "直接生成" / "不用优化" / "skip", the prompt is already detailed (>80 chars), or mode is kf2v/r2v.
--provider {bailian,jimeng,minimax,hunyuan} or auto-detect from model name--model flag, or provider default for the modeShow the final command and confirm with the user. Run the script; it blocks until the task finishes and saves the MP4.
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.
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).
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_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).
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.
| Use case | Model | Provider |
|---|---|---|
| Best quality t2v, multi-shot | wan2.7-t2v-2026-04-25 | Bailian |
| Fast action / combat | pixverse/pixverse-c1-t2v | Bailian |
| Smart storyboard + audio | kling/kling-v3-video-generation | Bailian |
| Long clips up to 16s + audio | vidu/viduq3-pro_text2video | Bailian |
| Douyin/XHS short-video | doubao-seedance-2-0-260128 | Jimeng |
| Smooth motion, natural physics | MiniMax-H3 | MiniMax |
| Animate an image (default) | wan2.6-i2v-flash | Bailian |
| Transition between two frames | pixverse/pixverse-c1-kf2v | Bailian |
| Character/subject consistency | pixverse/pixverse-c1-r2v | Bailian |
| Cheap drafts | wanx2.1-t2v-turbo, happyhorse-1.0-t2v | Bailian |
| Chinese t2v/i2v on Tencent | hy-video-1.5 | Hunyuan |
| Portrait animation (experimental) | yt-video-humanactor | Hunyuan |
Run python scripts/generate_video.py --list-models for the full model catalog.
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.
# 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
| Flag | Meaning | Default |
|---|---|---|
--provider | bailian / jimeng / minimax / hunyuan | auto-detect |
-m/--model | model name | auto by mode |
-i/--image | first-frame image (path/URL) → i2v | — |
--last-frame | last-frame image → kf2v (requires -i) | — |
--ref | reference image name=path_or_url, repeatable → r2v | — |
-d/--duration | seconds | 5 |
-r/--resolution | 360P/480P/540P/720P/1080P | 1080P |
--ratio | 16:9 / 9:16 / 1:1 / 3:4 / 4:3 / 21:9 | 16:9 |
-s/--size | exact W*H for size-based models | from resolution+ratio |
-n/--negative | negative prompt (Wan only) | — |
--no-prompt-extend | disable prompt rewriting (Wan only) | extend on |
--no-prompt-optimizer | disable built-in prompt optimizer (MiniMax only) | optimizer on |
--audio | enable audio on PixVerse/Kling/Vidu/Jimeng | off |
--no-audio | silent output on Wan audio models | audio on |
--camera-motion | camera motion (Jimeng Seedance 2.0 only) | — |
--seed | reproducibility | random |
--task-id | resume polling an existing task | — |
--dry-run | preview request body + cost estimate, no submit | — |
--format | json or table (default: table in TTY, json otherwise) | auto |
--list-models | list models and exit | — |
schema <resource> | introspection: providers or a provider id | — |
pip install requests
| Variable | Required | Provider | Purpose |
|---|---|---|---|
DASHSCOPE_API_KEY | yes (Bailian) | Bailian | https://bailian.console.aliyun.com/ |
DASHSCOPE_API_BASE | no | Bailian | cn (default) / sg / us |
DASHSCOPE_VIDEO_MODEL | no | Bailian | default model override |
ARK_API_KEY | yes (Jimeng) | Jimeng | https://console.volcengine.com/ark/ |
MINIMAX_API_KEY | yes (MiniMax) | MiniMax | https://platform.minimax.io |
MINIMAX_API_BASE | no | MiniMax | API host override (CN: https://api.minimaxi.com, intl: https://api.minimax.io) |
HUNYUAN_API_KEY | yes (Hunyuan) | Hunyuan | https://console.cloud.tencent.com/hunyuan |
Third-party Bailian models are cn region only.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use when designing, reviewing, or refactoring a CLI that must serve AI agents alongside humans, or when converting an API or SDK into an agent-usable CLI interface.
The English summary is being prepared. Showing the original description.
Search free commercial-use creative assets across multiple online sources — photos, illustrations, icons, video footage, music, sound effects, and fonts. Use when the user needs to find assets for videos, PPTs, articles, or any content creation. Trigger on phrases like "find me a photo of", "search for icons", "I need background music", "find video footage", "search fonts", "找一张图片", "搜素材", "帮我找图标/视频/音乐/字体". Covers Pexels, Unsplash, Pixabay, Iconify, Freesound, Google Fonts and more — with API-backed search where available.
The English summary is being prepared. Showing the original description.
Query the Semantic Scholar academic corpus through AI2's Asta MCP server: keyword or title search with venue and date filters, who-cited-a-paper traversal, author profiles and publications, DOI/arXiv/PMID lookup, and ~500-word full-text snippets for evidence, with citation counts and h-index. Use when the user asks for papers on a topic, who cited a paper, an author's work, recent literature since a date, or a venue-scoped paper list. Requires the Asta MCP server.
The English summary is being prepared. Showing the original description.
Extract and organize frames from a Bilibili video (bangumi episode, UP upload, or a local file) into scenery shots and per-character image groups, using anime-specific person detection + CCIP character-identity embeddings. Two modes — cluster everyone, or pull out one (or several) named characters via reference folders. Use when the user wants to collect, extract, or organize anime frames/screenshots by character or by scenery from a Bilibili video. Read-only download for personal viewing/analysis; uploads nothing.
The English summary is being prepared. Showing the original description.
Fetch Bilibili (哔哩哔哩) video comments for UP主 self-analysis. Use when the user asks to collect, download, export, or analyze comments on a Bilibili video (BV号 / URL / UID). Produces JSONL + summary.json suitable for further Claude Code analysis (sentiment, keywords, audience trends). Read-only; does not post/edit/delete.
The English summary is being prepared. Showing the original description.
Use when user requests diagrams, flowcharts, architecture charts, or visualizations. Also use proactively when explaining systems with 3+ components, complex data flows, or relationships that benefit from visual representation. Generates .excalidraw files and exports to PNG/SVG via Kroki API or locally using excalidraw-brute-export-cli.
The English summary is being prepared. Showing the original description.