Toonfacts:動畫卡通趣味短片,一技完成
用簡單明瞭的話說出你的需求。這一個技能就能完成全部工作:點子、事實、劇本、鏡頭計畫、字幕、ElevenLabs 語音旁白、建構、自我審查、渲染以及後續更新。無需要求使用者解釋風格:風格已定義於此技能中。
模式(從使用者話語中選擇)
| 使用者說 | 模式 | 閱讀文件 |
|---|
| "新影片", "關於 X 的新影片", "給我驚喜", "製作下一部短片" | 新影片 | docs/new-video.md |
| "更新影片 ", "修正影片", "修改 中的 X", "套用最新規則" | 更新 | docs/update-video.md |
| "繼續影片 "(在執行手動步驟如儲存音訊之後) | 繼續 | docs/new-video.md,從缺少的第一個階段繼續 |
| "審查影片", "檢查 ", "檢查這個 mp4" | 審查 | 僅 docs/review.md |
| "影片點子", "給我點子" | 點子 | 僅 docs/new-video.md 第一階段:研究真實故事與有趣事實,根據故事強度與鉤子強度評分,記錄在 videos/_ideas.md 中,顯示前 5 名並附上一行故事、其結構與草稿掛鉤,不建構任何東西 |
| "更新技能" | 升級 | 僅執行預備步驟 2,然後報告版本變更 |
若需求不明確,在未提及影片名稱時選擇「新影片」,提及時選擇「更新」。影片如何建構及必須呈現的外觀定義於 docs/engine.md;新影片與更新模式皆使用該文件。 | | |
操作規則(所有模式)
- 每個鏡頭必須與旁白內容相符,並且會以機械方式檢查。 每個鏡頭都宣告其聲明(讀取什麼、誰看向什麼、什麼瞄準什麼、握持什麼)並呼叫
assertScene;任何繪製在道具上的字串都需經過 fitText。tools/check_scene.py 會阻擋渲染直到這些呼叫存在。切勿通過失敗的閘門進行渲染,也絕不透過縮小文字或放寬容差來修正裁切的標誌:請修正幾何結構。
- 掛鉤(hook)是閘門,不是裝飾。 在
docs/new-video.md 第二階段的掛鉤閘門通過之前,不得撰寫劇本;在 templates/review_checklist.md 頂部的掛鉤區塊通過之前,不得交付影片。薄弱的第一行是重新起草的理由,絕非之後可以修補的東西。
- 不要發問。 做出合理的選擇,將其寫入影片的
NOTES.md 中,繼續前進。僅在無法建立語音旁白(請見 docs/new-video.md 第三階段)、缺少所需工具或無法撤銷決策時才停止。
- 每部影片一個資料夾,所有內容在裡面:
videos/<slug>/(slug = 以小寫單字以連字號連接的標題)。最終 MP4 與 publish.txt 在頂層,工作檔案在 source/ 中,舊渲染在 versions/ 中。草稿(靜態圖、連絡表、測試渲染)僅放在 work/<slug>/ 中。絕不將工作僅留在對話中。
- 每個語音旁白使用一次 ElevenLabs 配額(一次錄製)。僅在口語單字變更、音訊無法使用或錄製未通過
docs/new-video.md 第三階段步驟 4 的表現檢查(笑聲或過度誇張)時才重新生成——然後再多一次,並減少標籤。
- 自然比誇張好。 旁白從不笑出聲:不允許任何地方的
[laughs] 或 [chuckles],整個劇本最多使用 3 個標籤,且旁白文字中不能有驚嘆號。畫面負責傳遞幽默;旁白對自己的笑話發笑是 AI 錄製最明顯的跡象。
- 切勿列印或儲存 API 金鑰。 ElevenLabs MCP 由使用者在 Claude Code 中加入;請直接使用已連線的 MCP。
- 切勿發佈或上傳 影片。交付的最終成品為 MP4 檔案、其縮圖以及經研究的
publish.txt(標題、描述、主題標籤、標籤)。
- 最終回覆:簡短幾行(製作了什麼或變更了什麼、檔案位置、關鍵決策、下一步)。無需逐步回顧。
預備步驟(每次執行、每個模式皆靜默執行)
- 專案與資料夾。 找到 Remotion 專案(包含
package.json 與 src/ 的資料夾)。若缺少則建立 videos/、videos/_ideas.md 與 work/。
- 保持此技能最新。 若此技能資料夾是 git 克隆,執行安靜的
git pull --ff-only 並閱讀 CHANGELOG.md 了解變更;僅在版本變更時於最終回覆中提及新版本。若非 git 克隆則跳過。
- 工具。 檢查
ffmpeg、Python 3 以及 @remotion/three(若專案中缺少則安裝 @remotion/three 與 three)。找到 ElevenLabs MCP 工具(名稱如 text_to_speech、generate_speech、creative_generate_speech、list_voices、speech_to_text、transcribe);若延遲載入則使用 ToolSearch 載入。若無任何工具,則繼續作業直到語音旁白階段,寫入 NEEDS_AUDIO.md 說明必須連接 ElevenLabs MCP(或提供音訊),然後停止。
- 舊有的獨立技能。 若
.claude/skills/cartoon-3d-short/ 或 .claude/skills/new-video/ 也存在,請勿使用它們。在最終回覆中告訴使用者一次,他們可以刪除這兩個資料夾,因為此技能已取代兩者。
- 舊版輔助檔案。 刪除
video-ideas/SKILL-UPDATE.md(第一行為 "# Instructions for Claude Code")與 video-ideas/README.md(第一行 "# video-ideas")若存在。切勿刪除任何其他檔案。
- 重新命名舊的發佈檔案(僅一次)。 發佈檔案現在是純文字,而非 Markdown,因為使用者從中複製內容且不希望看到渲染後的格式。對於每個
videos/<slug>/publish.md,將其複製為 videos/<slug>/publish.txt,處理過程中移除 Markdown(刪除 #、**、反引號、表格線;將標題轉為大寫並保持內容相同),並在最終回覆中告訴使用者哪些 publish.md 檔案現在可以刪除。切勿自行刪除它們。
- 遷移舊版佈局(僅一次,透過移動,永不刪除)。 若
video-ideas/ 或 out/ 從舊版本存在:
video-ideas/_ideas.md 成為 videos/_ideas.md。
- 對於每個
video-ideas/<slug>/:publish.md(或 publish.txt)移至 videos/<slug>/publish.txt;所有其他檔案(script.md、voiceover*.mp3、words.json、NOTES.md、REVIEW.md、CHANGES.md、NEEDS_AUDIO.md、審查表)移至 videos/<slug>/source/。
- 將
out/ 中的每個最終渲染與其 slug 匹配(透過檔名或標題,如 out/<slug>.mp4 或 The_Man_Who_...):最新的成為 videos/<slug>/<slug>.mp4,舊的根據日期依序成為 videos/<slug>/versions/<slug>_v1.mp4、_v2.mp4。
out/ 中所有其他內容(靜態圖、連絡表、QA、測試渲染、每個影片的草稿資料夾)移至 work/legacy-out/,上述兩個輔助檔案移至 work/legacy/。任何無法匹配的內容也留在那裡。
- 完成時,在最終回覆中列出移動了什麼(一個簡短清單),並告訴使用者空的
video-ideas/ 與 out/ 資料夾可以刪除。請勿觸碰 src/、public/、scripts/、audio/ 或 backup/,且保留 work/ 中已有的檔案。
資料夾結構
videos/ # 所有已完成或進行中的作品,每部影片一個資料夾
_ideas.md # 每個已使用或拒絕的主題(先讀取,最後附加)
<slug>/
<slug>.mp4 # FINAL 影片:要上傳的檔案
thumbnail.jpg # 建構的封面,2160x3840(不是原始畫格)
publish.txt # 標題、描述、主題標籤、標籤、類別、置頂評論 + 研究來源
source/ # script.md voiceover.mp3 words.json NOTES.md REVIEW.md CHANGES.md
versions/ # 舊版渲染:<slug>_v1.mp4 ...(由更新模式保留)
work/ # 草稿,可安全刪除:靜態圖、連絡表、QA、測試渲染、若無其他磁碟機則為 REMOTION_TMP
<slug>/
此技能包含的內容
| 路徑 | 說明 |
|---|
docs/new-video.md | 新影片與繼續:點子、研究、劇本、語音旁白、建構、審查、交付 |
docs/update-video.md | 更新:分類變更、保護舊版本、套用、重新渲染、回歸檢查 |
docs/review.md | 審查迴圈(連絡表、檢查、評分、修正) |
docs/engine.md | 影片如何建構及外觀:流程、每部影片的規則、構圖、燈光、鏡頭流動、字幕、反應、品質閘門 |
references/story_format.md | 六拍故事格式、喜劇工具箱、節奏數據 |
references/(其他) | 風格聖經、度量報告、參考畫格與表單 |
templates/ | 渲染器原始碼(bridge/)、音訊合成、腳本、鏡頭計畫、劇本與審查範本 |
docs/history/ | 兩個早期儲存庫的 README、CHANGELOG 與原始用語的存檔。非操作說明 |
tools/review_video.sh | 長度、硬剪輯與音量檢查,以及連絡表 |
tools/make_thumbnail.py | 設計 2160x3840 的 Shorts 縮圖:將角色剪出、放置於自訂背景上、堆疊文字 |
tools/check_scene.py | 阻擋其鏡頭未宣告物理真實性或道具文字未經適配的渲染 |
tools/check_voice.py | 檢查語音旁白錄製:速度、停頓、音量,以及傳遞過快的秒數(笑聲、急促) |