Communitygithub.com

Video Uploader (動画アップロードスキル)

完成した動画ファイルを、固定の命名規則に従ってクラウド同期フォルダ(Google Drive、Dropbox、OneDrive)にアップロードし、各動画の情報をCSVマニフェストに記録します。

Video Uploader (動画アップロードスキル) とは?

このスキルは、AIエージェントが、`video-animado` などで生成された完成済みのMP4動画ファイルを、チームで共有するクラウドストレージ(Google Drive、Dropbox、OneDrive)にアップロードするためのものです。ファイル名は `<prefix>_<format>_<words>.mp4` という固定パターン(例:`vvs_vertical_bala_coroa.mp4`)に従い、動画ごとに専用フォルダが作成され、`como_foi_feito.md`(制作プロセスを記録したドキュメント)が自動生成されます。また、各動画のメタデータ(タイトル、尺、方向性、制作工程、音声、BGM、プロジェクト情報)を `VVS_REGISTRO.csv` に記録し、後日広告の成果データと突き合わせて分析するための基盤を提供します。ユーザーが「動画をアップロードして」「ドライブに置いて」「整理して」などと依頼した場合、このスキルが呼び出されます。

対応✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/bp-abe/skills-video/tree/HEAD/subir-videos

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

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

ドキュメント

動画をクラウドにアップロードする

video-animado スキルはMP4ファイルをプロジェクト内に出力します。このスキルは、それらのファイルをチームが認識できる名前でクラウドフォルダに配置します。この名前が、後で各クリエイティブの成果を分析するためのキーとなります。

命名規則

<ユーザーが確認した保存先フォルダ>/
  <キャンペーン名>/
    30S/                                     尺ごとのサブフォルダ
      vvs_bala_coroa/                         動画ごとのフォルダ
        vvs_vertical_bala_coroa.mp4           9:16 · 1080×1920
        vvs_wide_bala_coroa.mp4               16:9 · 1920×1080
        vvs_square_bala_coroa.mp4             1:1  · 1080×1080
        como_foi_feito.md                     動画制作プロセス
    15S/
      vvs_bala_coroa/ …
  • ファイル名: <prefix>_<format>_<words>.mp4、すべて小文字。接頭辞はデフォルトで vvs、マニフェストの "prefixo" で変更可能。
  • フォーマット: 縦向きは vertical、正方形は square、横向きは wide。存在しないフォーマットは省略。新しく作らない。
  • 単語: 動画のタイトルから抽出した1〜4語。小文字、アクセントなし。冠詞、前置詞、「と」「そして」「ということ」などは除外(スクリプトが自動処理)。
    • 「A bala na coroa」→ vvs_vertical_bala_coroa.mp4
    • 「Três crianças diante do poder」→ vvs_wide_tres_criancas_diante_poder.mp4
    • 4語を超える場合はマニフェストの "palavras" で指定。指定がないとスクリプトはエラーになる。
  • 動画のフォルダ名: <prefix>_<words>。尺はサブフォルダ(30S/、15S/)とレコードのみに含まれる。14.0秒のカットは 15S/ に入る。
  • 同じタイトルで異なる尺の動画: 異なるフォルダに同じファイル名が生成される。スクリプトが警告を出す。広告管理画面では、広告名に尺を含めること。
  • como_foi_feito.md: すべての動画フォルダに作成。誰でも制作プロセスを確認できるようにする。スクリプトが元のプロジェクト(atributos.projeto)から以下の内容を自動生成:
    • スペックシート
    • ディレクション、ナレーション、BGM
    • コンセプトと脚本(roteiro.json より)
    • プロジェクトの ANALISE.md と RELATORIO.md(ブリーフ、コンセプト、バイブル、批評ノート)

手順

  1. 保存先フォルダは依頼者が必ず確認する。 決して推測しない。指定がない場合は尋ねる。
  2. 同期フォルダのローカルパスを特定する。 macOSの場合、Google Drive for Desktop は ~/Library/CloudStorage/GoogleDrive-<メールアドレス>/(Meu Drive/、Drives compartilhados/)にある。Driveのリンクが渡され、Driveコネクタが利用可能な場合は、親フォルダチェーン(parentId)を辿って同期フォルダ内の既存フォルダ名と一致するまで探索する。同期フォルダにコピーすることがアップロードとなる。大きなMP4ファイルはAPI経由で送信しないこと。
  3. マニフェストを作成する(manifesto.json、下記テンプレート参照):各動画のタイトル、公称尺、フォーマットごとのファイルパス、分析用属性(クリエイティブディレクション、制作工程、ナレーション、BGM、元プロジェクト)を含める。
  4. コピー前に、名前の一覧表と保存先を表示する。 ただし、直接アップロードするよう指示されている場合はこの限りではない。多くの場合、共有フォルダが保存先となる。
  5. 実行: python3 ~/.claude/skills/subir-videos/subir.py manifesto.json
    • 事前に --seco フラグでドライランの検証と名前の表示のみを行う。
    • ファイルがすでにクラウド上にある場合は --so-registro でレコードのみ記録する。
    • スクリプトはファイルの寸法と尺をチェックし、規定の命名規則に従わない名前や重複タイトルを拒否し、フォルダを作成し、ファイルをコピーし、各動画の como_foi_feito.md を書き出し、全体のレコード ~/videos/VVS_REGISTRO.csv に行を追加する。
  6. 数分後にクラウドを確認する。 同期はバックグラウンドで行われ、大きなファイルは時間がかかるため。
  7. 結果を共有する: フォルダのリンクと名前の一覧表を提示し、各動画がどこに配置されたかをプロジェクトの ANALISE.md に記録する。

マニフェスト(テンプレート)

{
  "destino_local": "~/Library/CloudStorage/GoogleDrive-<メールアドレス>/Drives compartilhados/<ドライブ>/<フォルダ>",
  "campanha": "キャンペーン名",
  "prefixo": "vvs",
  "drive_link": "https://drive.google.com/drive/folders/<保存先フォルダのID>",
  "videos": [
    {"titulo": "A bala na coroa", "duracao": "30S",
     "arquivos": {"vertical": "…/out/30s_9x16.mp4", "wide": "…/out/30s_16x9.mp4", "square": "…/out/30s_1x1.mp4"},
     "atributos": {"direcao": "2Dキャラクターアニメーション", "processo": "pedido-de-video + video-animado",
                   "voz": "Gemini TTS", "trilha": "Lyria, ~120 bpm", "projeto": "~/videos/<スラッグ>"}}
  ]
}

レコードの目的

<prefix>_<format>_<words> という名前は、広告の成果データと突き合わせるためのキーです(広告名に尺を含む)。チームはこの名前でクリエイティブを広告管理画面にアップロードし、その名前がメディアデータの広告名として表示されます。VVS_REGISTRO.csv には各動画の属性(ディレクション、制作工程、ナレーション、BGM、実際の尺)が保存され、後で何が効果的で何が効果的でないかを比較するために使用されます。このファイルに個人情報を保存しないでください。

禁止事項

  • 確認されていないフォルダにアップロードしない。他の人のファイルを削除したりリネームしたりしない。
  • 命名規則を独自に変更しない:命名規則の変更は依頼者の判断による。
  • MP4ファイルをgitリポジトリに含めない。

Individual skills in this repo

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

関連スキル