Communitygithub.com

cut-as-code

這是 cut-as-code 影片工作流程的強制入口點,負責路由、專案狀態恢復與多操作協調。

cut-as-code 是什麼?

此技能作為 cut-as-code 影片工作的強制入口點,嚴格負責路由決策、專案狀態恢復以及多操作工作流程的協調,而不參與任何編輯、渲染或審查決策。它根據預先定義的狀態表,從 `work/project.json` 與 `work/timeline.json` 等共享清單讀取專案狀態,並根據使用者的交付成果,將任務導向正確的葉子技能(例如 `/video-understand`、`/video-cut`、`/video-color-grade` 等)。它確保在進行時間線變更操作(如剪輯)之前完成所有必要前提工作,並以嚴格的順序執行選定的多操作請求,以避免衝突,並維護共享專案工件的一致性。此入口點專為 Claude Code 與 Cursor 等支援 SKILL.md 的 AI 代理平台設計,透過防止不必要的重新執行與狀態損毀,促進模組化、可恢復且可靠的影片製作工作流程。它明確禁止使用者核准無歧義的路由,並將使用者互動限制在輸入缺失、路由不明確、憑證或所有者技能要求的審查決策上。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/WhiteTowerAI/cut-as-code/tree/main/skills/cut-as-code

在你喜歡的 AI 中提問

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

說明文件

Cut as Code 入口點

請將此作為 cut-as-code 影片工作的強制入口點。僅負責路由與專案狀態恢復。所選的葉子技能負責編輯決策、審查關卡、腳本、渲染細節與自我檢查。

1. 從專案狀態開始

套用第一個符合的資料列。不要評估較低層級的列。

狀態動作
使用者指定對現有專案進行特定操作僅檢查該操作所需的狀態,然後載入其所有者技能。跳過一般擷取。
明確的專案根目錄包含 work/project.json讀取 work/project.json、work/timeline.json,以及僅所選操作的計畫/證據。從記錄的狀態恢復。若所有者不唯一,則提出一個僅關乎路由的問題。
使用者提供來源檔案或 URL,無專案,且有明確的交付成果載入 /video-understand 以初始化專案與共享證據,然後繼續進行要求的操作。
無法識別專案/來源或無意圖的交付成果提出一個簡潔的問題,請求提供缺失的專案/來源與期望的結果。請勿立即啟動技能。

專案根目錄必須明確;切勿將儲存庫根目錄視為影片專案。將 work/project.json 視為唯一的共享清單。根據操作 status、revision、based_on、check 與渲染狀態來判斷進度,而非根據目錄是否存在。不要重新執行已驗證的工作。若缺少相依性或相依性已過期,請先完成該相依性,然後恢復要求的操作。

路由是唯讀的。在決定將任務發送到何處時,切勿修復、重設、核准、移除或啟動操作。

2. 依交付成果路由

比對要求的輸出,而非順帶提及的關鍵字。

要求的結果所有者技能或工作流程
探測、逐字稿、客觀分析、語義理解或新專案初始化/video-understand
緊湊、縮短、移除薄弱環節或建立初剪/粗剪先執行 /video-understand,再執行 /video-cut
校正色彩、建立/選擇風格或交付/套用 LUT/video-color-grade;僅當使用者明確要求不交付 Project Protocol 時,才使用其獨立路徑
加入與逐字稿時間同步的視覺覆蓋片段先執行 /video-understand,再執行 /video-add-b-roll
加入有來源的動態圖形或動畫語義疊加先執行 /video-understand,再執行 /video-add-graphic-motion
加入標題、下方三分之一、統計資料、引言、章節或行動呼籲先執行 /video-understand,再執行 /video-add-content-cards
加入字幕、隱藏字幕或卡拉 OK 字幕先執行 /video-understand,再執行 /video-add-captions
比較原始素材與來源時間中實際的最終像素驗證的主要交付成果存在後,執行 /video-edit-compare
選取、審查並規劃短格式範圍先執行 /video-understand,再執行 /video-to-shorts;請在要求的內容卡片與字幕之前執行此步驟
完成並提取已核准的橫向或直向短格式衍生作品驗證的主要交付成果存在後,從 work/project.json 記錄的狀態恢復 /video-to-shorts
編譯或渲染現有的 Project Protocol 交付成果在每個選定的活躍操作通過其自身關卡後,使用來自 /video-understand 的 build_render_plan.py 與 render_project.py

