AI 工具 15 min read

Motion Prompt 是什麼?168 個動畫名稱,實測講名稱比講「有質感」準

Motion Prompt 是日本創作者 Shohei Ohtaki 在 2026-10-14 開源的動畫名稱庫(MIT),7 包 168 個動作,每個都有編號、會動的示範、規格與參考程式碼,還能裝成 Claude Code skill。我用 Claude Haiku 對照 12 次:說「有質感」4 次都是 1.6~2 秒的模糊淡入,說「Mask reveal 0.6 秒」4 次都停在 0.7 秒左右——但貼完整規格時要講明只要進場。

Motion Prompt 是什麼?168 個動畫名稱,實測講名稱比講「有質感」準
本文目錄 · 7
懶人包
  • Motion Prompt 是日本創作者 Shohei Ohtaki 開源的動畫名稱庫(MIT),每個動作有編號、名稱、會動的示範、規格和參考程式碼。2026-10-29 查是 7 包共 168 個,IG 上流傳的「144 個」是 10-19 到 10-23 之間的數字。
  • 繁體中文名稱只做了 120 個(motion、camera、ui、lp、photo 五包),10-19 之後加的 motion2、lp2 兩包還沒有。
  • 我用 Claude Haiku 對同一個標題做三組對照,各生成 4 次。說「做得有質感」:4 次都是逐字模糊淡入,1.57~2.01 秒才停。
  • 說「用 #005 Mask reveal,0.6 秒」:4 次都是遮罩上滑,實測 0.61~0.72 秒停住。
  • 再把 CLI 給的完整規格貼進去:最像原作,但 4 次裡有 3 次連示範的退場也照做,標題播完就消失。附規格要多講一句「只要進場」。
  • 沒裝 skill 時,關鍵是「Mask reveal」這個業界通用詞加秒數,#005 編號只有裝了 skill 或附上規格才有意義。

這篇的起點是一支 IG Reel:「跟 AI 說『把標題做得有質感一點』,結果每次生成的動畫都不一樣?」影片介紹的是 Motion Prompt,主張只要告訴 AI「使用 #005 Mask reveal,0.6 秒」就能更精準。

我把 repo clone 下來跑了它的 CLI,再用同一個標題做了 12 次生成對照。結論是影片說對了一半:講名稱和秒數確實穩,但「有質感」組的問題不是每次不一樣,而是每次都一樣、只是不是你要的那種。

Motion Prompt 是什麼?

Motion Prompt 是一份「給 AI 用的名稱表」。作者在 README 裡寫,他之前發了幾支替動態設計動作命名的短片,有留言說卡住自己的不是想像力,而是不知道那種動作叫什麼。這個 repo 就是把那批名稱整理成可以查、可以直接貼給 AI 的形式。

Motion Prompt gallery 首頁,寫著 168 names、7 packs、MIT,右側有 npx skills add 安裝指令
項目內容(2026-10-29 查 GitHub API 與 repo)
作者Shohei Ohtaki(X @showheyohtaki)
授權MIT
建立2026-10-14;最後一次 push 是 10-23
規模7 包、每包 24 個,共 168 個
熱度739 星、92 fork
線上 galleryhttps://showheyohtaki.github.io/motion-prompt/
使用方式查名稱自己貼、gallery 勾選後複製、或裝成 Claude Code/Codex skill
七包的內容:
編號包內容繁中名稱
001–024motion動態設計動作有
025–048camera鏡頭運動與轉場有
049–072uiUI 元件名稱有
073–096lp網頁與 landing page 效果有
097–120photo照片風格、光線有
121–144motion2動態設計動作 第二包無
145–168lp2網頁效果 第二包無
IG 影片說 144 個,是 10-19 加入 motion2 之後、10-23 加入 lp2 之前的數字。繁中名稱是外部貢獻者在 10-20 用 PR #3 補上的,只涵蓋前五包,repo 裡 packs/*/README.zh-Hant.md 實際只有 5 份。英文 README 開頭那段「名稱一覽目前只有英文和日文」也還沒跟著更新。

每個名稱打開來長這樣:

Motion Prompt #005 Mask reveal 詳細頁,左邊是示範畫面與 How to ask an AI 範例句,右邊是 Copy prompt 按鈕與英文規格全文

