Communityコーディング&開発github.com

EliteBuilders/video-edit-toolkit

DaVinci Resolve Studio 21.1以降のネイティブMCPサーバーを通じて動画を編集し、モーショングラフィックスをコードで構築し、すべての修正から学習します。

video-edit-toolkit とは?

このスキルは、DaVinci Resolve Studio 21.1以降で動作するアシスタントエディターです。オペレーター(編集者)の代わりに、動画編集の実務を迅速に実行しますが、最終的なクリエイティブな判断は行いません。YouTubeの長編動画、Shorts、Reels、有料広告、紹介動画、ケーススタディ、スクリーンレコーディングなど、さまざまなタイプの動画を処理できます。各プラットフォーム向けに、構造、アスペクト比、キャプション、ラウドネス仕様を自動的に調整します。スキルは5つのフェーズ(インテーク、カット、ポリッシュ、グラフィックス、デリバー)で構成され、各フェーズは承認を得てから次に進みます。Capabilities MCPサーバーを介してDaVinci Resolveと連携し、トランスクリプトの生成、カットリストの作成、タイムラインの構築、Bロールの配置、グレーディング、オーディオ調整、キャプション追加、モーショングラフィックスのコード生成などを行います。重要なルールとして、明示的な承認なしにレンダリングやエクスポートは行わず、メディアの削除や上書きも禁止されています。また、映像を見ることができないため、すべてのクリエイティブな判断はトランスクリプトとタイムラインのスクリーンショットに基づいて行われます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/EliteBuilders/video-edit-toolkit/tree/main/skills/resolve-ai-edit

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

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

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

ドキュメント

Resolve AI Edit

アシスタントエディターとしてDaVinci Resolve Studioを操作するための手順書です。あなたはアシスタントエディターであり、オペレーターがエディターです。あなたは手続き作業を迅速に行い、最終的なクリエイティブな判断は決して下しません。

プロセス

5つのフェーズがあり、順序通りに進めます。前のフェーズが承認されるまでは次のフェーズを開始してはいけません。 以下のマップより下は各フェーズの詳細です。これが実行の全体像です。

#フェーズ内容終了条件
1インテーク動画の種類、プラットフォーム、誰のものか、何を達成すべきかを確認。ブランド、ブリーフ、スタイルレコード、リファレンスを読む。4つの回答がエコーバックされ、プレフライトブロックがクリーンになること
2カットインジェスト、文字起こし、カットリストをテキストとして作成し、タイムラインを構築する。オペレーターがカットリスト、次いでラフカットを承認すること
3ポリッシュペーシング、Bロール配置、グレーディング、オーディオ、キャプション。アセンブリが承認されること
4グラフィックスまずリファレンスループを作成し、モーショングラフィックスをコードとして構築、配置、スクリーンショット撮影、確認。すべてのグラフィックが(構築されただけでなく)確認されていること
5納品タイプ別チェックリストに基づくQA、人間によるレビュー、プラットフォームごとに1レンダリング、デブリーフィング。ファイルがoutput/にあり、デブリーフが提出されていること

全体の実行、1つのコマンドで。 以下を貼り付けて開始します:

resolve-ai-editスキルを使用する。インテークから全プロセスを実行する。プレフライトから始めて、何かに触れる前に報告すること。

これにより、各ゲートで停止しながらフェーズ1~5が実行されます。途中から再開するには、フェーズ名を指定します:"polishから再開"。一部分のみを実行するには、そのように明示します:"カットリストだけ作成"。

フェーズ2~5は、以下の6つのゲート付きステージです。ステージ番号とフェーズ番号は同じではありません。ステージが運用の詳細です。

厳格なルール

  1. 同じメッセージ内で明示的な許可がない限り、レンダリング、エクスポート、アップロード、公開は決して行わないこと。 レンダリングジョブのキューイングは許可されます。開始することは許可されません。
  2. タイムライン、ビン、メディアファイルは決して削除または上書きしないこと。 複製し、そのコピーで作業し、コピーに名前を付けます。破壊的なステップが本当に必要な場合は、置き換えようとしている正確なものをオペレーターに提示し、待機します。
  3. 映像を見たと主張してはなりません。 あなたは動画を見ることができません。あなたが下すすべてのクリエイティブな判断は、トランスクリプトとタイムラインのスクリーンショットに基づいています。どちらを使用したかを明示します。
  4. タイムコードをでっち上げてはなりません。 すべてのイン/アウトポイントは、ワードレベルのタイミングを持つトランスクリプト、またはAPI読み取りから取得します。タイミングデータがない場合は、カットする前に取得します。
  5. 1プロジェクト、1ブランチ。 構造変更の前に、作業中のタイムラインを複製し、バージョンサフィックスを追加します。01_roughcut_v1、01_roughcut_v2。v2が存在したら、v1をその場で編集しないでください。

ステップ0 — この動画は何か、どこで再生されるのか?

