video-shortform について
video-shortformは、 briefに沿って短いワンショット動画を計画・生成するスキルです。選択したモデルに合わせてプロンプトを組み立て、統一されたメディアコマンドで生成を依頼します。
主な機能
- 01ワンショットの計画
- 02モデルに応じたプロンプト作成
- 03画面比率と長さの指定
- 04統一メディアコマンドで生成依頼
- 05レンダリング結果のファイル名を引き継ぎ
活用シーン
- 01短いワンショット動画の制作
- 02HTMLモーションデザインカードのレンダリング
- 03モデルに合わせた動画バリエーションの生成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mphinance/ alpha-skills --skill video-shortformインストール後、Claude Code で/video-shortformを入力して読み込まれたか確認します。
同梱ファイルexample.htmlREADME.md
詳細
動画ショートフォームスキル
ショートフォーム(≤ 10秒)は、現在のテキスト-to-ビデオモデルの最適な領域です — ひとつのショットにひとつのアイデアを盛り込むのは得意ですが、マルチカットの ナラティブは苦手です。1回の呼び出しにつき1ショットを計画してください。
特殊ケース: hyperframes-html はフォトリアルなテキスト-to-ビデオ
モデルではありません。これはローカルの HTML-to-MP4 レンダラーです。このモデルでは、シネマトグラフィーや「実世界の」カメラ物理をロールプレイしないでください。ブリーフをモーションデザインカード / タイトルフレーム / 製品インタースティシャルとして扱い、確認の質問は最大1つまでにして、すぐにディスパッチしてください。
リソースマップ
video-shortform/
├── SKILL.md
└── example.html
ワークフロー
ステップ 0 — プロジェクトメタデータを読む
videoModel、videoLength(秒)、videoAspect。これらは
ハードロックです — 選択したモデルがサポートする範囲にプロンプトをクランプしてください
(Seedance 2 は最大10秒、Kling 4 は最大10秒 + イメージ-to-ビデオをサポート、
Veo 3 は音声付き8秒をサポート)。
ステップ 1 — ショットを計画する
モデルを呼び出す前にショットリストを書いてください:
| スロット | 内容 |
|---|---|
| 被写体 | フレーム内に何があるか? |
| カメラ | 固定 / パン / プッシュイン / オービット? |
| ライティング | キーの方向 + 色温度 |
| モーション | 何が、どのくらいのペースで動くか? 被写体の動きとカメラの動き。 |
| サウンド | アンビエントベッド?(モデルが音声をサポートする場合のみ) |
通常は、ディスパッチする前にこれを一文のプランとしてユーザーに提示してください — ユーザーは低コストで方向修正できます。
hyperframes-html の場合、ユーザーがディスカバリーフォームに回答したら、ディスパッチ前の追加ナレーションは省略してください。プランを実際の生成プロンプトに畳み込み、すぐにディスパッチします。
ステップ 2 — プロンプトを構成する
上流モデルが好む形式を使用してください(Seedance: モーション + カメラ +
ムード、Kling: 被写体 + カメラ + スタイル、Veo: 被写体 + シネマトグラフィー +
サウンド)。プロジェクトの videoAspect と videoLength は API パラメータに直接バインドしてください。決して散文の中に入れないでください。
hyperframes-html の場合は、カメラリアリズムのプロンプトではなく、簡潔なモーションデザインブリーフを書いてください。被写体、レイアウト、パレット、モーションの性格、そして全体的なトーンに焦点を当てます。環境チェック、欠落しているサイドファイル、または「これからディスパッチします」というステータス更新のナレーションにターンを費やさないでください。
ステップ 3 — メディアコントラクト経由でディスパッチする
統一ディスパッチャーを使用してください — プロバイダー API を手動で呼び出さないでください:
node "$OD_BIN" media generate \
--project "$OD_PROJECT_ID" \
--surface video \
--model "<videoModel from metadata>" \
--aspect "<videoAspect from metadata>" \
--length <videoLength seconds> \
--output "<short-slug>-<seconds>s.mp4" \
--prompt "<assembled shot prompt from Step 2>"
このコマンドは1行の JSON を出力します: {"file": {"name": "...", ...}}。
バイト列はプロジェクトに保存され、FileViewer が自動的に再生します。
ステップ 4 — 引き渡す
次の内容で返信してください: ショットの要約、ディスパッチャーが返したファイル名、そしてユーザーがバリエーションを希望する場合に何を試すべきかの一文。
hyperframes-html の場合は、返信を特に短く保ってください: 何がレンダリングされたか、ファイル名、そして具体的なバリエーションのアイデアをひとつ。
ハードルール
- 1ターンにつき1ショット。マルチショットのタイムラインは hyperframes / インタラクティブビデオスキルに属するものであり、ここではありません。
videoAspectを正確に一致させてください — 再レンダリングは遅いです。- ファイルを保存せずに動画を出荷しないでください — ユーザーはファイルビューアで再生できるものを期待しています。
- 基盤モデルが失敗した場合(NSFW フィルター、コンテンツポリシー、 タイムアウト)、エラーをそのまま報告してください。黙って再試行しないでください。
od media generateをすでに呼び出していない限り、レンダリングが「送信された」、「開始された」、または「実行中である」と主張しないでください。