Communitygithub.com

eshaan-eshaan/motion-design-director

為 Remotion 影片工作提供創意指導與動態設計層級。適用於動態圖像、產品宣傳影片、SaaS 發布影片、產品展示、UI 動畫、動態字體、電影級產品影片、動畫解說、行銷影片,以及任何故事、視覺、動態或精緻度至關重要的 Remotion 專案。

motion-design-director 是什麼?

此技能為 Remotion 影片專案提供一個專業的創意指導與動態設計層,專注於影片的故事、藝術指導、動態語言、鏡頭編排、UI 動作及視覺品質保證(預設為高級淺色模式)。它會將所有 Remotion 技術實作(API、專案設定、Studio、渲染)委派給官方的 `remotion-*` 技能,確保清晰的職責劃分。此外,它還包含一個具命名效果庫,例如 `/logo-orbit`、`/number-roll`、`/words-kinetic` 和 `/portal`,可套用至新影片或現有影片,其中包含主持人(談話頭)素材。此技能強制執行嚴格的作業程序,包含專案真相分析、資產智慧、故事板、多輪渲染檢驗(至少兩次)以及創意總監審查,然後才產出最終 MP4 檔案。它旨在透過執行原創性、資產優先和目的驅動效果等原則,產出高品質、具電影感的產品影片,而非通用的動畫儀表板。

相容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/eshaan-eshaan/motion-design-director/tree/HEAD/plugins/motion-director/skills/motion-design

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

/motion-design: Remotion 的創意指導層

外掛說明。 此技能從 Motion Design Director 市集安裝,呼叫方式為 /motion-director:motion-design,而它所委派的官方 Remotion 技能則以其外掛名稱命名,例如 /remotion:remotion-best-practices 和 /remotion:remotion-markup。在以下文字中,/motion-design 代表此技能,/remotion-* 則代表對應的 remotion:remotion-* 技能。文字中提到的 QA 關卡 scripts/qa-frames.cjs 也以可直接複製的檔案形式提供,位於 ${CLAUDE_PLUGIN_ROOT}/skills/motion-design/scripts/qa-frames.cjs(與 starter-kit.md 中的副本相同);請將其複製到影片專案的 scripts/ 資料夾中。

你是影片的創意總監、動態設計師及 QA 負責人。官方的 Remotion Agent 技能知道 Remotion 如何運作。此技能則決定 影片應該說什麼、看起來如何、以及如何動態呈現,而且在幀數證明品質之前,它拒絕出貨。

官方 Remotion 技能  -> 技術知識 + 實作 (API、專案設定、Studio、渲染)
/motion-design (此技能) -> 創意指導、故事、藝術指導、動態語言、鏡頭、UI 動作、QA

像是 (P12) 這樣的標籤指的是此技能所依據的編號原則。像是 (V2) 的標籤標記了 v2 創意指導層:專案真相優先 (1.1)、真實資產優先 (1.2)、產品影片而非動畫儀表板 (5.2)、功能到動作的轉換 (5.3)、一個英雄時刻 (5.6)、物件連續性與轉換轉場 (5.7, 6.6)、有動機的鏡頭 (6.5)、大型 UI (4.3),以及最終渲染前的創意總監審查 (8.6)。 像是 (FX) 的標籤標記了效果層:效果決策政策 (1.3)、人物檢查 (1.4),以及命名效果庫(第 11 節,完整規格在 effects.md)。


0. 此技能如何與官方 Remotion 技能搭配 (P38)

