Communitygithub.com

motion-graphics

一個簡短、以設計為主導的動態圖形,重點在於讓動作本身傳遞訊息——包括動態文字、統計數字計數、圖表/資料視覺化、標誌動畫/品牌鎖定、下方三分之一/標註/社交媒體覆蓋層、動態地圖(突顯區域、連接地點、縮放到某個位置)、動態推文/新聞文章/標題、網頁/UI動畫(滾動、游標、標註),或將真實影像的幾何形狀融合成圖表。通常少於10秒(最多約30秒),無旁白或真人主題;輸出為MP4或透明疊加。

motion-graphics 是什麼?

此技能(「motion-graphics」)專門用於創建簡短、以設計為主導且無旁白的動態圖形,其核心信念是「動作本身就是訊息」。它支援多種類別,包括動態文字、統計數字動畫、資料圖表、標誌動畫、下方三分之一、動態地圖,以及基於搜尋的項目(如網頁動畫、推文卡和新聞頭條)。工作流程從初始化階段開始,接著進行規劃(使用子代理決定是否需要搜尋及選擇類別)、素材獲取(選擇性,用於需要搜尋的項目)、設計、構建(優先重用既有區塊)、驗證(包含Lint檢查和快照),最後是預覽和渲染。最終輸出是MP4或透明疊加影片,並放置在指定的項目目錄中。此技能設計為高度自主,在規劃階段最多提出一個澄清問題,然後直接構建到驗證階段,無需中間審查。它依賴於HyperFrames框架,並為macOS Apple Silicon或Linux x64平台設計。

相容平台~Claude Code~Codex CLI✓Cursor✓Gemini CLI
npx skills add https://github.com/berhjoan/claqueta/tree/HEAD/library/hyperframes-clasico/skills/motion-graphics

在你喜歡的 AI 中提問

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

說明文件

外掛安裝: 在執行 setup 或 freshness 指令之前,請遵循此技能位於 HyperFrames 外掛內時的外掛執行規則。單獨安裝則保留下方的更新說明。

首先,保持此技能最新——在使用者確認後執行: npx hyperframes skills update motion-graphics。如果一切已是最新,則快速無操作;否則,它會在使用您之前刷新此技能及其依賴的核心領域技能。

figma 來源:如果要從 figma.com URL 構建標誌/素材/動畫,請先執行 /figma——資產導出、品牌標記以及如果圖形是 Figma Motion 導入時的 Motion→GSAP 轉譯——然後根據其輸出進行構建。不要直接透過原始 MCP 工具驅動 Figma:這會跳過 SVG 清理、.media/manifest.jsonl 來源追溯以及品牌 token var() 綁定,因此稍後的品牌變更無法傳播,除非完全重新導入。

motion-graphics — 調度入口

前門是 /hyperframes。 此技能製作一個簡短、以設計為主導、無旁白的動態圖形(動作即訊息;約 10 秒以下,無畫外音)。任何更長、有旁白或多場景的內容——或任何不確定性 → 請先閱讀 /hyperframes:意圖層負責所有路由決策。

此工作流程本質上是自主的——最多一個澄清問題(agents/director.md),然後直接構建到驗證階段,無需中間審查。意圖層(/hyperframes → references/intent-interview.md)會直接路由於此,無需提出運行形狀問題;對於如此短的片段,故事板和伴隨會話幾乎沒有額外價值。渲染仍由使用者控制:在檢查和校樣快照通過後,打開 Studio 預覽並詢問來自 ../hyperframes/references/brief-contract.md 的慣用問題“現在渲染,還是要做什麼更改?”。當 BRIEF.md 存在時,請在導演的提問之前閱讀它。

一個簡短、以設計為主導的動態圖形。資產優先:在設計鏡頭之前決定資產策略並獲取真實素材,然後根據您擁有的素材設計鏡頭,最後通過重用目錄功能進行組合。所有產出物都放在 PROJECT_DIR = videos/<專案名稱>/(在第 0 步創建);以下所有路徑都相對於此目錄。

階段執行主要產出物詳細流程
初始化Bashhyperframes.json第 0 步
規劃子代理 — 決定是否搜尋? + 分類 + 資產策略shot-plan.json(草稿:類別、asset_needs 查詢、簡報)agents/director.md(第 1 部分)
素材獲取 ◇Bash — 媒體使用解析(如果 asset_needs 為空則跳過)assets/ + assets/index.mdphases/source/guide.md
設計子代理 — 根據已解析的資產進行鏡頭設計shot-plan.json(最終版:區塊 + 佈局 + 動作 + 位置)agents/director.md(第 2 部分)
構建子代理 — 優先重用的組合compositions/index.htmlagents/builder.md
驗證Bash — lint、check、校樣快照;失敗時修復snapshots/contact-sheet.jpg第 5 步
批准打開預覽;詢問渲染或更改;等待回答明確的渲染批准第 6 步
渲染Bash — hyperframes render(MP4,或使用 --format webm/mov 進行疊加)renders/video.mp4 或透明疊加第 6 步

