aliyun-happyhorse-test
$
npx mdskill add cinience/alicloud-skills/aliyun-happyhorse-testRuns minimal smoke tests for four HappyHorse 1.0 video skills
- Validates smallest request payloads for t2v, i2v, r2v, and video-edit
- Uses Model Studio APIs for video generation and editing
- Executes predefined test commands with minimal parameters
- Saves full response JSON for each skill's output
SKILL.md
.github/skills/aliyun-happyhorse-testView on GitHub ↗
---
name: aliyun-happyhorse-test
description: Minimal smoke test matrix for the four Model Studio HappyHorse 1.0 video skills (t2v, i2v, r2v, video-edit).
version: 1.0.0
---
Category: test
# Minimal Viable Test (HappyHorse 1.0 Family)
## Goals
- Validate the smallest viable request payload for each of the four HappyHorse skills (`t2v`, `i2v`, `r2v`, `video-edit`).
- If execution fails, record exact error details (HTTP status, `code`, `message`, `request_id`) without guessing parameters.
## Prerequisites
- Authentication: `DASHSCOPE_API_KEY` exported, or `dashscope_api_key` configured in `~/.alibabacloud/credentials`.
- Region: Beijing endpoint by default (override with `DASHSCOPE_BASE_URL` if testing Singapore).
- Target skills under test:
- `skills/ai/video/aliyun-happyhorse-t2v`
- `skills/ai/video/aliyun-happyhorse-i2v`
- `skills/ai/video/aliyun-happyhorse-r2v`
- `skills/ai/video/aliyun-happyhorse-videoedit`
## Test Steps (Minimal)
For each model, send the smallest valid request and poll until terminal status. Save the full response JSON to `output/aliyun-happyhorse-test/<model>.json`.
### 1. t2v — `happyhorse-1.0-t2v`
```bash
.venv/bin/python skills/ai/video/aliyun-happyhorse-t2v/scripts/t2v_happyhorse.py \
--prompt "A red kite flying over a green hill at sunset." \
--resolution 720P \
--duration 3 \
--output output/aliyun-happyhorse-test/t2v
```
### 2. i2v — `happyhorse-1.0-i2v`
```bash
.venv/bin/python skills/ai/video/aliyun-happyhorse-i2v/scripts/i2v_happyhorse.py \
--first-frame https://cdn.translate.alibaba.com/r/wanx-demo-1.png \
--prompt "A cat running on grass." \
--resolution 720P \
--duration 3 \
--output output/aliyun-happyhorse-test/i2v
```
### 3. r2v — `happyhorse-1.0-r2v`
```bash
.venv/bin/python skills/ai/video/aliyun-happyhorse-r2v/scripts/r2v_happyhorse.py \
--reference-image https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260424/mvzfud/hh-v2v-girl.jpg \
--prompt "character1 turns slowly to face the camera." \
--resolution 720P \
--ratio 16:9 \
--duration 3 \
--output output/aliyun-happyhorse-test/r2v
```
### 4. video-edit — `happyhorse-1.0-video-edit`
```bash
.venv/bin/python skills/ai/video/aliyun-happyhorse-videoedit/scripts/edit_happyhorse.py \
--video https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260409/dozxak/Wan_Video_Edit_33_1.mp4 \
--prompt "Convert the scene to a watercolor painting style." \
--resolution 720P \
--audio-setting origin \
--output output/aliyun-happyhorse-test/videoedit
```
## Offline-only fallback (no API key)
If `DASHSCOPE_API_KEY` is unavailable, run only the static syntax checks and record results:
```bash
mkdir -p output/aliyun-happyhorse-test
for s in t2v i2v r2v videoedit; do
case "$s" in
videoedit) script="edit_happyhorse.py" ;;
*) script="${s}_happyhorse.py" ;;
esac
python -m py_compile "skills/ai/video/aliyun-happyhorse-$s/scripts/$script" \
&& echo "py_compile_ok $s" >> output/aliyun-happyhorse-test/offline.txt
done
```
## Pass criteria
- Each of the four executable examples exits 0 with `task_status: SUCCEEDED` and a downloadable `video_url`, OR — in offline-only mode — `output/aliyun-happyhorse-test/offline.txt` contains four `py_compile_ok` lines (one per model).
- For any FAILED task, `code` and `message` are recorded verbatim under `output/aliyun-happyhorse-test/<model>.json`.
## Result Template
- Date: YYYY-MM-DD
- Skills under test:
- skills/ai/video/aliyun-happyhorse-t2v
- skills/ai/video/aliyun-happyhorse-i2v
- skills/ai/video/aliyun-happyhorse-r2v
- skills/ai/video/aliyun-happyhorse-videoedit
- Mode: live / offline-only
- Conclusion per model: t2v=pass|fail, i2v=pass|fail, r2v=pass|fail, videoedit=pass|fail
- Notes:
More from cinience/alicloud-skills
- aliyun-adb-mysqlUse when managing Alibaba Cloud AnalyticDB for MySQL (ADB) via OpenAPI/SDK, including the user needs AnalyticDB resource lifecycle and configuration operations, status checks, or troubleshooting ADB API and cluster workflow issues.
- aliyun-adb-mysql-testSmoke test for aliyun-adb-mysql. Validate minimal authentication, API reachability, and one read-only query path.
- aliyun-aicontent-generateUse when managing Alibaba Cloud AIContent (AiContent) via OpenAPI/SDK, including the user needs AI content generation or content workflow operations in Alibaba Cloud, including listing assets, creating/updating generation configurations, checking task status, or troubleshooting failed content jobs.
- aliyun-aicontent-generate-testSmoke test for aliyun-aicontent-generate. Validate minimal authentication, API reachability, and one read-only query path.
- aliyun-aimiaobi-generateUse when managing Alibaba Cloud Quan Miao (AiMiaoBi) via OpenAPI/SDK, including the user asks for Alibaba Cloud MiaoBi content operations, including listing resources, creating/updating configurations, querying runtime status, and diagnosing API or workflow failures.
- aliyun-aimiaobi-generate-testSmoke test for aliyun-aimiaobi-generate. Validate minimal authentication, API reachability, and one read-only query path.
- aliyun-airec-manageUse when managing Alibaba Cloud AIRec (Airec) via OpenAPI/SDK, including the user needs recommendation-engine resource operations in Alibaba Cloud, including list/create/update flows, status inspection, and troubleshooting AIRec configuration or runtime issues.
- aliyun-airec-manage-testSmoke test for aliyun-airec-manage. Validate minimal authentication, API reachability, and one read-only query path.
- aliyun-alb-manageUse when managing and troubleshoot Alibaba Cloud ALB (Application Load Balancer), including the user asks to inspect, create, change, or debug ALB instances, listeners, server groups, rules, certificates, ACLs, security policies, or health checks in Alibaba Cloud.
- aliyun-alb-manage-testSmoke test for Alibaba Cloud ALB skill. Validates SDK auth, script compilation, list instances, and health check flows.