Skip to content
Cloud & Infrastructure
Skill

/aliyun-emo

Use when generating expressive portrait videos from a person image and speech audio with Alibaba Cloud Model Studio EMO (`emo-v1`). Use when creating non-Wan avatar clips with stronger expression style control from a detected portrait image.

BOOST
From plugin
alicloud-skills
39799 skills
Install
$ npx -y skills add cinience/alicloud-skills --skill aliyun-emo --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/aliyun-emo

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when generating expressive portrait videos from a person image and speech audio with Alibaba Cloud Model Studio EMO (`emo-v1`). Use when creating non-Wan avatar clips with stronger expression style control from a detected portrait image.

SKILL.md

aliyun-emo.SKILL.md
name: aliyun-emo
description: Use when generating expressive portrait videos from a person image and speech audio with Alibaba Cloud Model Studio EMO (`emo-v1`). Use when creating non-Wan avatar clips with stronger expression style control from a detected portrait image.
version: 1.0.0

Category: provider

Model Studio EMO

Validation

mkdir -p output/aliyun-emo
python -m py_compile skills/ai/video/aliyun-emo/scripts/prepare_emo_request.py && echo "py_compile_ok" > output/aliyun-emo/validate.txt

Pass criteria: command exits 0 and `output/aliyun-emo/validate.txt` is generated.

Output And Evidence

  • Save normalized request payloads, detection boxes, and task polling snapshots under `output/aliyun-emo/`.
  • Record the chosen `style_level` and the exact `face_bbox` / `ext_bbox`.

Use EMO when the input is a portrait image and speech audio, and you need a non-Wan expressive talking-head result.

Critical model names

Use these exact model strings:

  • `emo-v1-detect`
  • `emo-v1`

Selection guidance:

  • Run image detection first to obtain `face_bbox` and `ext_bbox`.
  • Use `emo-v1` only after detection succeeds.

Prerequisites

  • China mainland (Beijing) only.
  • Set `DASHSCOPE_API_KEY` in your environment, or add `dashscope_api_key` to `~/.alibabacloud/credentials`.
  • Input files must be public HTTP/HTTPS URLs.

Normalized interface (video.emo)

Detect Request

  • `model` (string, optional): default `emo-v1-detect`
  • `image_url` (string, required)

Generate Request

  • `model` (string, optional): default `emo-v1`
  • `image_url` (string, required)
  • `audio_url` (string, required)
  • `face_bbox` (array<int>, required)
  • `ext_bbox` (array<int>, required)
  • `style_level` (string, optional): `normal`, `calm`, or `active`

Response

  • `task_id` (string)
  • `task_status` (string)
  • `video_url` (string, when finished)

Quick start

python skills/ai/video/aliyun-emo/scripts/prepare_emo_request.py \
  --image-url "https://example.com/portrait.png" \
  --audio-url "https://example.com/speech.mp3" \
  --face-bbox 302,286,610,593 \
  --ext-bbox 71,9,840,778 \
  --style-level active

Operational guidance

  • Do not invent `face_bbox` or `ext_bbox`; use the detection API output.
  • `ext_bbox` ratio determines output format: `1:1` yields `512x512`, `3:4` yields `512x704`.
  • Keep the input portrait clear and front-facing for better expression quality.
  • EMO is portrait-focused; for full-scene human videos use other skills instead.

Output location

  • Default output: `output/aliyun-emo/request.json`
  • Override base dir with `OUTPUT_DIR`.

References

  • `references/sources.md`
Read more
Ships withalicloud-skills

alibaba cloud skills,qwen ,wan and all skills

Get the whole plugin

Other skills on alicloud-skills.