画面録画動画からUIテストシナリオYAMLを自動生成するスキル。
画面録画動画からUIテストシナリオYAMLを自動生成するスキル。
[REVIEW] マーカーを付与# 基本使用
/uiai-video-to-scenario video=recordings/login.mp4
# プラットフォーム指定
/uiai-video-to-scenario video=recordings/ios-flow.mov platform=ios
# 出力先指定
/uiai-video-to-scenario video=recordings/test.mp4 output=scenarios/my-test.yaml
| パラメータ | 必須 | デフォルト | 説明 |
|---|---|---|---|
video |
Yes | - | 入力動画ファイルパス |
platform |
No | android |
対象プラットフォーム(android, ios, web) |
output |
No | 自動生成 | 出力YAMLファイルパス |
| 拡張子 | 対応 |
|---|---|
.mp4 |
✅ |
.mov |
✅ |
.webm |
✅ |
.avi |
✅ |
.mkv |
✅ |
[動画入力]
↓
[1. フレーム抽出] ffmpeg scene detection (閾値0.3)
↓ frames/*.png (10-20枚程度)
[2. 画像解析] Claude Vision API (8フレーム/バッチ)
↓ analysis.json
[3. シナリオ生成] YAML出力 + [REVIEW]マーカー
↓
[出力: scenario.yaml]
name: "Generated - login.mp4"
app:
android: "TODO: Set package name"
ios: "TODO: Set bundle identifier"
steps:
- id: "起動"
actions:
- do: "アプリを起動"
- then: "ログイン画面が表示されていること"
- id: "ログイン"
actions:
- do: "メールアドレス欄に「test@example.com」を入力"
- do: "パスワード欄に入力" # [REVIEW] password obscured
- do: "「ログイン」ボタンをタップ"
- then: "ホーム画面が表示されていること"
.video-to-scenario/
└── <video-name>/
├── frames/ # 抽出フレーム
│ ├── frame_0001.png
│ ├── frame_0002.png
│ └── ...
├── analysis.json # 解析結果
└── scenario.yaml # 生成シナリオ
以下の場合に [REVIEW] マーカーが付与される:
| 状況 | 例 |
|---|---|
| パスワード入力 | # [REVIEW] password obscured |
| 不明確な操作 | # [REVIEW] unclear action |
| 推測要素 | # [REVIEW] element name guessed |
| 画面遷移不明 | # [REVIEW] transition unclear |
2分を超える動画は自動的に分割処理される:
# ffmpegのインストール
brew install ffmpeg
video-frame-extractor - ffmpegによるフレーム抽出video-frame-analyzer - Claude Visionによる画像解析video-scenario-generator - YAMLシナリオ生成uiai-scenario-check - 生成されたシナリオの検証・修正uiai-android-test - Androidでのシナリオ実行uiai-ios-test - iOSでのシナリオ実行uiai-web-test - Webでのシナリオ実行