◇ 素材獲取 僅在所選類別聲明需要資產時執行。純代碼/文字類別(例如 kinetic-type、大多數 charts/stat)的 asset_needs: [],會直接從規劃跳到設計。

類別 — 根據搜尋決策劃分

plan 的第一個決策是:這是否需要搜尋? 這個分支將類別分成兩組;然後選擇具體類別——對於搜尋驅動的,根據搜尋返回的內容類型。每個類別是一個 categories/<id>/module.md(其規劃 + 構建規則);共享的動作詞彙在 references/motion-vocabulary.md 中(→ hyperframes-animation 規則/藍圖 + 註冊表區塊)。

形式類別 — 無需搜尋;使用者提供內容:

類別意圖依賴於
kinetic-type簡潔有力的台詞/引言/標題,動作優先的文字caption-* 區塊 + 動畫規則
stat單一英雄數字/計數 + 環圈apple-money-count / rules/{counting-dynamic-scale, stat-bars-and-fills}
charts來自資料的長條圖/折線圖/圓餅圖/競賽圖/百分比data-chart 區塊
logo-reveal標誌動畫 / 品牌鎖定(使用者標誌)logo-outro / rules/svg-path-draw
lower-thirds名稱/職稱列、標註、社交媒體疊加層caption-* + 註冊表疊加層區塊
maps地理動作 — 突顯區域、連接地點、縮放到某個位置(向量通道,或烘焙底圖通道)us-map / world-map 系列 + bake-basemap.mjs

搜尋驅動類別 — 先搜尋,然後根據內容類型製作動畫(RWA 路徑):

返回的內容類別動畫
網頁 / 連結webpage網頁 / UI 動畫(滾動、揭示、游標、標註)
新聞文章news標題揭示 + 來源卡片 + 關鍵事實標註
推文tweet動畫推文卡片
圖片 / 實體asset-fusion資產的幾何形狀_變成_圖表(RWA 敘事融合)

構建順序:一次一個,以覆蓋率為先(粗略即可)。kinetic-type 從原型移植;其餘依此類推。

先決條件

macOS Apple Silicon 或 Linux x64。系統工具:brew install node ffmpeg。執行一次 npx hyperframes doctor。macOS GPU 渲染:export PRODUCER_BROWSER_GPU_MODE=hardware。

可選金鑰(如果未設定則使用本地備用)——僅由透過媒體使用獲取/生成資產的類別使用:

金鑰用途備用
GEMINI_API_KEY / GOOGLE_API_KEY圖片生成(媒體使用解析)跳過生成 / 僅搜尋
(asset_scout / 搜尋提供商)webpage/news/tweet + asset-fusion 真實資產搜尋類別降級為無資產

流程

第 0 步 — 初始化

cwd 是代理工作區根目錄;所有產出物都寫在 PROJECT_DIR = videos/<專案名稱>/ 下。<專案名稱>:使用使用者給定的目錄,否則從意圖中取簡短的 kebab-case 名稱(<主題>-motion)。不是工作區的基礎名稱或時間戳。

僅當 $PROJECT_DIR/hyperframes.json 不存在時:

PROJECT_DIR="${MOTION_GRAPHICS_DIR:-videos/<專案名稱>}"
mkdir -p "$(dirname "$PROJECT_DIR")"
npx hyperframes init "$PROJECT_DIR" --non-interactive --example=blank --skill=motion-graphics

init 會檢查已安裝的技能與 GitHub 上的最新版本,並在有任何過時的情況下更新全域集合。

約束: 永遠不要在根工作區執行 hyperframes init;永遠不要在 PROJECT_DIR 內嵌套另一個 hyperframes/;每個 Bash 命令(主代理 + 子代理)都是一個 (cd "$PROJECT_DIR" && ...) 子 shell — 永遠不要使用裸的 cd。

第 1 步 — 規劃(子代理:導演第 1 部分)

