tuzi-video-gen について
Tuzi API 経由で動画を生成するコマンドラインスキルです。プロンプトや参照画像から動画を作るユーザーやエージェント向けで、複数のモデルや出力設定、連続セグメント生成に対応します。
主な機能
- 01プロンプトから動画を生成
- 02参照画像の利用
- 03モデル、長さ、サイズの指定
- 04複数セグメントの連続生成
- 05EXTEND.md による既定値設定
- 06一部の生成エラーを再試行
活用シーン
- 01テキストプロンプトから動画クリップを作成
- 02参照画像を使ってシーンをアニメーション化
- 03連続するセグメントで長尺動画を作成
- 04プロジェクト固有の生成設定を保存
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tuziapi/ tuzi-skills --skill tuzi-video-genインストール後、Claude Code で/tuzi-video-genを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/config/first-time-setup.mdpreferences-schema.mdscripts/main.tstypes.tsscripts/providers/tuzi.ts詳細
動画生成(AI SDK)
Tuzi API の動画生成バックエンドです。デフォルトモデル:veo3.1。
スクリプトディレクトリ
エージェントの実行:
SKILL_DIR= この SKILL.md ファイルがあるディレクトリ- スクリプトのパス =
${SKILL_DIR}/scripts/main.ts
ステップ 0:設定を読み込む ⛔ BLOCKING
重要:このステップは、動画を生成する前に必ず完了してください。スキップしたり、後回しにしたりしないでください。
0.1 API キーを確認する
echo "${TUZI_API_KEY:-not_set}"
grep -s TUZI_API_KEY .tuzi-skills/.env "$HOME/.tuzi-skills/.env"
| 結果 | 操作 |
|---|---|
| キーが見つかった | ステップ 0.2 に進む |
| キーが見つからない | ⛔ API キーを設定する(references/config/first-time-setup.md を参照)→ キーを保存する → 続行 |
0.2 EXTEND.md を確認する
test -f .tuzi-skills/tuzi-video-gen/EXTEND.md && echo "project"
test -f "$HOME/.tuzi-skills/tuzi-video-gen/EXTEND.md" && echo "user"
| 結果 | 操作 |
|---|---|
| 見つかった | 読み込み、解析して、設定を適用する |
| 見つからない | ⛔ 初回セットアップを実行する(references/config/first-time-setup.md)→ EXTEND.md を保存する → 続行 |
| パス | 場所 |
|---|---|
.tuzi-skills/tuzi-video-gen/EXTEND.md | プロジェクトディレクトリ |
$HOME/.tuzi-skills/tuzi-video-gen/EXTEND.md | ユーザーホーム |
EXTEND.md で設定可能な項目:デフォルトモデル | デフォルト秒数 | デフォルトサイズ
スキーマ:references/config/preferences-schema.md
使用方法
# Single video
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat walking in a garden" --video cat.mp4
# With model and duration
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "城市夜景延时" --video city.mp4 --model veo3 --seconds 8
# With reference image
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Animate this scene" --video out.mp4 --ref source.png
# From prompt file
npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles prompt.md --video out.mp4
# Long video (multi-segment with ffmpeg concat)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A journey through seasons" --video long.mp4 --segments 3
# Long video with per-segment prompts
npx -y bun ${SKILL_DIR}/scripts/main.ts --video long.mp4 --segments 3 --segment-prompts seg1.md seg2.md seg3.md
オプション
| オプション | 説明 |
|---|---|
--prompt <text>, -p | プロンプトのテキスト |
--promptfiles <files...> | ファイルからプロンプトを読み込む(連結) |
--video <path> | 出力動画のパス(必須) |
--model <id>, -m | モデル ID(デフォルト:veo3.1) |
--seconds <n>, -s | 秒単位の長さ |
--size <WxH> | 動画サイズ(例:1280x720、16x9) |
--ref <files...> | 参照画像 |
--ref-mode reference|frames|components | 参照画像モード |
--segments <n> | 長尺動画のセグメント数(最小 2) |
--segment-prompts <files...> | セグメントごとのプロンプトファイル |
--json | JSON 出力 |
モデル
| モデル | プロバイダー | 長さ | サイズ | 画像モード |
|---|---|---|---|---|
veo3 | Veo | 8s | 16:9, 9:16 | reference |
veo3.1(デフォルト) | Veo | 8s | 16:9, 9:16 | frames |
veo3.1-4k | Veo | 8s | 4K | frames |
sora-2 | Sora | 10/15s | 16:9, 9:16 | reference |
sora-2-pro | Sora | 10/15/25s | 16:9, 9:16, HD | reference |
kling-v1-6 | Kling | 5/10s | 16:9, 9:16, 1:1 | reference |
seedance-1.5-pro | Seedance | 5/10s | 1080p, 720p | frames |
長尺動画モード
--segments N(N >= 2)を指定した場合:
- N 個の動画セグメントを順番に生成します
- 各セグメントの後、ffmpeg で最終フレームを抽出します
- 最終フレームを次のセグメントの参照画像として使用します(連続性)
- すべてのセグメントを
ffmpeg -f concatで結合します - 一時ファイルを削除します
要件:ffmpeg がインストールされている必要があります。
セグメントごとのプロンプト:--segment-prompts を使うと、各セグメント用の個別のプロンプトファイルを指定できます。セグメント数よりファイル数が少ない場合、残りのセグメントにはメインの --prompt を使用します。
環境変数
| 変数 | 説明 |
|---|---|
TUZI_API_KEY | Tuzi API キー(https://api.tu-zi.com) |
TUZI_VIDEO_MODEL | デフォルトの動画モデル(デフォルト:veo3.1) |
TUZI_BASE_URL | Tuzi のカスタムエンドポイント(デフォルト:https://api.tu-zi.com) |
読み込みの優先順位:CLI 引数 > EXTEND.md > 環境変数 > <cwd>/.tuzi-skills/.env > ~/.tuzi-skills/.env
モデルの決定
優先順位(高い順):
- CLI:
--model <id> - EXTEND.md:
default_model - 環境変数:
TUZI_VIDEO_MODEL - 組み込みのデフォルト:
veo3.1
エージェントは各生成の前にモデル情報を表示する必要があります:
- 表示:
Using [model] - 切り替え方法を表示:
Switch model: --model <id> | EXTEND.md default_model | env TUZI_VIDEO_MODEL
エラー処理
- API キーがない → ⛔ ステップ 0.1 の API キー設定を必ず実行する
- 生成に失敗 → 1 回自動で再試行する
- ビジネス上の失敗(コンテンツが拒否された)→ 再試行せず、エラーを報告する
- ネットワークエラー → 指数バックオフ(1.5x、最大 60s)
- タイムアウト → 90 分後にエラーにする
- ffmpeg がない(長尺動画モード)→ インストール手順を含む明確なエラーを表示する
拡張機能のサポート
EXTEND.md を使用してカスタム設定を行えます。パスとサポートされているオプションについては、Step 0 をご覧ください。