左邊是一句可以直接講給 AI 聽的範例「Bring the title in with a mask reveal from below, 0.6 s, each line slightly after the one before.」,右邊的 Copy prompt 會帶出整段規格:分隔線何時長出、上下兩行各從哪裡滑進來、用哪條緩動曲線、何時退場。底下還連到 Canvas 參考實作和共用的 kit/motion.js。

怎麼裝、怎麼查?

官方給的安裝方式是:

npx skills add showheyohtaki/motion-prompt

裝好之後跟 Claude Code 說「Open the motion-prompt library」,它會打開 gallery,勾選想要的動作再按「Send to AI」送回 agent。這次我沒有把 skill 裝到全域,而是 clone 下來直接跑它附的 Node CLI(commit bd6bf08):

git clone https://github.com/showheyohtaki/motion-prompt
cd motion-prompt
node skills/motion-prompt/scripts/motion-prompt.mjs info
node skills/motion-prompt/scripts/motion-prompt.mjs search mask reveal title
node skills/motion-prompt/scripts/motion-prompt.mjs prompt 5

info 回報「Catalog: version 1.495bd9fdec · 168 elements」。search 的前三筆:

#005  Mask reveal  [motion / Entrances & text]  Headline text slides out from behind an invisible edge marked by a single line.
#133  Text mask  [motion2 / Text & shapes]  Heavy letters are cut out so that a moving seascape shows only inside them; ...
#017  Mask transition  [motion / Transitions & highlights]  A circle- or star-shaped window grows, showing the next scene inside it.

prompt 5 輸出的就是 gallery 上 Copy prompt 那一整段規格,後面實驗的 C 組用的就是它。

不想裝任何東西也可以:打開 gallery 或 繁中名稱表,找到名稱直接寫進 prompt。#005 的繁中範例句是「標題請用 Mask Reveal 從下方升起,0.6 秒,每一行稍微錯開。」

講名稱真的比講「有質感」準嗎?我做了三組對照

實驗設定:

  • 模型:Claude Haiku,用 Claude Code 2.1.312 的 claude -p --model haiku 跑。
  • 隔離:在空的暫存目錄、--tools ""、不載入任何 MCP,確保模型讀不到本機的 Motion Prompt 檔案。
  • 共同需求:540×220、深藍底,兩行標題「Hello!」與「Nice to meet you」,輸出單一 HTML,載入後播一次。
  • 三種說法各生成 4 次:
- A:「幫我把這個標題的進場動畫做得有質感一點。」 - B:「標題進場請用 Motion Prompt #005 Mask reveal(遮罩揭露),0.6 秒,每一行稍微錯開。」 - C:B 的那句話,再貼上 prompt 5 輸出的完整規格。
  • 量測:用 Playwright 每約 30ms 截一張,和最終畫面比對,量出動畫實際停在哪一秒。
逐格結果: A、B、C 三組各 4 次生成在 0.15、0.3、0.6、1.0 秒與最終畫面的逐格截圖對照,A 組逐字模糊淡入,B 組遮罩上滑,C 組有珊瑚色分隔線且 C-1 到 C-3 最後畫面是空的
組別偵測到的手法動畫停止時間(4 次)最終畫面
A「有質感」淡入+模糊+縮放,逐字出現1.90/1.73/2.01/1.57 秒標題完整
B 名稱+秒數遮罩裁切,從下方滑入,無淡入0.72/0.70/0.71/0.61 秒標題完整
C 名稱+完整規格遮罩裁切+珊瑚色分隔線,Canvas 繪製2.25/2.24/2.24/0.47 秒3 次空白,1 次標題完整

A 組:不是每次不同,是每次都用它的預設

IG 影片說「每次生成的動畫都不一樣」。在 Haiku 上我看到的是另一回事:4 次都做成逐字模糊淡入,連字母出現的節奏都很接近。模型對「質感」有一套固定答案,只是那套答案不是你腦中那一種,而且 1.6~2.0 秒的長度也沒有人決定過。

想要的如果剛好是模糊淡入,A 組也能用。問題在於你沒辦法用「更有質感」把它推往別的方向。

B 組:一句話就鎖住手法和長度

