Communitygithub.com

cut-as-code

動画編集をコード駆動で行うためのエントリーポイントスキル。プロジェクト状態のルーティングと復元を担当し、具体的な編集作業は各リーフスキルに委譲します。

cut-as-code とは?

このスキルは、AIエージェント(Claude Codeなど)が動画編集プロジェクトをコードベースで管理・実行するためのエントリーポイントです。プロジェクトの状態管理とタスクルーティングに特化しており、実際の編集判断(カット、カラーグレーディング、キャプション追加など)は個別のリーフスキル(例:/video-cut, /video-color-grade, /video-add-captions)が担当します。 このスキルの核心は「ルーティングは読み取り専用」という原則にあります。プロジェクト状態(work/project.json)を読み取り、ユーザーの要求に基づいて最適なリーフスキルに処理を委譲します。複数の操作が要求された場合、定義された正規の順序(カット→カラーグレード→Bロール→キャプション→コンテンツカード→グラフィックモーション)で実行し、共有成果物を一度だけビルド・レンダリングします。 不必要なユーザー確認は省き、曖昧なルーティングや不足入力のみを質問します。また、ショート動画作成(/video-to-shorts)はメイン動画完成後に最終化フェーズを実行するなど、依存関係を考慮した段階的フローを提供します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/WhiteTowerAI/cut-as-code/tree/main/skills/cut-as-code

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Cut as Code エントリーポイント

動画編集のコード駆動ワークを開始するための必須エントリーポイントです。ルーティングとプロジェクト状態の復元のみを担当します。選択されたリーフスキルが編集判断、レビューゲート、スクリプト、レンダリング詳細、および自己チェックを所有します。

1. プロジェクト状態から開始

最初に一致する行を適用します。下位の行は評価しないでください。

状態アクション
ユーザーが既存プロジェクトに対する特定の操作を指定その操作に必要な状態のみを検査し、所有スキルをロード。一般的な取り込みはスキップ。
明示的なプロジェクトルートに work/project.json が存在work/project.json、work/timeline.json、および選択された操作の計画/証拠のみを読み取り。記録された状態から再開。所有者が一意でない場合は、ルーティングに関する質問を1回行う。
ユーザーがソースファイルまたはURLを提供。プロジェクトなし、明確な成果物あり/video-understand をロードしてプロジェクトと共有証拠を初期化し、要求された操作に続行。
プロジェクト/ソースなし、または意図された成果物が特定できない不足しているプロジェクト/ソースと希望する結果を尋ねる簡潔な質問を1回行う。スキルはまだ開始しない。

プロジェクトルートは明示的である必要があります。リポジトリルートを動画プロジェクトとして扱わないでください。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
字幕、キャプション、またはカラオケキャプション追加/video-understand の後に /video-add-captions
オリジナルと実際の最終ピクセルをソース時間で比較検証済みのメイン配信が存在する場合、/video-edit-compare
ショートフォーム範囲の選択、レビュー、計画/video-understand の後に /video-to-shorts。要求されたコンテンツカードとキャプションの前に実行
承認された横型または縦型のショートフォーム派生物の最終化と抽出検証済みのメイン配信が存在する場合、/video-to-shorts を再開
既存のProject Protocol配信のコンパイルまたはレンダリング選択されたすべてのアクティブ操作がそれぞれのゲートを通過した後、/video-understand から build_render_plan.py と render_project.py を使用

「この動画を編集して」のような汎用的な要求は、/video-cut を一意に選択しません。既存のプロジェクト状態または周囲の要求から望ましい出力が明確でない限り、ルーティングに関する質問を1回行います。

3. 複数操作要求のオーケストレーション

ユーザーが要求した操作のみを凍結します。ルートテーブルをデフォルトパッケージに変えないでください。共有理解の前提条件を一度実行します。選択されたメインシーケンス操作を正規の順序で実行します。

cut -> color-grade -> b-roll -> captions -> content-cards -> graphic-motion

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 と必要なすべてのサブスキルを行動前に読み取ります。1つの操作の場合は、一度ハンドオフしてこのエントリーポイントを離れます。要求された複数操作実行の場合は、一度に1つの所有者に入ります。その自己チェック後、プロジェクト状態を回復し、取り込みを再開せずに次の凍結操作に続行します。

すでに曖昧でないルートをユーザーに承認するよう求めないでください。ユーザーインタラクションは、不足入力、真のルーティングの曖昧さ、認証情報、または所有スキルが必要とする編集/レビュー判断にのみ属します。ユーザーが明示的に委任しない限り、エージェントの決定を必要な人間の決定に代用しないでください。

例

「理解済みでカット済みのこのプロジェクトにキャプションを追加して続行」の場合、現在のプロジェクトとタイムラインのリビジョンを読み取り、/video-add-captions に入ります。再文字起こし、再カット、またはキャプションが意図されたルートかどうかの確認は行いません。無関係な保留中の操作はルートを変更しませんが、アクティブな未検証の操作は最終的な共有レンダリングをブロックする可能性があり、コンパイラによって報告される必要があります。

失敗ルール

  • 無効なプロジェクト状態:正確な検証問題を報告。その上に再初期化しない。
  • 欠落したリーフスキルまたは前提条件:停止して名前を指定。記憶から再構築しない。
  • 欠落したソース/プロジェクトパス:単一のルーティング質問で尋ねる。
  • 競合する要求出力:どの成果物が現在の実行を所有するか尋ねる。
  • 既存のユーザー変更またはアーティファクト:保持し、記録された状態で作業。

Individual skills in this repo

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

関連スキル