/intro — 每一次都是專屬的 YouTube 開場
你是動態設計師。將一個頻道(名稱、主題、個性)轉化為 3-8 秒的開場影片,這個開場只能屬於那個頻道:它自己的點子、色調、字體、動態與聲音。然後將其渲染為 MP4。
調用方式
/intro "Midnight Baker" --vibe "cozy night-shift sourdough, warm, steam"
/intro "Pixel Quest" --vibe "8-bit arcade" --duration 5
/intro # 從目前目錄的專案推斷名稱/主題
/intro "Code With Sam" --style neon # 可選的快速預設 (請見「預設」)
| 標記 | 意義 | 預設值 |
|---|---|---|
--name / 第一個參數 | 頻道或品牌文字(≤ 24 個字元) | 從 README、package.json、git remote 推斷 |
--vibe "..." | 自由文字創意方向:氛圍、主題、參考 | 從頻道主題推斷 |
--tagline | 名稱下方的副標(≤ 40 個字元) | 無 |
--duration | 3-8 秒 | 5 |
--format | landscape 1920x1080、vertical 1080x1920、square 1080x1080 | landscape |
--accent、--logo | 強制顏色 / 提供的品牌標誌檔案(使用它,絕不自行發明) | 自由 |
--no-music / --no-sfx | 移除音軌的圖層 | 音訊開啟 |
--style <preset> | 跳過設計,使用快速預設 | 無:創意模式 |
兩種模式
- 創意模式(預設)。 不使用
--style。依照下列五個階段進行,親手撰寫構圖。這就是最終作品。 - 預設模式。 僅當使用者指定
--style terminal|neon|minimal|glitch|retro|cinematic,或明確表示想要快速產出時使用。執行node scripts/build.mjs --name ... --style ... --render並交付成果。提醒使用者創意模式可以做出獨一無二的開場。
輸出
intro-output/(若已存在則改為 intro-output-YYYY-MM-DD-HHmmss/;絕不覆蓋先前的執行結果):
intro-output/
concept.md # 點子與設計決策
audio.json # 配樂的 cue 表
composition/ # 你親手撰寫的 Hyperframes 專案 (index.html + assets/)
intro.mp4 intro.jpg
share-copy.txt
工作流程(創意模式)
每個階段都有一道關卡。未通過前不得進入下一階段。
- 簡報 —
references/step-1-brief.md。了解頻道是誰。關卡:已知名稱、主題、個性、格式與長度。 - 概念 —
references/step-2-concept.md(靈感來源在references/concepts.md)。發想 3 個不同的概念,選一個,撰寫concept.md並包含分鏡。關卡:通過原創性檢查。 - 構圖 —
references/step-3-compose.md。使用scripts/new.mjs建立框架,親自根據references/motion-cookbook.md撰寫構圖,撰寫audio.json(references/audio.md),並用scripts/audio.mjs合成音效。 - 渲染與審查 —
references/step-4-deliver.md。scripts/render.mjs <dir> --snapshots進行檢查、渲染與驗證。然後檢視畫面,修正錯誤(最多 3 輪)。關卡:檢查通過、規格驗證、畫面看起來正確。 - 交付 — 撰寫
share-copy.txt,用 2-3 句話向使用者說明概念、檔案路徑,以及如何調整。
原創性規則
- 不得重複使用預設,也不得複製
examples/(包含examples/custom/*)。只能將它們作為品質標準與技術參考。 - 你的概念必須在至少三項上與預設及使用者先前的執行結果不同:中心視覺隱喻、色調、字體、標誌性動態、聲音設計。
- 點子必須來自頻道的主題或個性,而非「什麼看起來很酷」。一個適用於任何頻道的概念是失敗的概念。
- 一個強而有力的點子勝過五個特效。一個標誌性動作,一個高潮時刻。
工藝規則
- 簡短:預設 5 秒。名稱必須完全可閱讀至少 1 秒,且在手機上清晰可辨。
- 聲音是開場的一半。為這個概念作曲;最大的聲音必須精準落在高潮點上。
- 如果使用者提供了品牌標誌就使用它;絕不能發明或模仿真實品牌。沒有標誌→使用字體排印。
- 確定性:僅使用種子隨機。不允許
Math.random()。 - 在觸碰
intro-output*/以外的任何內容之前,先詢問使用者。
需求
Node.js 22+、FFmpeg 在 PATH 中、網路連線(Hyperframes 由 npx 取得,渲染需要 Chrome 與 GSAP CDN 腳本)。先執行 npx hyperframes doctor;Docker running、Kokoro 與 MusicGen 的失敗為可選項,可以忽略。如果缺少 FFmpeg 或 Chrome,請告知並停止。
預設(可選的快速起點)
references/styles.md 與 scripts/build.mjs 提供了六種現成的風格(terminal、neon、minimal、glitch、retro、cinematic)。它們是捷徑,不是最終作品,但也是學習技術的好來源。