4 次都是文字從看不見的邊界後方滑上來,沒有任何淡入,停在 0.61~0.72 秒。4 支的 CSS 都宣告 0.6s,多出來的是「每一行稍微錯開」:以 B-1 為例,第二行延遲 0.12 秒,所以停在 0.72 秒。

這組我沒有給規格,模型也讀不到 repo。它能做對,靠的是「mask reveal」本來就是動態設計的通用說法;#005 這個編號對沒裝 skill 的模型沒有意義,拿掉應該也一樣。這是推論,這次沒有另外跑「只講 Mask reveal 不帶編號」的組別。

C 組:最像原作,但連退場一起抄

附上完整規格之後,4 次都出現原作的珊瑚色分隔線、上下兩行反向滑入,是三組裡最接近 gallery 示範的。

但規格寫的是示範的一整個循環:「One pass per 2.35 s」,包含 1.7 秒之後上排往上飛走、下排往下退出。4 次裡有 3 次照做,結果標題播完就消失,最後畫面是一片深藍。只有 C-4 停在完成畫面。

所以把規格貼給 AI 時,要另外講一句「只要進場,結束後停在最終畫面」。這是 Motion Prompt 規格的寫法造成的,它描述的是會循環播放的示範,不是一個可以直接放進專案的進場動畫。

什麼時候該用 Motion Prompt?

情境建議
腦中有畫面但叫不出名字開 gallery 看,找到名稱再寫 prompt。這是它最強的用途
已經知道名稱直接寫「名稱+秒數+哪個元素怎麼動」,不用裝 skill
要跟原作幾乎一樣附完整規格或裝 skill,並講明只要進場或要循環
要中文名稱前五包有繁中表,motion2、lp2 目前只有英文、日文
要整支影片的節奏與編排它只處理單一動作,鏡頭順序和節奏還是要自己設計
如果你要的是「替一段模糊描述找到正確術語」,Emil Kowalski 的 animation-vocabulary skill 是反查型的做法,我在那篇也做過觸發實測。Motion Prompt 則是正查:先看會動的示範,再拿名稱和規格去要。想把程式動畫直接做成影片,可以接著看 用 Claude 自建 Motion 的那篇。

這次實驗踩到的坑與限制

  • 每組只有 4 個樣本,模型只測了 Haiku。Sonnet、GPT 在「有質感」組會不會更發散,這次沒測。
  • 第一輪實驗作廢過一次:B-2 寫出了原作 kit 的函式名,推斷是 claude -p 讀到了工作目錄裡的規格檔。後來改在空目錄加 --tools "" 全部重跑,上面的數字都是重跑的結果。
  • 停止時間是比對截圖量出來的,取樣間隔約 30ms,數字有幾十毫秒的誤差。

延伸資源

常見問題

Motion Prompt 要付費嗎?可以商用嗎?

不用付費。repo 是 MIT 授權,名稱、規格、參考程式碼都可以用在商業專案,保留授權聲明即可。

沒有 Claude Code,Motion Prompt 還有用嗎?

有。名稱表和 gallery 本身不需要安裝,把名稱和秒數寫進任何 AI 的 prompt 都行;gallery 的「Copy picks」會把規格和示範網址一起複製,可以貼進 ChatGPT 之類沒有 skill 的對話。

Motion Prompt 和 animation-vocabulary skill 差在哪?

方向相反。Motion Prompt 是先看示範、再拿名稱和規格去要,附有參考程式碼;animation-vocabulary 是把你的模糊描述反查成標準術語,只負責命名、不產生程式碼。兩個都是免費的 skill,可以一起裝。

為什麼我的 AI 照著規格做,動畫播完標題就不見了?

Motion Prompt 的規格描述的是示範的一整個循環,包含退場。我的實驗裡貼完整規格的 4 次有 3 次照做了退場。prompt 裡加一句「只要進場,結束後停在最終畫面」就能避開。

author
陳
陳彥彤

AI 工程師 · AI 顧問。Java 後端 8 年、AI 工程師 2 年。AI 內訓 · AI 導入顧問 · 前後端與雲端培訓。

support

覺得文章有用可以到 GitHub 給個 star,或是透過信箱聊聊 AI 內訓、AI 導入顧問或前後端 / 雲端培訓。