Bailian Media Generation
modelstudioai/cli
Chinese-language entry point into Alibaba Cloud Bailian's image, video and speech generation and understanding, routed through separate image, video, speech and vision commands.
A skill your agent uses when generating videos from images with DashScope Wan 2.7 image-to-video model (wan2.7-i2v).
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2v --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .claude/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .claude/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2vType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2v --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .agents/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .agents/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2v --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .cursor/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .cursor/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cinience/alicloud-skills.git --path skills/ai/video/aliyun-wan-i2v--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2v --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .gemini/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .gemini/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2vInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .github/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .github/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cinience/alicloud-skills aliyun-wan-i2v --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cinience/alicloud-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ai/video/aliyun-wan-i2v .opencode/skills/aliyun-wan-i2v && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "aliyun-wan-i2v" agent skill from https://github.com/cinience/alicloud-skills/tree/main/skills/ai/video/aliyun-wan-i2v into .opencode/skills/aliyun-wan-i2v/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aliyun-wan-i2v", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
aliyun-wan-i2vA skill your agent uses when generating videos from images with DashScope Wan 2.7 image-to-video model (wan2.7-i2v).
Aliyun Wan I2v is an agent skill from cinience/alicloud-skills. Use when generating videos from images with DashScope Wan 2.7 image-to-video model (wan2.7-i2v). Use when implementing first-frame video generation, first+last frame interpolation, video continuation, or audio-driven video synthesis via the video-synthesis async API.
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/api_reference.md`, `references/sources.md` and `scripts/generate_i2v.py`).
It sits in Media & Creative, covering AI video generation. It works with Alibaba Cloud. The repository describes itself as: alibaba cloud skills,qwen ,wan and all skills. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1818263. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonpython3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
dashscope.aliyuncs.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
DASHSCOPE_API_KEYAPI_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Aliyun Wan I2v loads about 1.8k tokens when it runs, and up to ~2.8k if it reads all its reference files. Until then it costs about 71 tokens; SKILL.md has 490 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from cinience/alicloud-skills at commit 1818263, republished under its MIT licence (© cinience). 490 words, ~1,835 tokens.
.claude/skills/aliyun-wan-i2v/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.mkdir -p output/aliyun-wan-i2v
python -m py_compile skills/ai/video/aliyun-wan-i2v/scripts/generate_i2v.py && echo "py_compile_ok" > output/aliyun-wan-i2v/validate.txtPass criteria: command exits 0 and output/aliyun-wan-i2v/validate.txt is generated.
output/aliyun-wan-i2v/.python3 -m venv .venv
. .venv/bin/activate
python -m pip install dashscopeDASHSCOPE_API_KEY in your environment, or add dashscope_api_key to ~/.alibabacloud/credentials.wan2.7-i2v — supports first-frame, first+last frame, video continuation, and audio-driven generation| Capability | Description | Required media types |
|---|---|---|
| First-frame video | Generate video from a single image | first_frame |
| First+last frame | Interpolate video between two images | first_frame + last_frame |
| Video continuation | Extend an existing video clip | first_clip |
| Audio-driven | Drive video with audio (lip-sync, rhythm) | first_frame + driving_audio |
POST https://dashscope.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesisRequired headers:
Authorization: Bearer $DASHSCOPE_API_KEYContent-Type: application/jsonX-DashScope-Async: enableSingapore endpoint: replace dashscope.aliyuncs.com with dashscope-intl.aliyuncs.com.
prompt (string, optional) — up to 5000 characters, describes desired video contentnegative_prompt (string, optional) — up to 500 charactersmedia (array, required) — media objects with type and url fields:type: first_frame | last_frame | driving_audio | first_clipurl: public URL (HTTP/HTTPS) or OSS temporary URLresolution (string, optional) — 720P or 1080P (default: 1080P)duration (integer, optional) — video length in seconds, range [2, 15] (default: 5)prompt_extend (boolean, optional) — AI prompt rewriting (default: true)watermark (boolean, optional) — add "AI generated" watermark (default: false)seed (integer, optional) — range [0, 2147483647]Images (first_frame, last_frame):
Audio (driving_audio):
duration value if longerVideo (first_clip):
output.task_id (string) — use for polling, valid 24 hoursoutput.task_status (string) — PENDING | RUNNING | SUCCEEDED | FAILED | CANCELEDrequest_id (string)output.video_url (string) — generated video URLoutput.orig_prompt (string) — original promptoutput.actual_prompt (string) — rewritten prompt (if prompt_extend enabled)usage.video_count (integer)usage.video_duration (integer) — duration in secondsimport os
import json
import time
import requests
API_KEY = os.getenv("DASHSCOPE_API_KEY")
BASE_URL = "https://dashscope.aliyuncs.com/api/v1"
def create_i2v_task(req: dict) -> str:
"""Create an image-to-video task and return task_id."""
payload = {
"model": "wan2.7-i2v",
"input": {
"prompt": req.get("prompt", ""),
"media": req["media"],
},
"parameters": {
"resolution": req.get("resolution", "1080P"),
"duration": req.get("duration", 5),
"prompt_extend": req.get("prompt_extend", True),
"watermark": req.get("watermark", False),
},
}
if req.get("negative_prompt"):
payload["input"]["negative_prompt"] = req["negative_prompt"]
if req.get("seed") is not None:
payload["parameters"]["seed"] = req["seed"]
resp = requests.post(
f"{BASE_URL}/services/aigc/video-generation/video-synthesis",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
"X-DashScope-Async": "enable",
},
json=payload,
)
resp.raise_for_status()
data = resp.json()
return data["output"]["task_id"]
def poll_task(task_id: str, interval: int = 15) -> dict:
"""Poll until task completes. Returns final response."""
while True:
resp = requests.get(
f"{BASE_URL}/tasks/{task_id}",
headers={"Authorization": f"Bearer {API_KEY}"},
)
resp.raise_for_status()
data = resp.json()
status = data["output"]["task_status"]
if status in ("SUCCEEDED", "FAILED", "CANCELED"):
return data
time.sleep(interval)# First-frame only
media = [{"type": "first_frame", "url": "https://example.com/image.jpg"}]
# First + last frame interpolation
media = [
{"type": "first_frame", "url": "https://example.com/start.jpg"},
{"type": "last_frame", "url": "https://example.com/end.jpg"},
]
# Audio-driven from first frame
media = [
{"type": "first_frame", "url": "https://example.com/face.jpg"},
{"type": "driving_audio", "url": "https://example.com/speech.mp3"},
]
# Video continuation
media = [{"type": "first_clip", "url": "https://example.com/clip.mp4"}]| Error | Likely cause | Action |
|---|---|---|
| 401/403 | Missing or invalid DASHSCOPE_API_KEY | Check env var or credentials file |
400 InvalidParameter | Unsupported resolution, bad duration, missing media | Validate parameters |
| "does not support synchronous calls" | Missing X-DashScope-Async: enable header | Add required header |
| 429 | Rate limit or quota | Retry with backoff |
output/aliyun-wan-i2v/videos/OUTPUT_DIR.wan2.7-i2v.first_frame entries).aliyun-wan-videoedit instead.references/api_reference.md for full HTTP API details.references/sources.md for source links.© cinience, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts, references) in skills/ai/video/aliyun-wan-i2v of cinience/alicloud-skills.
Open the folder on GitHubat commit 1818263
Aliyun Wan I2v next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Aliyun Wan I2v this skillcinience/alicloud-skills | 397 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Bailian Media Generationmodelstudioai/cli | 542 | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Video Generationbytedance/deer-flow | 84k | 3 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Video Cover Imageitwanger/toBeBetterJavaer | 18k | — | ~3.3k | Automated safety check: Pass | None | |
| Seedancesongguoxs/seedance-prompt-skill | 2.9k | 1 repos | ~2.5k | Automated safety check: Pass | None | |
| HyperFrames Video Entry Pointheygen-com/hyperframes | 60k | 3 repos | ~5.2k | Automated safety check: Pass | Apache-2.0 |
modelstudioai/cli
Chinese-language entry point into Alibaba Cloud Bailian's image, video and speech generation and understanding, routed through separate image, video, speech and vision commands.
bytedance/deer-flow
Generates short videos from a structured JSON prompt, optionally guided by a reference image used as the first or last frame.
itwanger/toBeBetterJavaer
Generate matched 3:4, 16:9, and 4:3 short-video cover images from toBeBetterJavaer video scripts or AI/Java technical topics.
songguoxs/seedance-prompt-skill
This skill should be used when the user asks to "generate video prompts", "create Seedance prompts", "write video descriptions", mentions "Seedance", "seedance", "即梦", "即梦平台", "视频提示词", "视频生成"…
heygen-com/hyperframes
Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.
cclank/lanshu-create-ai-presenter-video
Turn a topic or finished script into a complete, publish-ready explainer video — led by an AI presenter from an authorized adult presenter image, or performed in one of nine visual explainer styles…
cinience/alicloud-skills
A skill your agent uses when creating, migrating, or optimizing skills for this alicloud-skills repository.
cinience/alicloud-skills
Bootstrap, create, connect to, operate, secure, scale, upgrade, troubleshoot, inspect, and tear down Alibaba Cloud Container Compute Service (ACS) Agent Sandbox environments.
cinience/alicloud-skills
Create, inspect, connect to, inventory, and delete Alibaba Cloud Container Compute Service (ACS) clusters through the official CS OpenAPI.
cinience/alicloud-skills
A skill your agent uses when managing Alibaba Cloud AnalyticDB for MySQL (ADB) via OpenAPI/SDK, including the user needs AnalyticDB resource lifecycle and configuration operations, status checks, or…
cinience/alicloud-skills
A skill your agent uses when managing Alibaba Cloud AIContent (AiContent) via OpenAPI/SDK, including the user needs AI content generation or content workflow operations in Alibaba Cloud, including…
cinience/alicloud-skills
A skill your agent uses when managing Alibaba Cloud Quan Miao (AiMiaoBi) via OpenAPI/SDK, including the user asks for Alibaba Cloud MiaoBi content operations, including listing resources…
Works with
Categories
A skill your agent uses when generating videos from images with DashScope Wan 2.7 image-to-video model (wan2.7-i2v). Aliyun Wan I2v is an agent skill from cinience/alicloud-skills.7-i2v).
Aliyun Wan I2v fits situations like: generating videos from images with DashScope Wan 2.7 image-to-video model (wan2.7-i2v); implementing first-frame video generation; first+last frame interpolation; video continuation.
Run `npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a claude-code`. Or copy the skill folder (skills/ai/video/aliyun-wan-i2v in cinience/alicloud-skills) into .claude/skills/aliyun-wan-i2v in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a codex`. Or copy the skill folder (skills/ai/video/aliyun-wan-i2v in cinience/alicloud-skills) into .agents/skills/aliyun-wan-i2v in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cinience/alicloud-skills --skill aliyun-wan-i2v -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/aliyun-wan-i2v, .gemini/skills/aliyun-wan-i2v, .github/skills/aliyun-wan-i2v and .opencode/skills/aliyun-wan-i2v in your project.
Going by SKILL.md and its folder, Aliyun Wan I2v needs Python for the scripts in its folder, the command-line tools its instructions call (python and python3) and credentials named DASHSCOPE_API_KEY and API_KEY. Our summary lists: Python 3; A credential in DASHSCOPE_API_KEY; A credential in API_KEY.
SKILL.md names 1 domain. In commands or code: dashscope.aliyuncs.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Aliyun Wan I2v is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 945 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Aliyun Wan I2v: Bailian Media Generation (modelstudioai/cli, 542 stars), Video Generation (bytedance/deer-flow, 84k stars), Video Cover Image (itwanger/toBeBetterJavaer, 18k stars) and Seedance (songguoxs/seedance-prompt-skill, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cinience (a GitHub user) maintains it in cinience/alicloud-skills, which has 397 GitHub stars. The repository holds 96 skills in this directory. The repository was last updated on August 11, 2026.
Source: cinience/alicloud-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.