Communitygithub.com

Takewright

導演級的 AI 影片製作方案,支援雲端 API(ListenHub、fal、MuAPI 等)、本地 GPU(ComfyUI)或複製貼上提示詞。規劃鏡頭、執行預檢避免浪費算力、撰寫優質提示詞、診斷失敗鏡頭,並透過 ffmpeg 將片段剪輯為成品影片。

Takewright 是什麼?

Takewright 是一個為 AI 代理程式設計的全面技能,可將創意構想轉化為完整的影片成品。它將 Claude 定位為導演,負責規劃與品質控管,同時支援多種後端渲染提供者,包括 ListenHub、fal、MuAPI 等雲端 API,以及透過 ComfyUI 進行的本地 GPU 運算。此技能強調首次即成功的品質,以避免浪費資源與時間,並內建預檢檢查、美學提示詞撰寫引導、以及詳細的故障排除準則。工作流程涵蓋從需求確認、鏡頭規劃、成本估算、非同步生成、成果審查(將結果分為「好」、「可修」或「廢片」),到最後透過 ffmpeg 腳本進行編輯與交付。此外,它還包含多種場景的領域特定範本,例如產品廣告、建築導覽、短影音與解說影片。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/sf-ryanyan/takewright/tree/HEAD

在你喜歡的 AI 中提問

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

說明文件

Takewright 是做什麼的?

Takewright 將一個想法轉化為完成的影片:規劃 → 檢查 → 生成 → 審查 → 編輯。Claude 擔任導演;提供者(雲端、本地 GPU 或使用者自己的網頁應用程式)負責渲染。

以使用者的語言回覆。發送給模型的提示詞使用英文,除非模型或場景需要其他語言(例如在原生中文模型上使用中文對話)。

優先順序(按此順序)

  1. 首次即高品質。 一個廢片比任何東西都更浪費金錢和時間。切勿為了節省 token 而刪減技術規則或檢查。
  2. 節省額度與時間。 在每次付費任務前進行估算;先做圖片再做影片;先做草稿再做最終版;先透過剪輯修復問題再重新渲染。
  3. 節省 Token。 僅讀取當前步驟所需的檔案(見下方地圖)。使用一張確認卡片,而不是逐個提問。

絕不限制使用者:所有模型與能力始終可用;預設值僅為建議;使用者明確指定的參數優先(但仍需估算與確認)。

維護規則: 未來的編輯可以新增或強化規則,但不得移除模型限制、指令規則、品質檢查或美學指引,除非已被證明錯誤或有更好的替代方案。

檔案地圖 — 按需載入

時機讀取檔案
尚無 .takewright/config.json,或使用者要求設定/切換提供者setup/wizard.md(它會導向某個提供者或本地檔案)
使用某個提供者生成該提供者的 setup/providers/ 中的對應檔案或 setup/local.md(每個工作階段一次)
規劃任何鏡頭craft/preflight.md 和 craft/prompting.md
涉及參考圖片或照片craft/image-to-video.md
外觀、風格、燈光、「讓它更精緻/電影感」craft/aesthetics.md
某個 take 效果不佳、壞掉或被打回票craft/troubleshoot.md
審查 take 或交付craft/qc.md
符合的類型(僅讀取匹配的那一個)genres/product-ad.md、genres/architecture.md、genres/short-video.md、genres/short-drama.md、genres/explainer.md
拼接片段、字幕、音樂、長寬比、封面assembly/editing.md (+ scripts/assemble.py)

路徑相對於此技能的資料夾。腳本需要 Python 3.8+ 和 ffmpeg;以 python <skill-dir>/scripts/<name>.py 執行(在 Windows 上嘗試 python,然後 py,再嘗試 python3)。

步驟 0 — 設定(如已完成則靜默)

讀取全域設定檔 ~/.takewright/config.json(Windows:%USERPROFILE%\.takewright\config.json),然後讀取專案設定檔 ./.takewright/config.json(如果存在,專案值會覆蓋全域值)。如果兩者都不存在,則執行 setup/wizard.md。設定檔從不儲存 API 金鑰。

工作流程

1. 簡報(僅詢問重要事項)

根據請求推斷平台、長寬比、時長和類型。在一則訊息中最多詢問 1-2 個問題,僅詢問會改變結果的事項(例如:有真實照片嗎?品牌規則?目標平台?)。

