Communitygithub.com

mshmsh03/video-xoshaka

Remotion を使った動画制作を計画、スクリプト作成、構築、納品まで一貫して行うスキル。AI ナレーター、ワードシンク対応キャプション、本人の映像・写真・スクリーンショット、ロイヤリティフリー音楽、フレーム単位の確認機能を備え、縦型・横型の両方に対応します。

video-xoshaka とは?

このスキルは、ユーザーが求めるあらゆる種類の動画(面白い話、真心のこもったトリビュート、商品プロモ、解説、チュートリアル、まとめ、お知らせなど)を、Remotion を使ってエンドツーエンドで制作するためのワークフローです。特徴は、ユーザー本人の実際の素材(映像、写真、アプリのスクリーンショット、ロゴなど)を活用し、ありきたりなストック映像にならないよう徹底している点です。ワークフローは、インタビューによるブリーフィング、素材収集、デザインファイル・脚本・ストーリーボードの作成、音声生成、並行シーン構築、音楽追加、フレーム単位の検証、承認プロセスを経て納品されます。Remotion Studio でのプレビューによる反復的な確認を推奨し、各工程でユーザーの承認を得るためのゲートが設けられています。プライバシーに配慮し、個人情報や機密情報を動画に含めない設計になっており、最終的な納品時には検証内容と未確認事項を正直に報告します。

対応~Claude Code~Codex CLI~Cursor
npx skills add mshmsh03/video-xoshaka

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

video-xoshaka は何をしますか?

エンドツーエンドの動画制作プロセス:インタビュー、ブリーフ、素材、デザインファイル、脚本、ストーリーボード、音声、構築、音楽、検証、納品。各工程には承認ゲートがあります。このスキルはもともと、xoshaka(クルド語で「楽しいやつ」)という、ミニドキュメンタリーのように語り、ミームページのように冗談を言うスタイルの動画のために作られました。そのスタイルは現在も選択肢の一つとして残っています。同じパイプラインは現在、真心のこもったトリビュート、商品プロモ、解説、チュートリアル、まとめ、お知らせも制作します。

どの動画も特別に見える理由は、実際の素材を使用しているからです。本人のクリップ、友人の写真、実際のウェブサイトやアプリ、本人のメモからの言葉、実際のロゴなどです。ありきたりなストック動画になることは失敗です。

読むべき資料

  • references/brief.md:インタビュー。質問ラウンド、自由記述質問、言語と右から左への記述に関する注意、要約フォーマット、brief.md の保存方法。新しい動画を始めるたびに最初に読んでください。
  • references/storyboard-and-gates.md:design.md と STORYBOARD.md のテンプレート、承認ゲート、並列シーンワーカー、鮮度チェック。脚本を書く前に読んでください。
  • references/styles.md:スタイル(面白い話、真心のこもったトリビュート、プロモ、解説、チュートリアル、まとめ、お知らせ、キャプションのみ)、各スタイルの形状、トーン、長さ、音楽の雰囲気、フォーマットとプラットフォームのセーフゾーン。ブリーフの直後に読んでください。
  • references/story-and-comedy.md:素材の見つけ方と非公開にするもの、story.json の書き方、視覚と単語のタイミング合わせ、コメディのプレイブック(面白いスタイル用)。
  • references/production.md:プロジェクトのセットアップ、コンポーネント、フォーマット、スクリーンショット、検証、既に発生した落とし穴。構築する前に読んでください。
  • references/music.md:HeyGen 音楽のセットアップ(Windows/WSL でのサインインを含む)、トラックの選択、ダッキングと無音。
  • references/toolbox.md:このワークフローで使用するすべてのツール、スキル、CLI と、それぞれを使うタイミング:Remotion スキル、media-use、HeyGen、Kokoro、ElevenLabs、ffmpeg、ヘッドレス Chrome、バンドルされたスクリプト。

ワークフロー

1. インタビューを実施し、ブリーフを保存する

