mcpField
W
website-to-video

website-to-video

github.com/calesthioクリエイティブ・メディア73.0k1.0k 回インストール1 日前に更新
リポジトリ

website-to-video について

HyperFrames を使って一般的なウェブサイトを動画にする、7段階のワークフローを案内するスキルです。サイトの収集、ブランド分析、構成設計、素材制作、コンポジション構築、検証までを確認段階とともに扱います。

主な機能

  1. 017段階のウェブサイト動画化ワークフロー
  2. 02サイト収集とブランド分析
  3. 03ストーリーボードとナレーション設計
  4. 04音声・タイミング・字幕の手順
  5. 05コンポジション構築と検証

活用シーン

  1. 01ウェブサイトからSNS向けクリップを制作
  2. 02サイトツアーや紹介動画の制作
  3. 03一般サイトをもとにした製品デモの作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/calesthio/openmontage --skill website-to-video

インストール後、Claude Code で/website-to-videoを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/sfx/
CREDITS.md
manifest.json
references/
beat-builder-guide.md
capabilities.md
step-0-capture.md
step-1-design.md
step-2-brief.md
step-3-storyboard.md
step-4-vo.md
step-5-build.md
step-6-validate.md
scripts/
w2h-verify.mjs

詳細

media-use:音声や画像を取得する前に /media-use を呼び出し、HeyGen カタログから BGM/効果音/画像を解決します。既存のアセットを登録するには、まず --adopt を実行します。/media-use スキルを参照してください。

Web サイトから HyperFrames へ

Web サイトをキャプチャして、プロフェッショナルな動画を制作します。

Step 0 の前に、適切なルートを確認してください。 このスキルは、一般的なサイトを素材にして、またはそのサイトから動画を制作します。ユーザーが実際に製品のマーケティング/ローンチ/プロモーションを目的としている場合(この URL を使う場合や、「自分たちのサイトのプロモーション」と言っている場合も含む)は、/product-launch-video を使います。サイトを使わないトピック解説には /faceless-explainer、GitHub の PR には /pr-to-video を使います。既存の動画ファイルの再編集/色調変更/順序変更は対象外です。「動画を作って」という曖昧な依頼でここに案内された場合や、ローンチ動画か一般的なサイト動画か判断できない場合は、まず /hyperframes を読んでください(ルーティング表全体と「HyperFrames にできないこと」を参照)。

ユーザーからは、次のような依頼があります。

  • 「この Web サイトを Instagram 用の 15 秒のソーシャル動画にしてください」
  • 「https://... から 30 秒のサイトツアー/ショーケースを作ってください」
  • 「ホームページをキャプチャして、そのサイト独自のビジュアルで動画を作ってください」

ワークフローは 7 つのステップで構成されています。それぞれのステップで、次のステップに進むための成果物を作成します。デフォルトでは共同作業として進め、💬 マークのあるゲートでは停止してユーザーに確認します。ユーザーが自律モード(「お任せします」「サプライズにして」など)を希望した場合、💬 が付いたユーザーの好みに関するゲートは省略します。その影響の伝播については step-2-brief.md を参照してください。

自律モードは「すべてのゲートを省略する」ことではありません。 自動モードで対応するのは、ユーザーの好みに関する質問(TTS プロバイダー、音声、色の強調、ビート数、音楽の有無、字幕の有無など、エージェントがユーザーに代わって決める項目)です。品質確認のゲートは対象外です。以下は自動モードでも省略できません。

  • アセット監査(Step 3)— コンタクトシートを確認し、各アセットを USE/SKIP とする理由を説明する
  • ビートごとの HTML 読み取り(Step 5)— 各ビートについて、構造化されたエビデンスブロックを作成する
  • DoD チェックリスト(Step 6)— アニメーションマップ、各警告に対する WCAG 検証、音声/モーションの再生確認を含む
  • 正直な開示セクション(Step 6)— 最終的な要約に「検証していない内容」を必ず記載する

「自動モードでは行動を優先するので、X を省略しよう」と考えた場合、X が確認ゲートであって、好みに関する質問ではないなら、その判断は誤りです。行動を優先するのは何を作るかを決めるときであり、検証するかどうかを決めるときではありません。