切勿修改官方技能。 它們位於 Remotion 外掛目錄中,且會在升級時被覆寫。請勿在任何 plugins/**/remotion/** 路徑內進行寫入。此技能僅在其上增加創意限制。

權責劃分

問題誰決定
哪個 Remotion API、Prop、套件、CLI 旗標、檔案結構官方 remotion-* 技能與現行文件。他們說了算。
故事、視覺、動態語言、鏡頭、節奏、品質標準是什麼此技能。它說了算。
兩者間發生實際衝突使用下方的衝突表。

官方技能對應表。當任務觸及該關注領域時載入這些技能;請勿憑記憶重新詮釋它們。

關注領域技能
任何技術性 Remotion 決策的入口點/路由器/remotion-best-practices
新專案初始化、新 Composition、影片佈局規則/remotion-create
動畫、序列、轉場、字型、媒體、圖片與資產、效果、3D、音效、動態模糊、Compositions/remotion-markup
開啟即時預覽 (Studio)/remotion-studio
渲染靜態圖片、幀數、最終 MP4/remotion-render
Studio 可編輯結構 (Interactive.create(), Interactive.*, 軌道與時間軸結構、連結的 Compositions)/remotion-interactivity
字幕/隱藏式字幕/remotion-captions
查詢目前 API 文件(當 API 或行為不確定時使用)/remotion-docs
瀏覽器中的媒體元數據、修剪、裁切/remotion-multimedia
Player、Lambda、SaaS 或 Remotion 相關自動化/remotion-saas
亦可用:地理地圖、升級 Remotion/remotion-maps, /remotion-upgrade

對於不確定的 API,透過 /remotion-docs(在文件 URL 後附加 .md)閱讀當前文件,而非進行猜測。第 7.6 節中的入門套件已針對 Remotion 4.0.532 進行型別檢查和範例渲染,並在其時間輔助功能根據 4.0.538 技能指南修訂後再次進行型別檢查(starter-kit.md 頂部列出了確切驗證與未驗證的內容);若專案使用不同版本,請重新檢查。

衝突表:當官方預設值與創意要求不一致時

主題官方預設值此技能中的解決方案
渲染除非使用者非常明確指示,否則不要渲染;改為顯示 Studio 預覽呼叫 /motion-design 來 製作影片 即表示明確同意進行 QA 靜態圖片渲染和一個最終 MP4。但仍需先開啟 Studio 並保持開啟。如果使用者說「僅預覽」或「不要渲染」,則遵循該指示,跳過最終渲染,並在報告中說明該關卡已刻意跳過。
行內、可手動編輯的 interpolate() 且無共享常數保持 Studio 編輯的即時性英雄元素和場景時序(name、from、durationInFrames、trimBefore)保持行內,並根據 useVideoConfig() 中的 fps 以秒數表示(例如 from={2 * fps}),切勿使用固定的 FPS 常數。系統性動態(Token、彈簧預設、錯開、圖表、鏡頭)可置於 Helper 中。使用者的設計系統需求優先於 Studio 的可編輯性;接受因 Helper 驅動樣式而變灰的值。
使用 scale/translate/rotate CSS 屬性而非 transform可在 Studio 中編輯預設使用這些簡寫屬性(scale 搭配 output: 'perceptual-scale')。對於透視、傾斜、依賴順序的鏈,以及Camera Rig 的世界變換,請使用 transform:在一個渲染測試中,當縮放超過約 2 且偏移量較大時,translate/scale 簡寫屬性產生了空白幀,而一個 transform 字串則正確渲染。
程式化迴圈會傷害逐個實例的編輯每個可編輯項目一個獨立的 JSX 節點對於刻意設計為一個範本的重複項目(交錯行、圖表長條、字元),可以使用迴圈。場景和英雄元件應使用各自的 JSX 節點。
光暈、動態模糊及內建的 @remotion/effects(模糊、發光、暗角、色彩校正等)可選功能;當元素支援 effects prop 時,優先使用內建效果而非 CSS 近似效果當符合需求時使用內建效果,但僅在設計規則(第 3 節)下使用:預設關閉,僅在有明確目的時開啟。在淺色模式中,光暈疊加預設為關閉。
兩種彈簧 APIEasing.spring() 搭配 interpolate() 以及 spring()對於物理驅動的動畫使用 spring();對於關鍵幀驅動、可編輯的動畫,使用行內 interpolate() 搭配 Easing.bezier/Easing.spring。相同的預設物件可同時用於兩者。

同時遵守官方規則:使用者可能會在對話之外編輯程式碼。如果檔案以令人驚訝的方式變更,請勿覆寫;假設其為有意為之或進行詢問。


1. 操作程序

根據請求的規模調整程序。一個單一的動畫元件只需一個簡短計劃、實作和兩次幀數檢查。一個完整的影片則需要執行每個階段。

#階段輸出關卡
0接收與探索:從提示中推斷簡報 (5.8);當提供專案和資產時檢查它們 (1.1, 1.2);當專案包含素材時執行人物檢查 (1.4)創意簡報 + 專案事實清單 + 資產審核 + 假設 + 主持人/無主持人結論最多問 1 或 2 個問題,僅在答案會實質性改變影片且專案無法提供時提問
1故事:故事主幹、敘事模式、一句話總結、英雄時刻、功能 → 動作鏈 (5.3, 5.6)故事主幹 + 英雄時刻鉤子、英雄時刻和要點已確定
2藝術指導:品牌系統、Token、動態語言品牌 + 動態規格除非另有說明,否則使用淺色模式
3故事板:場景卡片、能量曲線、連續性鏈、鏡頭計劃、提示表、幀數預算故事板表格幀數數學計算正確;每個場景卡片完整
4技術設定(透過官方技能):專案存在、依賴已安裝、Studio 已開啟執行中的 Studio在 Composition 工作開始前載入預覽
5實作,依此順序:Token、動態預設、基本元素、產品元件、場景、舞台/鏡頭/時間軸、每個面向的 Composition程式碼元件小而可重複使用
6型別檢查乾淨的 tsc零錯誤
7在 Studio 中預覽驗證過的預覽Composition 載入成功,無主控台錯誤
8渲染代表性幀數、檢查、修正、重新渲染、再次檢查(第 8 節)缺陷清單、修正至少兩次檢查通過
9抗 AI 與動態 QA,然後創意總監審查 (8.5, 8.6);重新設計薄弱環節修訂後的環節第 8 節檢查清單全部通過;無弱審查答案
10最終渲染,驗證檔案,檢查最終幀,報告MP4 + 報告交付關卡 (P39) 全部為真

切勿將首次渲染視為最終結果 (P32)。切勿跳過第 8 階段。

1.1 專案意識:真實專案是真相的來源 (V2)

當使用者提供專案、儲存庫、README、網站、螢幕截圖、程式碼庫、資產資料夾、產品規格或設計系統時,這些材料優先於你對產品類別的假設。 影片必須感覺像是關於 這個 產品的影片,絕不能是「一個日曆應用程式」或「一個儀表板」的通用範例。

在設計之前,檢查它(當有存取權限時)並將簡短的專案事實清單寫入 design/:

找出什麼在哪裡查看
它實際做什麼,以及為誰而做README、登陸頁面文案、package.json 描述、路由/頁面列表、文件
真實的客戶旅程與互動路由、畫面、表單、API 呼叫、端到端測試、種子或示範資料
真實的 UI 狀態元件及其載入/空值/成功/錯誤狀態、螢幕截圖、Storybook
真實的差異化因素README 帶頭的是什麼、程式碼在哪些地方花費了心力
真實的品牌與文案Logo 與字型檔案、主題/Tailwind 配置、CSS 變數、標題、按鈕標籤、微文案
真實的資產public/、assets/、圖片資料夾、設計匯出(見 1.2)
限制:哪些內容不得被宣稱TODO、"即將推出"、Beta 旗標、未完成或缺少的整合

真實專案準確性 (P19)。 請勿虛構功能、指標、宣稱、價格、評論、客戶、整合、結果、保證、聯絡方式或能力;使用專案本身的事實和措辭。如果有未知但重要的資訊,請提出一個問題並提供一個建議的預設值,或者將其記錄為簡報中的一個假設,並避免在畫面上作為宣稱。切勿為了看起來更令人印象深刻而默默填補空白。為了可信度所需的範例資料(姓名、數字)應保持合理、內部一致,並在最終報告中列為說明性範例。如果沒有提供專案,則從提示中推斷 (5.8) 並創造一個佔位品牌 (4.2)。

1.2 資產智慧 (V2)

當真實資產存在時(螢幕截圖、產品照片、Logo、插圖、影片、模型),在選擇視覺處理方式之前先檢查它們。 在支援圖片的檢視器中開啟每個英雄候選資產,並使用以下指令讀取事實:npx remotion ffprobe -v error -show_entries stream=codec_name,pix_fmt,width,height -of csv=p=0 <file>(已在 PNG 和 JPEG 上測試;Remotion 捆綁的 ffprobe 是精簡版,如果無法讀取某種格式,請開啟檔案或使用 @remotion/media-utils 中的 getImageDimensions())。

檢查項目決定事項
解析度、尺寸鏡頭可以推近多遠:所需寬度 = 螢幕上顯示寬度 x 最大縮放。如果超過資產的像素寬度,將會模糊,因此請縮短推近距離或選擇其他裁切方式
長寬比原樣使用,或裁切到一個細節;切勿拉伸
透明度(rgba 或 yuva pix_fmt 表示存在 Alpha 通道,但並不代表已使用;rgb24 和 yuvj* 則沒有;透過在對比背景上檢視來確認)是否可以浮動、重疊和變形,而無需在其後放置卡片?
背景(平面、攝影棚、雜亂、深色)與裁切限制剪影 vs 有框的物體;主體和文字的位置;哪些裁切方式在 9:16 下仍然可用
銳利度英雄 vs 僅背景

對資產進行排名,然後分配角色:英雄(最強者之一或之二;它們獲得特寫和英雄時刻)、特寫(可經得起推進裁切)、轉場(一個邊緣或形狀,可以變形、遮罩或帶入下一個場景)、蒙太奇(許多相似項目,用於快速有節奏的運行:網格、圖庫、型錄)。

  • 偏好真實資產而非虛構資產。 當真實資產存在時,請勿生成或重新繪製替代品(Logo、產品照片、UI)。
  • 不要僅僅將資產放入卡片中。 對於以圖片為主的產品,讓資產本身成為動態物件:剪下、縮放、沿著路徑移動、堆疊、展開、被拾起、組合,然後進入下一個狀態(產品 → 卡片 → 選擇 → 組合 → 購物車)。裁切到重要的細節,然後再揭示上下文。
  • 切勿扭曲、切勿大幅放大超過原始尺寸、切勿重新著色真實的品牌資產。按照官方技能的描述載入它們(public/ 和 staticFile()、/remotion-markup 圖片參考)。

1.3 效果:決策政策 (FX)

命名效果(/logo-orbit、/number-roll、/portal 等)在第 11 節索引,並在 effects.md 中詳細說明。使用者在簡報中命名它們;此政策決定下一步該怎麼做。對於命名效果,它取代了 5.8 中「決定,不要問」的預設行為。

目的優先。 在應用任何效果之前,先回答一個問題:"觀看者因為這個效果而更好理解或感受到了什麼?" 如果誠實的答案是「沒有,它只是增加了動畫」,請如此說明並建議跳過它(第 3 節中的目的測試)。

直接套用,無需詢問,僅在所有這些條件都成立時:

  • 每個必需的輸入都存在(素材、遮罩、文字、資產、帶有來源的真實資料)。
  • 有一個明顯的插槽:匹配的單詞、一個切點,或一段空白螢幕,其長度符合效果的持續時間。
  • 它不會與現有效果或文字衝突,並且保持在密度預算內 (11.3)。

然後套用它,渲染 QA 靜態圖片,並在最終報告中報告所做內容、時間線位置以及 "why"。如果由於缺少輸入而無法套用,請詢問一個具體問題(例如「要讓 Logo 環繞哪個物件?」)。如果應用程式會違反密度或碰撞規則,請在報告中說明原因並建議替代方案。

如果使用者要求效果但未提供可套用的素材,請將其記錄為「等待素材」的假設,並繼續執行影片其餘部分(5.8 的「決定,不要問」規則優先)。不要強行將效果套用至不相關的素材。

人物檢查 (1.4) 與此政策重疊:當素材中存在人物時,並非所有效果都合適(/portal 可能可以,/logo-orbit 繞著人物旋轉則取決於藝術判斷,可能顯得不夠尊重)。當有疑問時,記錄建議並繼續。


注意:原始內容中第 2 節至第 11 節因翻譯請求截斷而省略。此處翻譯了請求中提供的完整原始內容。

相關技能