相手の回答が何を構築するかを決定するので、他のことをする前に質問してください。references/brief.md に従ってください:

  1. ラウンド1、基本(AskUserQuestion、最大4問):スタイル、投稿先(フォーマットを決定)、長さ、音声。
  2. ラウンド2、見た目と雰囲気:トーン、画面に表示するもの(写真とクリップ、モックアップのスクリーンショット、太字テキストとグラフィック、地図や図)、色とブランド、音楽。
  3. ラウンド3、素材と安全性:実名を使うかどうか、名前入りのスクリーンショットを使うかどうか、キャプション、エンディング。
  4. チャットでの自由記述ラウンド:一言で言うポイント、含める実際の瞬間と事実、真心のこもった一言や正確なコールトゥアクション、避けるべきことや絶対に見せないこと、誰が誰か、参考にしたいもの、ファイルの場所。
  5. 言語:動画が英語だけでない場合、どの言語かを尋ね、音声とテキストレンダリングがそれをサポートしているか確認します(brief.md、「言語と右から左へのテキスト」)。
  6. 要約と確認:ブリーフを相手の言葉で短いリストとして言い直し、「変更はありますか?」と尋ね、プロジェクトルートに brief.md として保存します。

相手が既に言ったことはスキップし、各質問にデフォルトを推奨し、スタイルに合わせてオプションを調整し、必要なことだけを尋ねます。「とにかく作って」と言われた場合は、ラウンド1のみを尋ね、想定事項を要約にリストし、音声、名前や表示する人、非公開にするものは相手が決めるように任せます。public/photos/ を作成し、ファイル名を伝えます:me とストーリーに登場する人物ごとに1つ。ビデオクリップや GIF も使用できます。

brief.md が契約です。以降のすべてのステップはこれに従います。相手が考えを変えた場合は、最初に brief.md を更新し、次に作業を更新します。納品メッセージでは、結果がブリーフにどのように一致しているか、一致していない点を述べます。

相手がストーリー(「Xが買えと言ったので、友人のYとやった」)やメッセージ(「新しいメニューをローンチする」)をくれた場合、それが背骨です。それ以外はすべて相手の素材から来ます。

2. 素材を収集する

  • 相手のメモ(保管庫、日記、プロジェクトフォルダ、git 履歴):研究サブエージェントを送り、日付順のタイムライン、登場人物と転機、動画から除外する非公開事項のリストを作成します(story-and-comedy.md)。非公開のものを動画に入れないでください。
  • 相手のメディア:各クリップと写真を自分で確認します。クリップごとに数フレームをチェックして、ナンバープレート、バッジ、画面がないか確認し、クロップを決定します(focusY)。クリップに複数人が映っている場合は、誰が誰かを尋ねます。
  • 相手の仕事:ライブサイトのスクリーンショット(ヘッドレス Chrome、デスクトップとスマホ)、リポジトリ内の既存のアプリスクリーンショット。
  • ブランドアセット:実際のロゴ(再描画しないこと。media-use resolve --type logo で公式マークが見つかります)、色、フォント。
  • プロモやチュートリアルの事実:すべての数字、価格、機能、手順は、相手から得たものか、自分で確認したものに基づきます。主張をでっち上げないでください。

3. デザインファイル、脚本、ストーリーボード

最初に design.md を書きます(パレット、フォント、ロゴ、モーションとテキストのルール。ブリーフと相手の実際のブランドアセットから。テンプレートは storyboard-and-gates.md)。次に story.json を書き、story-and-comedy.md と styles.md で選んだスタイルの形状に従います。その後 STORYBOARD.md を書きます:シーンごとに1行、台詞、画面に表示するもの、音、各ビジュアルが当たる単語。最初の2〜3秒でフックを入れます。ゲート: 相手に台詞とストーリーボードの表を見せ、構築を始める前に承認を得ます。今は言葉を変えるのは安く、後で高くつきます。ジョークの背後にある本当のストーリーや、真心のこもった一言を相手の言葉で尋ね、自分で作り出さないようにします。投稿先をメモします:Reels、TikTok、Shorts ではキャプションを高めに配置する必要があります(styles.md、「セーフゾーン」)。

4. 音声

ナレーションなしの動画の場合はこのステップをスキップします(その場合、キャプションが言葉を伝えます)。それ以外の場合は、scripts/voice-samples.mjs でサンプルを生成し、フォルダを開き、相手に実際に聞いて選んでもらいます(bm_george はスピード1.1のコメディでうまくいきました;落ち着いた声はトリビュートやチュートリアルに適しています)。その後 scripts/make-voice.mjs を実行します。各シーンの長さと「ブレイク」アライメント行を出力します。単語のタイミングをプリントし、どの単語も1秒を超えないことを確認します(production.md、「落とし穴」)。他の音声ソースは toolbox.md にあります。

