プリアンブル(最初に実行)
_TEL_TIER=$(cat ~/.superstack/config.json 2>/dev/null | grep -o '"telemetryTier": *"[^"]*"' | head -1 | sed 's/.*"telemetryTier": *"//;s/"$//' || echo "anonymous")
_TEL_TIER="${_TEL_TIER:-anonymous}"
_TEL_PROMPTED=$([ -f ~/.superstack/.telemetry-prompted ] && echo "yes" || echo "no")
_TEL_START=$(date +%s)
_SESSION_ID="$$-$(date +%s)"
mkdir -p ~/.superstack
echo "TELEMETRY: $_TEL_TIER"
echo "TEL_PROMPTED: $_TEL_PROMPTED"
if [ "$_TEL_TIER" != "off" ]; then
_TEL_EVENT='{"skill":"marketing-video","phase":"launch","event":"started","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"}'
echo "$_TEL_EVENT" >> ~/.superstack/telemetry.jsonl 2>/dev/null || true
_CONVEX_URL=$(cat ~/.superstack/config.json 2>/dev/null | grep -o '"convexUrl":"[^"]*"' | head -1 | cut -d'"' -f4 || echo "")
[ -n "$_CONVEX_URL" ] && curl -s -X POST "$_CONVEX_URL/api/mutation" -H "Content-Type: application/json" -d '{"path":"telemetry:track","args":{"skill":"marketing-video","phase":"launch","status":"success","version":"0.2.0","platform":"'$(uname -s)-$(uname -m)'","timestamp":'$(date +%s)000'}}' >/dev/null 2>&1 &
true
fi
TEL_PROMPTED が no の場合:スキルワークフローを開始する前に、テレメトリについてユーザーに質問してください。
AskUserQuestion を使用します:
superstack の改善にご協力ください!どのスキルがどのくらいの時間使われているかを追跡します。 コード、ファイルパス、個人情報は一切収集しません。
~/.superstack/config.jsonでいつでも変更できます。
選択肢:
- A) はい、superstack の改善に協力します(匿名)
- B) いいえ
A の場合:以下の bash を実行します
echo '{"telemetryTier":"anonymous"}' > ~/.superstack/config.json
_TEL_TIER="anonymous"
touch ~/.superstack/.telemetry-prompted
B の場合:以下の bash を実行します
echo '{"telemetryTier":"off"}' > ~/.superstack/config.json
_TEL_TIER="off"
touch ~/.superstack/.telemetry-prompted
これは一度だけ行われます。TEL_PROMPTED が yes の場合は、これを完全にスキップしてスキルワークフローに進みます。
スキルが違いますか? 利用可能なすべてのスキルについては SKILL_ROUTER.md を参照してください。
マーケティング動画 — Remotion + Renoise
Solana プロジェクトのマーケティング動画を、2 つの相補的なアプローチで作成します:
- Remotion(コード駆動型):プログラムによる React 動画 — 完全な制御、再現可能、バージョン管理。公式の Remotion skills(38 のルールモジュール)を使用します。
- Renoise(AI 生成):AI 動画生成 — 高速、クリエイティブ、コード不要
目標:AI 生成に見えないプロフェッショナルな品質。 Remotion の作業を開始する前に、references/professional-quality-guide.md をお読みください。
使用タイミング
/marketing-video— 動画制作の全ワークフロー/deck-review— ピッチデッキを動画形式に変換- 「Solana プロジェクトのマーケティング動画を作成して」
- 「製品デモ動画を作って」
- 「ピッチデッキを動画にして」
- 「ソーシャルメディアのプロモを作成して」
- 「dApp の TikTok を作って」
絶対条件
- インタビューを決してスキップしない。 製品、視聴者、ビジュアルの方向性を推測しないでください。質問してください。
- アニメーションの技術的な詳細について決して質問しない。 ユーザーは spring 設定や TransitionSeries について気にしません。製品、ストーリー、センスについて質問してください。
- 意見をはっきり述べる。 ユーザーの動画のアイデアが弱い場合(長すぎる、間違った視聴者、フックがないなど)、率直に指摘し、方向性を変えてください。
- ビジュアルセンスを第一に、コードはその後。 Remotion のコードを一行も書く前に、動画がどのような「感触」であるべきかを確立してください。
- プロアクティブに要素を収集する。 スクリーンショット、ロゴ、ブランドカラーを依頼してください。それらがない場合は、SVG アイコン(Lucide、Heroicons)を調達し、カラーパレットを生成し、イラストスタイルを提案してください。
- ワンストップショップ。 このスキルはすべてを処理します:インタビュー → コンセプト → ストーリーボード → 要素収集 → スキャフォールド → コーディング → レンダリング → プラットフォーム別カット。ユーザーは他のツールを必要としません。
ワークフロー
ステップ 1:コンテキスト収集(質問の前に)
既存のコンテキストを静かに確認します。これらのファイルが存在する場合は読み取ります — ユーザーに同じことを繰り返させないでください:
.superstack/idea-context.md → 製品コンセプト、ターゲット、バリュープロポジション
.superstack/build-context.md → 技術スタック、機能、デプロイ状況
また、作業ディレクトリに Remotion プロジェクトが既に存在するか確認します(remotion.config.ts または package.json に remotion の依存関係があるか)。
製品アセットを自動検出。 インタビューの前に、プロジェクトから使用可能なビジュアル素材をスキャンします:
# スクリーンショットと画像
find . -maxdepth 3 -type f \( -name "*.png" -o -name "*.jpg" -o -name "*.jpeg" -o -name "*.webp" \) ! -path "*/node_modules/*" ! -path "*/.git/*" 2>/dev/null | head -20
# SVG ファイル(ロゴ、アイコン、イラスト)
find . -maxdepth 3 -type f -name "*.svg" ! -path "*/node_modules/*" ! -path "*/.git/*" 2>/dev/null | head -20
# 動画/画面録画
find . -maxdepth 3 -type f \( -name "*.mp4" -o -name "*.webm" -o -name "*.mov" \) ! -path "*/node_modules/*" ! -path "*/.git/*" 2>/dev/null | head -10
# CSS/Tailwind 設定からのブランドカラー
grep -r "primary\|accent\|brand" tailwind.config.* globals.css theme.* 2>/dev/null | head -10
# プロジェクト名/説明のための Package.json
cat package.json 2>/dev/null | grep -E '"name"|"description"' | head -5
アセットを見つけた場合は、インタビュー中に言及します:「public/ にスクリーンショットと SVG ロゴがあるのを見つけました — それらを直接使用できます。」
ステップ 2:インタビュー(深く、製品に焦点を当てる)
これは会話であり、アンケートではありません。基点となる質問から始めてください。回答に基づいて掘り下げます。製品が何をするのか、誰が気にするのか、なぜ重要なのか、動画が視聴者にどのような気持ちを与えるべきかを明確に説明できるまでは、制作に移らないでください。
ラウンド 1 — 製品(必須、すべて質問):
-
「開発者ではなく、潜在的なユーザーに話すように、あなたの製品を説明してください。」 理由:技術的な専門用語から離れさせます。動画はユーザーの言語で語る必要があります。
-
「この動画を具体的に誰が見るのですか?「みんな」ではなく — 一人の人物を挙げてください。」 理由:DeFi のデジェン向けの動画と、ハッカソンの審査員向けの動画はまったく異なります。 曖昧な場合のフォローアップ:「その人は技術者ですか?すでに暗号通貨を使っていますか?動画を見ているとき、何をしていますか?Twitter をスクロールしている、ランディングページを閲覧している、ピッチミーティングに座っている?」
-
「視聴者に動画を見た後に何をしてほしいですか、唯一のアクションは何ですか?」 理由:すべてのフレームは、この一つのアクションに向けて存在します。アクションがない = 意味がありません。 「私たちについて知ってほしい」と言われたら、それはアクションではありません。「サインアップ」、「デモを試す」、「サイトにアクセスする」、「私たちに投票する」 — これらがアクションです。
ラウンド 2 — ストーリー(必須、すべて質問):
-
「あなたの製品はどのような問題を解決しますか?その苦しみを説明してください — 私に感じさせてください。」 理由:最高の動画は、視聴者がすでに抱えている問題から始まります。問題がなければフックもありません。
-
「あなたの製品における『aha モーメント』は何ですか?人々が『おっと、これ本当にクールだ』と思う瞬間は?」 理由:これが動画の中心的な要素になります。もし名前を挙げられない場合は、探ってみてください:「ユーザーが最も褒めてくれるものは何ですか?反応を得られるデモの瞬間は?」
-
「誰かをスクロールを止めさせるような数字はありますか?」 理由:指標は暗号コンテンツにおいて最も強力なフックです。例:「$2M TVL」「400ms 決済」「50K トランザクション」「Ethereum より 10 倍安い」。 指標がない場合:「あなたの製品が機能するという最も具体的な証拠は何ですか?ユーザー数?トランザクション量?速度比較?」
ラウンド 3 — センス(必須、すべて質問):
-
「あなたが好きな動画を見せてください — どんなブランド、どんな業界でも構いません。あなたが望むエネルギーを捉えているもの。」 理由:これは、多肢選択式の質問よりも、望ましい品質とトーンについて多くを明らかにします。もし名前を挙げられない場合は、参考となるアンカーを提供します:
- 「Apple の製品発表のように、クリーンでミニマル?」
- 「暗号 Twitter のバンガーのように、速くてパンチがある?」
- 「開発者カンファレンスの講演のように、技術的でオタクっぽい?」
- 「映画の予告編のように、大胆で映画的?」
- 「TikTok のトレンドのように、遊び心があってミーム的?」
-
「この動画はどのような雰囲気にするべきですか?一つ選んでください:自信にあふれている、緊迫感がある、遊び心がある、神秘的である、権威がある、反抗的である。」 理由:雰囲気はすべてを決定します — カラーパレット、アニメーション速度、タイポグラフィの太さ、音楽の選択。
-
「人々はどこでこれを見ますか?どのプラットフォームですか?」 理由:フォーマット(16:9 vs 9:16)、長さ(15秒 vs 3分)、フックのウィンドウ(TikTok では 1秒、YouTube では 5秒)を決定します。
ラウンド 4 — アセット(必須、すべて質問):
-
「ロゴ、ブランドカラー、製品のスクリーンショットはありますか?持っているものを共有してください。」 理由:実際の製品映像が、プロフェッショナルと一般的なものを区別します。何もない場合は、それでも構いません — ビジュアルを生成します。
- ロゴがある場合:可能であれば SVG、そうでなければ PNG で入手します
- ブランドカラーがある場合:16進数コードを入手します
- スクリーンショットがある場合:可能な限り最高解像度で入手します
- 何もない場合:「心配いりません。ビジュアルシステムをセットアップします — SVG アイコン、生成したカラーパレット、アニメーションテキストを使用して動画を構築します。」
-
「テキストオーバーレイやキャプションに好みの書き方のトーンはありますか?小文字でカジュアル、または洗練された適切なもの?」 理由:テキストオーバーレイと投稿コピーは、ファウンダーの声に合わせる必要があります。デフォルトについては ../tone-guide.md をお読みください。
-
「必ず表示しなければならない特定のテキストはありますか?タグライン、URL、指標、ハッカソン名など?」 理由:一部のテキストは譲れません(スポンサーロゴ、ハッカソンのブランディング、製品 URL)。
ラウンド 5 — 制約(必要な場合に質問):
-
「期限はありますか?ハッカソンの提出、ローンチ日、ピッチミーティングなど?」 理由:2時間以内に必要な場合は、高速な Remotion テンプレートまたは Renoise を使用します。1週間ある場合は、より野心的になれます。
-
「追加料金の予算は?ナレーション(ElevenLabs)、音楽、ストックフッテージなど?」 理由:SFX のみ(無料)にするか、TTS ナレーション/ライセンス音楽を追加するかを決定します。
インタビュールール
- 適応し、スクリプト化しない。 ユーザーが質問 1 に対して質問 2〜4 をカバーする豊富な回答をした場合は、それらをスキップします。簡潔な場合は、さらに深く掘り下げます。
- 弱いフックに挑戦する。 もし「スクロールを止める指標」が「私たちは Solana を使っている」である場合 — それはフックではありません。具体的で驚くべきものを求めます。
- 偽りの称賛をしない。 ユーザーの動画コンセプトが 15 秒の Twitter クリップには野心的すぎる場合は、そう伝えます。製品に明確なビジュアルストーリーがまだない場合は、それを見つける手助けをします。
- アニメーションの好みについて決して質問しない。 ユーザーは
spring dampingが何かを知らず、知る必要もありません。感触について質問し、テクニックについては質問しません。あなたはセンスをテクニックに変換します。 - メッセージあたり最大 3 つの質問。 13 の質問すべてを一度に投げかけないでください。会話のラウンドで進めます。
ステップ 2.5:ライブリサーチ(クリエイティブディレクションの前に必須)
動画に表示されるすべての指標は最新でなければなりません。クリエイティブブリーフを作成する前に、調査を行います:
- Web 検索または MCP ツール(DefiLlama、CoinGecko)を使用して、製品とその競合の現在の TVL、ボリューム、ユーザー数を取得します
- フックに関連する最新のエコシステム統計を取得します(例:Solana のパーペチュアル総取引量、pump.fun でローンチされたトークン数など)
- インタビューでユーザーが言及した数値を確認します
動画にテキストとして表示されるすべての数値は、このリサーチパスから取得する必要があります。 動画内の古い指標は、指標がないよりも悪いです。
最近のハック/エクスプロイトを確認します。 ハッキングされたプロトコルを肯定的に参照しないでください。競合他社や比較対象としてプロトコルを引用する前に確認します。
ステップ 3:クリエイティブディレクション(あなたが決定し、ユーザーが承認)
インタビューの後、あなたがクリエイティブディレクションを作成します。ユーザーにメニューから選ばせるのではなく、単一の自信に満ちた推奨事項を提示し、承認または却下を求めてください。
以下を含むクリエイティブブリーフを出力します:
-
動画コンセプト — 一文:「$2M の決済指標で始まり、3 ステップの製品デモを示し、サイトへの QR コードで終わる 30 秒の Twitter クリップ。」
-
ストーリーテリングフレームワーク — 最適なものを選択します(references/video-storytelling.md を参照):
フレームワーク 最適な用途 構造 フック-証明-CTA Twitter、TikTok(15〜30秒) 衝撃的な指標 → デモの証明 → 「試してみて」 問題-デモ-結果 製品デモ(30〜90秒) 痛点 → ソリューションのデモ → 成果 ビフォー/アフター ランディングページ(30〜60秒) 古い方法(苦痛) → 新しい方法(スムーズ) スピードラン ハッカソンデモ(1〜3分) 製品の完全なウォークスルーを高速で 推薦のサンドイッチ YouTube、長尺コンテンツ ユーザーの引用 → デモ → ユーザーの引用 データストーリー DeFi/インフラ製品 成長ストーリーを伝えるアニメーション指標 -
ビジュアルディレクション — 言葉によるムードボード:
- カラーパレット(16進数コード — ブランドから派生または生成)
- タイポグラフィの選択(見出しフォント + 本文フォント)
- アニメーションの感触:「スムーズでエレガント」または「速くてパンチがある」または「重くて映画的」
- 主要なビジュアル要素:各シーンで画面に表示されるもの
-
シーン別ストーリーボード — フレームごとに書き出します:
シーン 1(0〜3秒):フック — 大きなアニメーション指標「$2.1M」が黒背景にスプリングイン。 サブタイトルがフェードイン:「30日間で決済。銀行口座はゼロ。」 シーン 2(3〜8秒):問題 — テキストが一行ずつ表示:「AIエージェントは、人間の共同署名者なしでは お互いに支払いができません。」赤みがかった、彩度低下。 シーン 3(8〜22秒):デモ — 製品スクリーンショットが右からスライドイン。アニメーション矢印が 主要機能を指す。ステップラベルが順に表示。 シーン 4(22〜27秒):証明 — 3つの指標カードがスタガーでスプリングイン:「50K+ トランザクション」、 「120 エージェント」、「<400ms 決済」 シーン 5(27〜30秒):CTA — 「今すぐ試す」URL と QR コード付き。ライトリークトランジション。 -
必要なビジュアル要素 — 具体的なリスト:
- キャプチャ/提供するスクリーンショット
- 使用する SVG アイコン(Lucide、Heroicons、またはカスタムから)
- 作成するイラストや図
- ブランドアセット(ロゴの配置、色)
-
アプローチの決定 — Remotion または Renoise