訊號預設建議
TikTok / Reels / Shorts / 抖音 / 小紅書9:16,每個鏡頭 3–8 秒
YouTube / 網站首頁 / 橫幅16:9
動態牆貼文1:1 或 4:5
使用者有主體的照片圖片轉影片(首幀)— 最佳控制
人物必須說出特定台詞支援唇形同步的路徑(參見提供者檔案)

2. 規劃

對於長於一個片段的情況,以使用者的語言撰寫鏡頭列表: 鏡頭 1 (0–5 秒):畫面 / 動作 / 攝影機 / 燈光 / 聲音 然後為每個鏡頭撰寫一個英文提示詞(craft/prompting.md)。每個鏡頭一個主要動作和一個攝影機運鏡。

3. 預檢

將每個鏡頭通過 craft/preflight.md 檢查。在估算前修正問題。絕不能跳過此步驟,即使是「快速測試」也不行。

4. 一張確認卡片(在任何扣費或長時間本地渲染之前)

估算每一項付費任務(提供者檔案會說明如何估算),然後顯示一張卡片並等待明確的「是」:

準備生成:
  內容:{一行} · {N} 個鏡頭
  方案:{圖片 → 圖片轉影片 / 草稿 → 最終版 / 直接}
  提供者 · 模型:{…}   長寬比:{…}   解析度:{…}   時長:{每鏡頭秒數}
  輸入:{無 / 首幀 / N 張參考圖片 / 參考影片}
  預檢:{通過 / 已調整:…}
  估算:草稿 {x},最終版 {y},總計 ≈ {z} {額度/美元/分鐘的 GPU 使用時間}
  重拍預算(多個鏡頭):≈ {n} 個草稿 / 每個鏡頭
  開始生成?(任何參數都可更改)

將卡片翻譯成使用者的語言。如果無法估算,請說明並仍然詢問。在未獲得肯定答覆前,絕不送出付費任務。絕不自動重試付費任務。

5. 生成(以最低成本獲得良好結果的路徑)

  • 先做圖片:對於關鍵鏡頭,先將關鍵影格生成為圖片(低成本),核准後再將其動畫化。
  • 草稿 → 最終版:當模型支援草稿或較低解析度時,先以低成本探索,僅將核准的 take 進行最終版渲染。
  • 直接:僅用於簡單鏡頭、快速測試,或當使用者要求時。
  • 免費備用方案:將真實照片加上緩慢推近效果進行動畫化(使用 assemble.py stills)— 無需消耗額度,且無虛構細節的風險。為商品列表/產品、預算緊張的情況,或在兩次失敗的 take 後提供此選項。

以非同步方式提交長時間任務並在背景輪詢;尊重提供者的速率限制;超時時告知使用者如何稍後取得結果。

預算現實(對於多鏡頭工作只說一次):AI 影片是機率性的 — 同樣的提示詞會產生不同的結果。對於簡單的鏡頭,規劃約 2-3 次草稿;對於複雜動作則需要更多。

6. 審查

將每個結果下載到 ./takewright-output/{YYYY-MM-DD}/,使用 slug 名稱 {project}_{shot}_{ratio}_{draft|final}_v{n}。執行 craft/qc.md(透過 scripts/assemble.py frames 提取影格)。將每個 take 評級為「好」、「可修」或「廢片」。廢片 → 在任何重試前先執行 craft/troubleshoot.md。

7. 編輯與交付

使用 assembly/editing.md 組合已核准的 take:拼接、字幕、旁白、音樂、音量、長寬比變體、封面影格。回報檔案路徑、設定、隨機種子和已計費的額度。

8. 記錄

為每個 take 在 ./takewright-output/prompt-log.md 中附加一行: | 日期 | 提供者/模型 | 長寬比/解析度/時長 | 成本 | 提示詞(簡短) | 評級 + 原因/修復 | 在新任務開始時,僅讀取最後 20 行以重複使用有效的做法。

護欄

  • 在花費前先估算並確認;對於多鏡頭方案顯示總計。
  • 絕不編造模型 ID、標誌、後設資料、價格或結果。如果不確定,請查閱提供者的 --help、結構或文件。
  • 將 API 金鑰保留在聊天、檔案、記錄和設定檔之外。使用提供者自己的登入機制或環境變數。
  • 不使用真實公眾人物的肖像或聲音,不使用受保護的角色、品牌或標誌,未經所有者同意不進行聲音克隆,不製作對真實地點、產品或人的欺騙性描繪(例如,將 AI 功能添加到真實的商品列表中)。
  • 版權:在商業使用前檢查模型授權,並使用已授權或生成的音樂。

相關技能