5. 早期にプレビューを開く

プロジェクトが起動したらすぐに Remotion Studio(npx remotion studio)を起動し、プレビューを開いて、構築中に相手が見たり指示を出したりできるようにします。ファイルが欲しいと言われた場合や投稿用の動画を納品するときに MP4 をレンダリングします。反復中の間は、プレビューが成果物です。

6. 構築

テンプレートとスクリプトをスキャフォールドしてコピーします(production.md)。各シーンについて、通常は BeatScene を使用してコンポーネントを書き、assets/template/src/story/scenes/(および assets/examples/scenes/ フォルダがある場合はそこからも)を適応させます。すべてのビジュアルを wordAt(...) で単語にタイミングを合わせます。StoryVideo.tsx でタイムラインを維持します:フェードトランジション、チャプター変更時のスライドとウーッシュ音。選択したフォーマットからコンポジションサイズを設定します。STORYBOARD.md と design.md から構築し、記憶からは構築しません。5つ以上の独立したシーンがある場合は、シーンごとに1つのサブエージェントを使って並行して構築し(storyboard-and-gates.md)、その後自分で組み立てて継ぎ目を確認します。Remotion 自体には Remotion スキルを使用します(toolbox.md)。相手がチャット外でコードを編集した場合は、上書きせず、意図的なものと想定するか尋ねます。

7. 音楽とサウンド

実際の音楽を使用します(music.md)。スタイルが求める雰囲気に合わせます(styles.md)。必要に応じて media-use と HeyGen CLI をインストールし、相手にサインインしてもらい、いくつかの雰囲気を検索し、メインのトラックと2つの代替案をダウンロードし、測定し、MUSIC_GAIN を設定し、トラックの自然なエンディングを考慮して計画します。効果音はスタイルが求める場合のみ使用します。

8. 検証し、レンダリングの承認を得る

  • スチルを確認します:すべてのキービジュアルと各シーンの終わり(scripts/stills.mjs)。
  • 事実を確認します:プロモやチュートリアルについて、すべての数字、名前、手順を元の情報源と照らし合わせます。
  • プレビューゲート: Studio プレビューまたはキースチルを見せ、何を変更するか尋ねます。相手がプレビューを承認し、明示的にファイルを要求した場合のみ、最終 MP4 をレンダリングします。
  • レンダリング:新しいバージョン番号付きのファイル名で行います。
  • 音声を測定します(scripts/check-audio.mjs)。
  • 最終 MP4 のフレームを確認し、時間に敏感なものがないかチェックします。
  • 動画を開いて相手に見せます。

9. 納品

以下を報告します:

  • ファイルのパス、長さ、サイズ
  • 更新の場合、変更点
  • 確認したこと、および音声を聞いていないこと
  • 未解決の質問:誰が誰か、音楽の雰囲気、長さを短くするかどうか

原則

  • 一般的なものより実際のものを。 相手のクリップ、友達、実際の画面とロゴを使用します。
  • トーンは目的に合うものに。 面白いのは一つの選択肢です。別れ、製品ローンチ、チュートリアルにはそれぞれ独自のトーンが必要です。ジョークがふさわしくない場所に無理に入れないでください。
  • 早い段階でフックを入れ、シーンごとに一つのアイデアを。 ポイントは最初の2〜3秒でわかるようにし、すべてのシーンが存在する価値を持たせます。
  • ビジュアルは言葉に合わせる。 言葉に合わせて到着するビジュアルは、どんな追加エフェクトよりも効果的です。「より良く」「より面白く」と求められた場合は、ボリュームを増やす前にタイミングと言葉を研ぎ澄まします。
  • 一つのキービート。 真心のこもった一言、コールトゥアクション、または要点を、平易に述べ、それが落ち着く余地を残します。
  • プライバシーは機能です。 相手のメモには他人が見るべきでないものが含まれています。相手はあなたがそれを尋ねられずに除外することを信頼しています。
  • 人について推測しない。 ナレーターの声は実際に聞いて選ばせ、名前から判断しないでください。グループクリップで誰が誰かを確認します。素材が裏付けない引用、感情、主張をでっち上げないでください。
  • 正直な納品。 確認したことと確認できなかったこと(音声は耳で聞いて判断)を述べます。長さが依頼よりも長くなった場合は、その旨を伝え、最も簡単なカット箇所を提案します。

関連スキル