調度一個子代理。提示 = 完整的 agents/director.md + ## 調度上下文(SKILL_DIR / PROJECT_DIR / 使用者的請求 / Schema: <SKILL_DIR>/references/shot-plan-ir.md)。它必須:

  1. 決定:這是否需要搜尋?(第一個分支)
    • 否 → 選擇一個形式類別(kinetic-type / stat / charts / logo-reveal / lower-thirds / maps);內容由使用者提供;asset_needs: []。
    • 是 → 將一個搜尋計畫輸出到 asset_needs[](新聞 / 網頁 / 推文 / 圖片;雙極查詢)。具體的搜尋驅動類別(webpage / news / tweet / asset-fusion)將由第 2 步返回的內容類型確認,並在第 3 步最終確定。
  2. 寫一個草稿 shot-plan.json(信封 + 所選形式類別 或 搜尋意圖 + asset_needs + 一段鏡頭簡報)。架構:references/shot-plan-ir.md。

驗證:[ -s "$PROJECT_DIR/shot-plan.json" ] && echo ok || echo missing。

第 2 步 — 素材獲取 ◇(Bash:媒體使用,條件性)

如果 shot-plan.json.asset_needs 不為空,則解析資產(搜尋 / 生成 / 獲取 → 凍結的專案本地路徑 + 分類帳)。請參閱 phases/source/guide.md(包裝了 media-use resolve;搜尋驅動類別使用新聞/網頁/推文/圖片搜尋)。如果 asset_needs 為空,則跳到第 3 步。

優雅降級:如果搜尋/提供商不可用,則類別回退到無資產(在 context.log 中註明)。

第 3 步 — 設計(子代理:導演第 2 部分)

調度一個子代理(提示 = agents/director.md 第 2 部分 + 調度上下文,包括已解析的 assets/index.md(如果第 2 步已執行)+ catalog-map.md)。它根據可用資產設計鏡頭:選擇目錄區塊 + hyperframes-animation 規則/藍圖、佈局、動作、節拍,以及(對於 asset-fusion)element_positions + 吸色器調色板。最終確定 shot-plan.json(content.block + content.customize + 每個類別的內容)。

第 4 步 — 構建(子代理:建構者,優先重用)

在建構者的調度上下文中包含共享的動作原則。對於 charts 和 stat,也包含資料動態。建構者在編寫時間軸之前會閱讀這些指南。

調度一個子代理。提示 = 完整的 agents/builder.md + 調度上下文(shot-plan.json、catalog-map.md、該類別的 module.md、references/motion-vocabulary.md、references/builder-contract.md)。優先重用:npx hyperframes add <block> + 就地自定義;僅手寫空白部分 + asset-fusion 功能。輸出 compositions/index.html,遵循 HF 合約(在 window.__timelines 上暫停的 GSAP 時間軸、class="clip" + 穩定的 id、tl.seek(0)、確定性)。

第 5 步 — 驗證(Bash → 失敗時修復子代理)

(cd "$PROJECT_DIR" && npx hyperframes check .)
(cd "$PROJECT_DIR" && npx hyperframes snapshot --at <校樣時間點>)

選擇能顯示初始狀態、關鍵動作和最終停留的校樣時間點。在繼續之前,檢查生成的聯繫或快照表。在 lint、check 或快照失敗時,調度修復子代理(agents/finalize.md)進行一次就地修復,然後重新運行失敗的關卡。切勿僅僅為了隱藏缺陷而更改固定持續時間。

第 6 步 — 批准與渲染(Bash)

打開 Studio,然後問一個問題:“現在渲染,還是要做什麼更改?”。在修訂後,返回同一個關卡:

(cd "$PROJECT_DIR" && npx hyperframes preview --background)

僅在得到明確的渲染回答後才進行渲染:

(cd "$PROJECT_DIR" && npx hyperframes render . --skill=motion-graphics -q high -o ./renders/video.mp4)
# 透明疊加變體:--format webm(或 mov)

驗證輸出是否存在、非空且具有預期持續時間。最終交接時需說明產出名稱、實際持續時間、合成或影格 ID、校樣時間點以及已檢查的聯繫或快照表。標誌位於 /hyperframes-cli → references/preview-render.md。

恢復表

狀態從此繼續
無 shot-plan.json第 1 步(規劃)
shot-plan.json 有 asset_needs,無 assets/第 2 步(素材獲取)
shot-plan.json 最終版,無 compositions/index.html第 3/4 步(設計+構建)
compositions/index.html 存在,無校樣快照第 5 步(驗證)
檢查和校樣快照通過,無已批准的渲染第 6 步(批准)
已批准的渲染存在驗證輸出,然後報告

設計說明(維護者 — 執行時不閱讀此項)

  • 資產優先比率

… [因翻譯截斷]

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能