Step 0:キャプチャしてブランドを把握する

読むファイル: references/step-0-capture.md

サイトをキャプチャし、抽出したデータを読んで、ブランドと製品(何をするものか、誰を対象としているか、どんな語り口か、どんな雰囲気か)を把握します。キャプチャしたアセットは後で使うブランドツールキットであり、動画の構成要素ではありません。

概要を確認する前にサインイン状態を表示する — npx hyperframes auth status を実行し、その出力を言い換えず、書き換えずにそのままユーザーに伝えます。 音声/BGM に HeyGen とローカルエンジンのどちらを使うか、また未サインインの場合はサインイン方法が表示されます。未サインインの場合は停止し、概要やその他の質問をする前に、サインインするか、ローカルエンジンで続行するために「go」/「offline」と入力するか、ユーザーが選ぶのを待ちます。 さらりとした注意書きではなく、実際の意思決定の場として扱ってください。この選択を概要の質問に含めてはいけません。また、リポジトリごとの .env にキーを書き込んではいけません。(自律モードでは、状態を記録してオフラインで続行します。)標準的なガイダンスについては、../hyperframes-media → Preflight を参照してください。

ゲート: サイトの概要が出力されていること — アセット/色/フォントの一覧より先に、戦略を優先した説明(製品の機能、対象ユーザー、ブランドの語り口)があること。サインイン状態が表示されていること(サインイン済み、またはオフラインで続行)。


ステップ 1:ブランドアイデンティティ

参照: references/step-1-design.md

ビジュアルアイデンティティをまとめたブランドのチートシートとして、DESIGN.md を作成します。色、タイポグラフィ、コンポーネントのスタイル、レイアウトの原則を記載します。正確な計算値には design-styles.json を使用してください。

**スピード重視の場合:**テンポの速い動画(ビートごとにビルボードを表示する形式)では、DESIGN.md は色、フォント、すべきこと・避けるべきことをまとめた50行の要約でもかまいません。300行のドキュメントにする必要はありません。ステップ5のサブエージェント向けプロンプトにはブランドの値が直接貼り付けられるため、DESIGN.md の詳しさが重要なのは複雑な構成の場合のみです。

完了条件: DESIGN.md が存在し(長さは問いません)、最低限、カラーパレット、フォントの選択、すべきこと・避けるべきことが記載されています。


ステップ 2:戦略とメッセージ

参照: references/step-2-brief.md、references/capabilities.md(目次に目を通し、詳細なセクションは必要に応じて確認してください)

ビジュアルや素材について話す前に、動画で伝えるべきことをユーザーとすり合わせます。ユーザーのプロンプトを読み解いてください。おそらく動画の種類やスタイルはすでに伝えられています。不足していることだけを尋ねてください。この動画で伝えるべきこと、物語の展開、視聴者です。

**完了条件:**動画の種類、長さ、形式、そして何より重要なメッセージと物語の展開が確定しています。これらが確定しないと、ステップ3でコンセプトを起点にしたストーリーボードを作成できません。


ステップ 3:ストーリーボードとスクリプト 💬

参照: references/step-3-storyboard.md

コンセプトを起点にストーリーボードを作成します。メッセージ → 物語の展開 → 展開に沿ったビート → 各ビートで使う手法 → 最後にブランド要素を追加、の順に進めます。次に、それに合わせてナレーションのスクリプトを作成します。ビートごとの要約とともに、両方をユーザーに提示します。承認されるまで修正を重ねてください。

完了条件: STORYBOARD.md と SCRIPT.md が存在し、ユーザーがプランを承認しています。


ステップ 4:ナレーション、タイミング、キャプション 💬

参照: references/step-4-vo.md

ステップ2でナレーションなしと決まった場合は、バックグラウンドミュージックについて尋ねてからステップ5に進みます。それ以外の場合は、使用するTTSプロバイダー(HeyGen TTS、ElevenLabs、Kokoro)をユーザーに尋ね、音声を生成して文字起こしし、タイムスタンプを各ビートに対応づけます。その後、キャプションについて尋ねます。

完了条件:(a)ナレーションなしの指定があり、ストーリーボードに手動で設定したビートのタイミングが記載されている、または(b)narration.wav と transcript.json が存在し、実際の長さに合わせてビートのタイミングが更新されています。