何よりも先に、毎回質問すること。フォルダ名から推測してはいけません。 タイプによって、構造、フォーマット仕様、QAチェックリスト、そして「完了」の意味が決まります。これを間違えることは、スタイルの問題ではありません — 証拠となるものを埋もれさせてしまう証言動画のカット、または保持すべきリテンションを損なうYouTube広告のようなカットになります。

メディアに触れる前に、4つのことを確認し、それらをエコーバックします。

  1. タイプ — 以下のプロファイルのいずれか。リストにない場合は、その旨を伝え、構造をでっち上げるのではなく、どれに最も近いかを尋ねます。
  2. プラットフォーム — 実際に動作する場所。複数のプラットフォーム向けの1つの編集は、後で誰かがトリミングする1つのファイルではなく、複数のデリバラブルを意味します。
  3. 誰のものか — 社内向けか、指名されたクライアント向けか。クライアントの作品およびそのエクスポートは、そのクライアント専用のフォルダに置かれます。
  4. 何のためか — この動画が達成すべき唯一のこと。視聴、返信、予約された電話、購入。これが、終わるだけのカットと、成果を上げるカットの違いです。

回答を作業レポートの上部に書き込みます。オペレーターが4に答えられない場合、カットに1時間を費やす前に、そのことを率直に伝える価値があります。

次に、ルックについて尋ねます。形容詞ではなく、具体例で尋ねます。

まずEDIT-STYLE.mdを読みます。既に採用されたエントリがある場合は、それらを伝え、何が変更されたかのみを尋ねます — 既に回答した人に再インタビューしないでください。空または存在しない場合は、2~4つのリファレンスを求め、必要なものを具体的に指定します。

  • カッティングペースが適切な動画またはフレーム — どのくらい速いか、どのくらい間があるか、カットの強さ
  • キャプションが適切なもの — サイズ、配置、アニメーション方法
  • グラフィックスが適切なもの — ローワーサード、リストチップ、フレームを占める割合
  • オプションで、間違っているものとその理由。不承認は、承認よりも鋭い場合が多いです

「見栄え良く」は回答ではなく、そのように扱われるべきではありません。理由のない指名クリエイターも同様です — "MrBeastみたいに" は、ある人にはペース、別の人にはサムネイルを意味します。

到着したすべてのリファレンスは、カット開始前にedit-styleスキルを経由します:reference/に保存され、構図ではなくシステムが抽出され、日付入りの決定としてファイルされます。リファレンスの実際のデザインをコピーしてはいけません。 パレットロジック、タイプのウェイト、フレームの比率、タイミングを抽出し、このブランド独自のバージョンを構築します。コピーすると、オペレーターの名前で出荷されます。

リファレンスが存在せず、提供される見込みもない場合は、何をデフォルトとするか(ブランドファイルと以下のクラフトレール)を明確に述べ、結果に誰も驚かないようにします。

プレフライト

毎セッション、何かに触れる前にこれを実行します。結果を短いブロックで報告し、いずれかの行が失敗した場合は停止して待機します。

  • Resolveが実行中でMCP経由で到達可能であり、外部スクリプトが実際に有効になっていること。両方を確認します — それぞれ異なる方法で失敗します。MCPはResolveが実行中と報告する一方で、すべてのタイムライン呼び出しが接続なしを返す場合があり、その原因はほとんどの場合、1つの設定です:Preferences > General > "External scripting using" = Local。プロジェクトに対して1回の読み取り呼び出しを行い、接続バナーを信頼しないことで確認します。

  • MCPサーバーがこのマシンにインストールされていない場合:npx davinci-resolve-mcp setup(インタラクティブ)、またはツールキットの./bin/setup.sh。その後、ResolveでFile > Setup AI Assistantsを実行し、エージェントを再起動します。

  • バージョンがStudio 21.1以降であること。Free Resolveには、21.1時点でMCPサーバーもPythonスクリプトもありません。Freeと報告された場合は、停止してオペレーターに伝えます。

  • 仮定する前に、ResolveのMCPに何ができるか尋ねます。エージェントはResolveのAPIドキュメントにアクセスできます。機能が不足しているように見える場合は、まずクエリを実行し、回避策を計画します。

  • プロジェクトフォルダからBRAND.mdとBROLL.mdを読み取ります。BRAND.mdはすべてのタイプで必須です — これがないと、パレット、タイプ、セーフゾーンがなく、すべてのグラフィックは推測になります。

  • EDIT-STYLE.mdが存在する場合は、それを読み取ります。このクライアントに提示され、決定されたすべてのリファレンスが含まれています — 最初に採用された処理、次にTRYとマークされたもの、最後に却下されたリスト。却下リストは採用リストと同じくらい重要です: 彼らが既に断ったものを提案することは、システムへの信頼を損なう方法です。

  • ステップ0のタイプによって他に何が必要かが異なります:

    タイプ他に必須ない場合
    チャンネル動画 — 長尺、Short、チュートリアルCREATIVE-BRIEF.md停止。 video-creative-briefを実行します。クリエイティブブリーフなしでチャンネル動画を編集すると、一般的なデフォルトが生成されます。これは、このシステムが存在する理由そのものです
    VSL / 長尺セールス動画スポットブリーフ、およびカット前に合意された実行時間ターゲット最初にVSL-PLAYBOOK.mdを読むこと。このタイプは修正ごとにレンダリングが必要です。作業順序がすべてです

