製作——從簡報到最終影片
工作室的指揮者。每個階段都是獨立的技能,各自完成自己的工作;此技能
決定下一個要執行的階段,確保每個關卡在繼續前都獲得核准,並讓
用戶保持方向感。各階段透過 videos/<video>/ 中的檔案交接,絕不直接
互相呼叫對方的腳本。
品牌套件(僅新客戶)→ 撰寫 → 分鏡 → 配音 → 渲染
目前狀態
node studio/scripts/status.mjs videos/<video> —— 讀取影片的檔案,顯示每個
階段的狀態(已完成 / 等待核准 / 過期 / 未開始)、下一步動作,並寫入
videos/<video>/status.md。若無參數則列出所有影片及其下一步。
每次開始製作工作階段時以及每個階段完成後都應執行此腳本。
開始新影片
- 取得請求:客戶/品牌(網站?)、用途以及用戶已提供的任何簡報細節。 不要盤問——撰寫技能會收集簡報。
- 品牌:若客戶在
studio/brands/中沒有已核准的套件,則執行 brand-kit 技能 (包含素材庫)。已有核准的套件→直接複用。 宇宙: 僅當用戶指名某個宇宙或其角色時(例如「與 Nox 一起」、 「在 Noxverse 中」),影片才使用該宇宙(universe 技能):其色板會取代 品牌套件,除非用戶明確要求也使用客戶品牌。否則絕不建議或詢問宇宙 相關內容——一律走一般流程。 - 執行 write 技能。它會建立
videos/<YYYY-MM-DD>-<slug>/資料夾及簡報,然後 依序進行鉤子 → 故事 → 劇本,並附帶核准步驟。
繼續進行中的影片
執行 status.mjs,然後對應下一步動作啟用該技能:
| 來自狀態的下一步動作 | 技能 |
|---|---|
| 品牌套件缺失 / 未核准 / 無素材庫 | brand-kit |
| 簡報中指名宇宙但缺失 | universe |
| 簡報、鉤子、故事或劇本未核准 | write |
| 分鏡未開始、等待核准或過期 | storyboard |
| 配音未開始、未配對、等待核准或過期 | voiceover |
| 最終影片未渲染、等待核准或過期 | render |
| 完成 | 告知用戶影片已是最終版本;提供變體或新影片選項 |
使用 Skill 工具呼叫階段性技能,並完全遵循其指示——包括 它們自己的核准步驟。不要在此處跳過任何階段的流程。
關卡(永遠停下來等待用戶)
- 品牌套件(新客戶)· 2. 鉤子 · 3. 故事 · 4. 劇本 · 5. 概念 · 6. 風格幀 ·
- 分鏡 + 簡報 · 8. 配音(試鏡 + 預覽)· 9. 最終影片。
宇宙影片:僅當 studio/scripts/board-check.mjs 通過後,分鏡才呈現以供核准(關卡 7)
——status.mjs 會在分鏡行顯示 check ✓ / check ✗ 並在檢查失敗時指向該檢查。
核准必須來自用戶針對此影片和關卡的聊天內容。「看起來不錯」、 「核准」、「繼續」算數;沉默或提問不算。一次核准永遠不涵蓋下一個關卡。 每個關卡之後,提供一行狀態說明及下一步驟。
核准後的變更
- 指出擁有該變更的階段:文字→撰寫;外觀、動畫、轉場、音效提示 →分鏡;旁白、節奏、時機→配音;音樂、字幕、混音、匯出→渲染。
- 擁有該變更的技能會提高
version;後續階段會標記為過期(狀態顯示 ⚠️)。 依序只重新執行過期的項目。絕不留下過期的檔案——移除不再符合的輸出 (例如舊的預覽),一旦它們被取代。
工作室規則(每個階段都適用)
- 先試免費。 僅在用戶要求或在聊天中核准費用估算後才使用付費工具(ElevenLabs 語音、AI 圖片、AI 音樂)。
- 克制音效。 僅用於標誌性時刻,不要在每個轉場都加上嗖聲。
- 文字來自劇本。 只有撰寫技能可以更改文字。
- 在不犧牲品質的前提下節省 token: 腳本需量測並回報 JSON;查看聯繫圖,而非個別幀;不要觀看 MP4——把它們發送給用戶。
- 讓用戶保持方向感:每個階段之後,提供簡短摘要 + 下一步內容。
回報
當被問到「我們在哪裡?」或在工作階段結束時:執行 status.mjs(所有影片或單一影片),
並以簡短表格摘要:影片 · 階段 · 下一步 · 有任何等待用戶處理的事項。