ステップ 5:コンポジションの構築

参照: hyperframes スキル(読み込んでください。すべてのルールが重要です) 参照: references/step-5-build.md

ストーリーボード(ステップ3)で決定した構成とテンポに従い、index.html とコンポジションを構築します。サブエージェントは、各ビートについて hyperframes lint と hyperframes snapshot を実行してから報告します。

**完了条件:**メインエージェントがすべての compositions/beat-N.html を最初から最後まで読み、DESIGN.md と STORYBOARD.md に照らして確認しています。ビートごとのチェックリストは step-5-build.md にあります。


ステップ 6:検証と納品

参照: references/step-6-validate.md

Lintと検証を行い、動画の長さに応じた数のスナップショットを撮影します(計算式:max(beats × 3, ceil(duration_seconds / 2)))。それぞれを確認し、問題があれば納品前に修正してください。localhost の Studio プロジェクト URL を納品します。ユーザーから明示的な依頼がない限り、MP4 にはレンダリングしないでください。Studio の URL を提示するのは引き渡し時のみです。最終的な安定したプレビューである一方、構築中のスナップショットはヘッドレスで取得されるため、構築の途中でプレビューを表示しないでください。

**誇りを持って納品できるものを作りましょう。**引き渡す前に、自分の名前を添えてSNSに投稿したいと思えるか、自問してください。そう思えない場合は、問題を修正してください。

完了条件: npx hyperframes lint と npx hyperframes validate がエラーなしで成功し、最終回答に有効な Studio プロジェクト URL が含まれています。


クイックリファレンス

動画の種類

動画の種類ごとの一般的な制約です。定型としてではなく、出発点としてお使いください。ビート数は目標の範囲ではなく、コンテンツとナレーションに基づいて決めてください。

種類一般的な長さ長さを左右する要素ナレーション
ソーシャル広告(IG/TikTok)10–15sプラットフォームの制限任意
製品デモ30–60sスクリプトの長さ全編ナレーション
機能の告知15–30s機能の複雑さ全編ナレーション
ブランドリール20–45s音楽トラック任意、音楽を重視
ローンチティーザー10–20sフックの勢い最小限

ビート数をこの表に含めていないのは意図的です。「ソーシャル広告=3~4ビート」のように決めるのではなく、ストーリーボードに基づいて決めてください。複雑な製品のソーシャル広告では、適切なタイミングのビートが5つ必要になる場合があります。強いビジュアルの主題が1つあるブランドリールなら、3つで十分な場合もあります。

フォーマット
  • 横向き:1920x1080(デフォルト)
  • 縦向き:1080x1920(Instagram Stories、TikTok)
  • 正方形:1080x1080(Instagramフィード)
参考ファイル
ファイル参照するタイミング
step-0-capture.mdステップ 0 — 情報を収集し、ブランドと製品を理解して、戦略を優先したサイトの概要を作成します
step-1-design.mdステップ 1 — DESIGN.md のブランド用チートシートを作成します(5 セクション、250〜350 行。看板スタイルのソーシャル広告向けに、50 行の簡易版もあります)
step-2-brief.mdステップ 2 — ユーザーとメッセージ、物語の展開、対象読者についてすり合わせます
capabilities.mdステップ 2 と 5 — HyperFrames でできることの全項目(24 セクション)。ブリーフィングでは目次を確認し、制作中に必要なセクションを詳しく確認します
step-3-storyboard.mdステップ 3 — ユーザーのレビューを挟みながら、ストーリーボードとスクリプトをまとめて作成します
step-4-vo.mdステップ 4 — TTS プロバイダーの選択、音声の生成、タイミングの調整
step-5-build.mdステップ 5 — index.html とコンポジションを作成します
step-6-validate.mdステップ 6 — 動画の長さに応じてリント、検証、スナップショットを実施し、プレビューします
techniques.mdステップ 3 と 5 — 基本的なアニメーション技法 13 種とコードパターン(そのままコピーせず、応用してください)
html-in-canvas-patterns.mdステップ 5 — HTML-in-Canvas 効果の完全なコードパターン(hyperframes スキルに含まれています)

コメント