
Aliyun Animate Anyone
- 54 installs
- 396 repo stars
- Updated July 18, 2026
- cinience/alicloud-skills
Generates dance or motion-transfer videos with Alibaba Cloud Model Studio AnimateAnyone by cloning motion from an action template onto a character image.
About
Builds AnimateAnyone (animate-anyone-gen2) requests to transfer motion from a dance or action video onto a target character image. A developer uses it to generate motion-transfer or dance videos on Alibaba Cloud Model Studio.
- Uses animate-anyone-gen2 with a character image plus action template
- Includes py_compile validation and evidence output
Aliyun Animate Anyone by the numbers
- 54 all-time installs (skills.sh)
- Ranked #877 of 1,335 Generative Media skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/cinience/alicloud-skills --skill aliyun-animate-anyoneAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 54 |
|---|---|
| repo stars | ★ 396 |
| Last updated | July 18, 2026 |
| Repository | cinience/alicloud-skills ↗ |
What it does
Generates dance or motion-transfer videos with Alibaba Cloud Model Studio AnimateAnyone by cloning motion from an action template onto a character image.
Files
Category: provider
Model Studio AnimateAnyone
Validation
mkdir -p output/aliyun-animate-anyone
python -m py_compile skills/ai/video/aliyun-animate-anyone/scripts/prepare_animate_anyone_request.py && echo "py_compile_ok" > output/aliyun-animate-anyone/validate.txtPass criteria: command exits 0 and output/aliyun-animate-anyone/validate.txt is generated.
Output And Evidence
- Save normalized request payloads, detection outputs, template IDs, and task polling snapshots under
output/aliyun-animate-anyone/. - Record whether the result should keep the reference image background or the source video background.
Use AnimateAnyone when the task needs motion transfer from a template video rather than plain talking-head animation.
Critical model names
Use these exact model strings:
animate-anyone-detect-gen2animate-anyone-template-gen2animate-anyone-gen2
Selection guidance:
- Run image detection first.
- Run template generation on the source motion video.
- Use
animate-anyone-gen2for the final video job.
Prerequisites
- China mainland (Beijing) only.
- Set
DASHSCOPE_API_KEYin your environment, or adddashscope_api_keyto~/.alibabacloud/credentials. - Input files must be public HTTP/HTTPS URLs.
Normalized interface (video.animate_anyone)
Detect Request
model(string, optional): defaultanimate-anyone-detect-gen2image_url(string, required)
Template Request
model(string, optional): defaultanimate-anyone-template-gen2video_url(string, required)
Generate Request
model(string, optional): defaultanimate-anyone-gen2image_url(string, required)template_id(string, required)use_ref_img_bg(bool, optional): whether to keep the input image background
Response
task_id(string)task_status(string)video_url(string, when finished)
Quick start
python skills/ai/video/aliyun-animate-anyone/scripts/prepare_animate_anyone_request.py \
--image-url "https://example.com/dancer.png" \
--template-id "tmpl_xxx" \
--use-ref-img-bgOperational guidance
- The action template must come from the official template-generation API.
- Full-body images work best when
use_ref_img_bg=false; half-body images are not recommended in that mode. - This skill is best for dancing or large body motion transfer, not generic talking-head tasks.
Output location
- Default output:
output/aliyun-animate-anyone/request.json - Override base dir with
OUTPUT_DIR.
References
references/sources.md
interface:
display_name: "Alibaba Cloud AI Video AnimateAnyone"
short_description: "Dance and motion-transfer video generation"
default_prompt: "Use $aliyun-animate-anyone to complete this ai/video AnimateAnyone task on Alibaba Cloud."
- 视频生成总览(AnimateAnyone 条目): https://help.aliyun.com/zh/model-studio/use-video-generation
- AnimateAnyone 快速开始: https://help.aliyun.com/zh/model-studio/animateanyone-quick-start/
- AnimateAnyone 图像检测API: https://help.aliyun.com/zh/model-studio/animate-anyone-detect-api
- AnimateAnyone 动作模板生成API: https://help.aliyun.com/zh/model-studio/animate-anyone-template-api
- AnimateAnyone 视频生成API: https://help.aliyun.com/zh/model-studio/animateanyone-video-generation-api
#!/usr/bin/env python3
"""Prepare normalized requests for AnimateAnyone detect/template/generate flows."""
from __future__ import annotations
import argparse
import json
from pathlib import Path
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument("--image-url")
parser.add_argument("--video-url")
parser.add_argument("--template-id")
parser.add_argument("--detect-only", action="store_true")
parser.add_argument("--template-only", action="store_true")
parser.add_argument("--use-ref-img-bg", action="store_true")
parser.add_argument("--output", default="output/aliyun-animate-anyone/request.json")
args = parser.parse_args()
if args.detect_only:
if not args.image_url:
raise SystemExit("--image-url is required for --detect-only")
payload = {
"model": "animate-anyone-detect-gen2",
"input": {"image_url": args.image_url},
}
elif args.template_only:
if not args.video_url:
raise SystemExit("--video-url is required for --template-only")
payload = {
"model": "animate-anyone-template-gen2",
"input": {"video_url": args.video_url},
}
else:
if not args.image_url or not args.template_id:
raise SystemExit("--image-url and --template-id are required for generation")
payload = {
"model": "animate-anyone-gen2",
"input": {
"image_url": args.image_url,
"template_id": args.template_id,
},
"parameters": {
"use_ref_img_bg": args.use_ref_img_bg,
},
}
output = Path(args.output)
output.parent.mkdir(parents=True, exist_ok=True)
output.write_text(json.dumps(payload, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps({"ok": True, "request_path": str(output)}, ensure_ascii=False))
if __name__ == "__main__":
main()