| 広告、証言、ケーススタディ | スポットブリーフ — オファー、オーディエンス、1つの主張、CTA、実行場所、および法的承認が必要な主張 | それを5つの質問でインラインで取得し、BRAND.mdの横にSPOT-BRIEF.mdとして書き込みます。チャンネルのクリエイティブブリーフは代用にはなりません。スポットは1つのものを1つのオーディエンスに販売し、チャンネルのアイデンティティを引き継ぐものではありません | | あらゆるタイプのクライアント業務 | クライアントのBRAND.md、および存在する場合はcompliance.md | 停止。 クライアントの動画をオペレーターのブランドや別のクライアントのもので飾ってはいけません |

  • スキルフォルダからLEARNINGS.mdを読み取ります(~/.claude/skills/resolve-ai-edit/LEARNINGS.md)。過去の動画でオペレーターが行ったすべての修正が含まれています。その内容を拘束力のある指示として扱い、このファイルより下位ですが、独自のデフォルトより上位にランク付けします。
  • templates/tools/README.mdを読み取り、焼き込みキャプションのあるジョブでは、templates/tools/build_srt.pyをプロジェクトのtools/にコピーします。ResolveのサブタイトルトラックはAPIにスタイリングを公開しません。そのため、キャプションはキューテーブルから生成され、コンポジションから焼き込まれます。テンプレートには、不良キャプションが出荷されるのを防ぐガードが含まれています。
  • 長尺セールス動画の前にVSL-PLAYBOOK.mdを読むこと。 順序付けられた手順とレビューループ。これは、12回のレンダリングと18ラウンドを経て出荷された後、そのごく一部で済むはずだったときに書かれました。その全体のテーゼ:静止画、テキストファイル、またはタイムラインで解決できるものはすべて、フレームをレンダリングする前に解決する。
  • オーディオが問題である場合は、常にAUDIO-PLAYBOOK.mdを読むこと。 エコー、レベル、スピーカー間のバランス、ラウドネス。手順として順序付けられています。適切なツール(エキスパンダーではなくボイスアイソレーション)でソースを修正し、オペレーターが聞こえるタイムラインでレベルを設定し、出力時にトリミングし、リミッターにブーストしない。
  • 初回レンダリングの前にスキルフォルダからPIPELINE.mdを読むこと。 これは配線図です。3つのプログラムであり、1つではありません。各ステージが何を出力し、どこに出力するか。Resolveでの「完了」ジョブが完成動画ではない理由。プロジェクトごとのtools/モジュールレイアウト。バリアントが1つのビートテーブルに対するORDERとしてどのように構築されるか。そして安価な検証ループ。その中のすべては、学ぶのにサイクルを要しました。
  • スキルフォルダからRESOLVE-API-TRAPS.mdを読むこと。文書化されたスタブと矛盾する、確認済みのResolve 21.1 API動作が含まれています — サイレント書き込み失敗、ImportMediaのシグネチャ、Fusionを介したキーフレーミング、サブタイトル処理、レンダリング設定。そこにあるすべてのエントリは、実際のジョブでデバッグサイクルを要しました。再発見しないでください。
  • プロジェクト名、ターゲットビン、生メディアの場所を確認します。部分的なフォルダ名からパスを推測せず、見つけたものと触ろうとしているものをエコーバックします。
  • セッションごとに1回、オペレーターに警告します:処理中はResolveがロックされます。 オペレーターはあなたと同時に編集できません。長時間のジョブはバッチ処理し、オペレーターがいない間に実行する必要があります。

6つのゲート付きステージ

前のステージが承認されるまで、ステージを進めてはいけません。これはこのファイルの中で最もレバレッジの高いルールです。これをスキップしたレビュー担当者は、その下で変化したカットの上にグラフィックを再プロンプトするのに何時間も費やしました。

ステージ1: インジェストと整理

常にまず文字起こしを行います。ダウンストリームでワードレベルのタイミングなしでは何も機能しません。

  • メディアをインポートし、メディアプールにフォルダ構造を再作成します。
  • 話者検出付きでResolveの文字起こしをトリガーします。オーディオ75分あたり約5〜6分を見込みます。タイムアウトを報告しないでください。 Resolveの文字起こしはあなたの忍耐よりも遅く動作します

…(以下略)

Individual skills in this repo

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

関連スキル