諸如「編輯此影片」這類的通用請求並未唯一選取 /video-cut。除非從現有的專案狀態或周遭請求中可清楚看出期望的輸出,否則請提出一個路由問題。

3. 協調多操作請求

僅凍結使用者要求的操作;切勿將路由表變成預設套件。執行一次共享理解的前提條件。以規範順序執行選定的主序列操作:

剪輯 -> 調色 -> B-roll -> 字幕 -> 內容卡片 -> 圖形動畫

對於包含 Shorts、內容卡片或字幕的請求,請使用此階段流程:

/video-understand
-> /video-to-shorts 僅規劃與候選審查
-> /video-add-captions
-> /video-add-content-cards
-> /video-add-graphic-motion
-> 編譯並渲染一次共享的主要交付成果
-> /video-to-shorts 完成並提取已核准的衍生作品

在 Shorts 規劃之前,請先完成任何要求的時間線變更操作(例如 /video-cut);變更後的 work/timeline.json 會使候選核准失效。Shorts 規劃會寫入共享的計畫/審查狀態,且不得建立 final.mp4 或 final/shorts/ 下的任何內容。依此相對順序,字幕、內容卡片與圖形動畫會接著加入它們自己的共享計畫與疊加貢獻。當僅選取任意配對時,也適用相同順序:字幕優先,內容卡片其次,圖形動畫最後。在每次交接前,請重新讀取 work/project.json。當葉子技能可能寫入 work/project.json、work/timeline.json、操作計畫或共享渲染成品時,請勿同時執行它們。在所有選定的活躍操作通過驗證後,再建置並渲染主要交付成果一次。針對該經過驗證的交付成果,執行 /video-edit-compare 以及 /video-to-shorts 的完成/提取階段;短格式作品仍位於 sequences.main.operations 之外。

對於 /video-add-content-cards 與 /video-add-graphic-motion,請為完整的線索保留每位主要或前景人物、說話者、主持人、受訪者或語義重要人物的可見面部與頭部輪廓。僅背景中非敘事或視覺焦點的附帶人員可豁免;對於不確定的情況,請予以保護。若疊加層觸碰到受保護的面部或頭部,請先重新定位,然後再縮放或重新設計;當無法找到合規位置時,則跳過該線索。

當所有者技能允許時,全部跳過或零線索的結果是有效的。請勿為了保持操作活躍而憑空發明填充性工作。

4. 交接,然後離開

在執行之前,請先讀取所選技能的完整 SKILL.md 以及所有必要的子技能。對於單一操作,交接一次,然後離開此入口點。對於要求的多操作執行,請一次進入一個所有者;在其自我檢查之後,恢復專案狀態,並繼續執行下一個凍結的操作,無需重新開啟擷取程序。

請勿要求使用者核准已明確無歧義的路由。使用者互動應僅限於缺失的輸入、真正的路由不明確、憑證或所有者技能要求的編輯/審查決策。除非使用者明確授權,否則切勿以代理程式的決策取代必要的人類決策。

範例

對於「繼續此已理解並已剪輯的專案,加入字幕」,請讀取目前的專案與時間線修訂版本,然後進入 /video-add-captions。請勿重新轉錄、重新剪輯或詢問字幕是否為預期路由。未結的待處理操作不會改變路由,但活躍的未驗證操作可能會阻擋最終的共享渲染,編譯器必須報告此情況。

失敗規則

  • 無效的專案狀態:報告確切的驗證問題;切勿在其上重新初始化。
  • 缺少葉子技能或前提條件:停止並指名;請勿憑記憶重建。
  • 缺少來源/專案路徑:在單一的路由問題中要求提供。
  • 要求的輸出衝突:詢問哪個交付成果擁有目前執行週期的所有權。
  • 現有的使用者變更或成品:予以保留,並以記錄的狀態進行處理。

Individual skills in this repo

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

相關技能