studio-setup について
studio-setup は、台本作成と動画編集に向けてクリエイターのプロジェクトを準備する video-agent スキルです。ツールを確認し、話し方とスタイルのファイルを作成してレンダリングエンジンを設定します。権限や任意のアカウント接続も設定できます。
主な機能
- 01必要なツールとバージョンの確認
- 02クリエイターの話し方ファイルの作成
- 03デフォルト編集スタイルの設定
- 04レンダリングエンジンの準備
- 05コマンド権限の設定
活用シーン
- 01動画編集用にプロジェクトを準備
- 02台本に使うクリエイターの話し方を記録
- 03今後の編集に使うデフォルトの見た目を設定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ melvynx/ video-agent-skills --skill studio-setupインストール後、Claude Code で/studio-setupを入力して読み込まれたか確認します。
同梱ファイルreferences/voice-template.md
詳細
スタジオのセットアップ
所要時間は約15分です。一度だけ行います。完了すると、クリエイターは次の状態になります。
- 他のスキルが呼び出すツールがインストールされ、動作確認されています。
video-agent/voice.md:本人がどんな人で、どのように話し、何を信じ、何を証明できるかを記したファイルです。すべての台本はこれをもとに作成されます。video-agent/styles/default/style.json:分割画面のペーパーレイアウトに重ねる本人の見た目(色、フォント、キャプション、紙、ペース、サウンド、Instagram の CTA)を、話題にするツールの実際のロゴとともに設定します。すべての編集でこれを使用します。- レンダリングエンジンの準備が完了しています(Chrome、whisper.cpp、音楽ベッド)。最初の編集をすぐに始められます。
- Claude が毎回確認を求めずに ffmpeg、yt-dlp、エンジンを実行できるよう、権限ルールが設定されています。
- 必要に応じて、Treg を通じてアカウントが接続されています(監査と公開)。翻訳と画像生成用のキーも設定されています。
セットアップの実行方法
- クリエイターの言語で話してください。簡単な言葉を使い、専門用語は避けてください。
- 1つのメッセージにつき質問は1つだけにしてください。可能な場合は選択肢を提示し、推奨する選択肢を最初に示してください。
- クリエイターについて、決して何もでっち上げないでください。把握していない事実は質問するか、
{{placeholder}}にしてください。
1. ツール
チェックを実行し、ツールごとに1行で結果を表示してください(✓ バージョン、または ✗ 未インストール):
node -v
ffmpeg -version
yt-dlp --version
deno --version
git --version
| ツール | 使用する機能 | macOS | Windows | Linux |
|---|---|---|---|---|
| Node 20+(22 LTS 推奨) | short-editing(レンダリングエンジン) | brew install node | winget install OpenJS.NodeJS.LTS | nodejs.org またはパッケージマネージャー |
| ffmpeg | short-editing、steal、clips、short-translate、publish | brew install ffmpeg | winget install Gyan.FFmpeg | sudo apt install ffmpeg |
| yt-dlp | studio-script viral、steal、clips、動画からの voice.md 作成 | brew install yt-dlp | winget install yt-dlp.yt-dlp | pipx install "yt-dlp[default]" |
| deno | YouTube での yt-dlp(JavaScript ランタイムが必要です) | yt-dlp に付属 | winget install DenoLand.Deno | curl -fsSL https://deno.land/install.sh | sh |
| git | スキルのインストール | xcode-select --install | winget install Git.Git | sudo apt install git |
| Codex(任意) | codex-images | npm i -g @openai/codex を実行し、その後 codex login | 同上 | 同上 |
不足しているツールのインストールコマンドを提示し、ユーザー自身に実行してもらってください(実行してほしいと言われた場合は、こちらで実行してください)。スクリプトのみを利用するユーザー(viral モードを含む studio-script)に必要なのは yt-dlp と deno だけです。Codex は /codex-images 専用で、ChatGPT プランが必要です。画像を希望しない場合は省略してください。
- Windows:
wingetの実行後、ターミナル(および Claude Code)を閉じて再度開いてください。そうしないと、新しいコマンドが見つかりません。 - YouTube は頻繁に変更されます。ブラウザーで再生できるリンクで yt-dlp が失敗する場合は、まず更新してください(
brew upgrade yt-dlp、winget upgrade yt-dlp.yt-dlp、pipx upgrade yt-dlp)。
2. フォルダー
現在のプロジェクトのルートに作成します:
video-agent/
├── voice.md who they are and how they talk (step 4)
├── swipe.md hooks that worked in their niche (`/studio-script viral`)
├── audit.md what works on their own Instagram (insta-audit)
├── audits/ full Instagram reports, one folder per account and run (insta-audit @handle)
├── log.md one line per script written, so nothing repeats
├── scripts/ one file per week (studio-script)
├── takes/ raw recordings (phone, camera, webcam, screen)
├── style.json {"default": "default"}: the style every edit uses (step 5)
├── styles/ default/ (their look, step 5), and styles copied from other creators (steal)
├── edits/ one folder per edited video (short-editing): source/spec.js, output/<name>.mp4 + post.md, cover.jpg, published.md
├── repurpose/ one plan per long video (clips)
├── images/ generated images not tied to a video (codex-images)
├── .env their API keys, never shared (step 7)
└── .tmp/ scratch files, deleted after each run
log.md の先頭には # Script log、swipe.md の先頭には # Swipe file を記載します。
プロジェクトが git 管理されている場合は、次の行を .gitignore に追加してください(動画は容量が大きいため、テキストファイルは追跡対象のままにします):
video-agent/takes/
video-agent/edits/**/*.mp4
video-agent/edits/**/assets/
video-agent/edits/**/stills/
.claude/skills/short-editing/.runtime/
.claude/skills/short-editing/engine/node_modules/
video-agent/.tmp/
video-agent/.env
video-agent/.env にはキーが含まれます。残りの手順を省略する場合でも、必ず無視対象にしてください。
3. エンジン
レンダリングエンジンは short-editing スキル(<skill> はそのスキルのフォルダーです。例:.claude/skills/short-editing)に含まれています。初回のセットアップでは、エンジンのパッケージ(15 MB)、Chrome がインストールされていない場合は Chromium(100 MB)、whisper.cpp とその音声モデル(0.5 GB)、および8つの音楽ベッド(3〜6分、1回限り)をインストールします。いつ実行するか尋ねてください。今すぐ(近いうちに編集する予定がある場合におすすめです。手順5で自分の映像にスタイルを適用して確認できます)、または後で(short-editing の初回実行時)です。short-editing、clips、short-translate を利用する場合のみ必要です。スクリプトのみを利用するユーザーは省略してください。
node <skill>/engine/setup.mjs --check || node <skill>/engine/setup.mjs
ダウンロードを始める前に、ダウンロードする内容とサイズを伝えてください。ffmpeg が見つからない場合は、インストールコマンドが表示されます。
4. voice.md
最初に、ファイルの先頭で設定する項目を聞きます。録画で使う言語です(ブランドカラーはステップ 5 で聞きます)。次に、残りの情報をどう作成するかを聞きます。
- 動画から作成する(過去に投稿したことがある場合におすすめです):話している動画の中で最も良いもののリンクを 3~5 件(YouTube、Shorts、TikTok、Instagram のリール)教えてもらいます。文字起こしを取得します(
<lang>は言語コードです:en、fr、es)。
内容を確認し、実際に話していることをもとにテンプレートを埋めます。本人が実際に使うフレーズ、話すペース(話している時間に対する単語数)、繰り返し使う言葉、話の始め方と締め方を記入します。その後、文字起こしからはわからないこと(立場、根拠、触れてほしくない話題、呼びかけ)だけを聞きます。その後、yt-dlp --skip-download --write-auto-subs --write-subs --sub-langs "<lang>.*" --sub-format vtt -o "video-agent/.tmp/%(id)s.%(ext)s" "<url>"video-agent/.tmp/を削除します。 YouTube のリンクなら、ほとんどの場合、文字起こしを取得できます。TikTok は取得できることもありますが、Instagram ではほとんど取得できません。その場合は YouTube のリンクを送ってもらうか、インタビューに切り替えます。 - インタビューから作成する:テンプレートの質問を、わかりやすい言葉で一つずつ聞きます(「あなたの分野で、ほとんどの人が間違っていると思うことは何ですか?」)。
どちらの場合も、AI ツールを使う前に本人が書いた短い文章を 3 つ貼り付けてもらいます(キャプション、メッセージ、メールなど)。これらを「実際のサンプル」に入れて、スクリプトに本人の文体を反映させます。
references/voice-template.md をもとに video-agent/voice.md を作成します。その内容を 5 行で読み上げ、間違っているところがないか聞きます。ボイスファイルは完成することがありません。いつでも /studio-setup voice を実行して更新できることを伝えます。
5. スタイル
5 分で完了します。どの編集でも、完成時のレイアウトは同じです。カメラ映像のカードの上に、テクスチャのある紙のボードを配置した分割画面の紙風デザインです。分割画面、紙のみ、カメラ映像全体をハードカットで切り替え、境目に字幕を表示し、コメント用紙の CTA を配置します(style.md)。このステップでは、これを本人向けにカスタマイズします:video-agent/styles/default/style.json。フォーマットと、テスト済みの 5 種類のスタイルについては looks.md を、各キーについては style-schema.md を参照してください。まず両方を読んでください。
開始前に、次のことを一言で伝えます:「デフォルトのスタイルはすでに完成しています。7 つの簡単な質問であなた向けに調整し、その後、あなた自身の動画で確認します。」その後は、メッセージごとに質問を一つだけします。選択肢はおすすめのものを最初に提示し、回答はいつでも「デフォルト」または「スキップ」にできます。おすすめの選択肢を決めるときや、すでに回答がわかっている質問を省くときは、voice.md に記載された情報(分野、トーン、呼びかけ)を使います。
- 見た目:
<skill>/assets/looks.jsonにある5種類の見た目を、それぞれ1行で表示します(label+says):default(ミニマル:システムフォント、幅いっぱいのカメラ映像、境目の黒い帯にモノスペースの大文字キャプション。おすすめ)、classique(ステッカー風キャプション)、papier(フレーム付きのカメラ写真、発した単語を色付きブロックに表示)、pop(ポッドキャスト風、意見を強調)、poster(テンポが速く、ハードカット)。選んだ見た目のstyleパッチをファイルの先頭に置きます。 - アクセントカラー:「ブランドカラーはありますか? 16進数のカラーコードか、色の名前を教えてください」。色の名前が挙がったら、16進数に変換して
colors.accentに設定します。何もなければ、その見た目の色を使います。アクセントカラーは強調する単語、キャプションブロック、数字に使うため、はっきりした色(パステルカラーではない色)にします。 - フォント:「システムフォント(Mac の San Francisco、Windows の Segoe UI。おすすめ)のままにしますか? それとも Bricolage Grotesque(モダンで詰まった印象)、Poppins(丸みがあり親しみやすい)、Archivo(太くて幅が狭い)、Inter(ニュートラル)にしますか?」システムフォントは
system-ui, -apple-system, Segoe UI, Helvetica Neue, Arial, sans-serifです。→font.family、display.font/display.text。独自のフォントファイルを使う場合は、styles/default/assets/fonts/にコピーし、font.srcを設定します。 - キャプション:「帯:モノスペースの大文字、境目の黒い角丸帯に白文字で、3語ずつ(
band+ JetBrains Mono。おすすめ)、ミニマル:動画の上に白い単語を表示し、発話に合わせて1語ずつ表示(rise+block: false+straddle+straddleDy: 90)、発した単語を色付きブロックに表示(rise)、ハードシャドウ(hard)、それともステッカー風にしますか?」続けて、「通常サイズにしますか、それとも大きめにしますか?」と尋ねます(大きめの場合はcaptions.size96)。大文字にする場合はcaptions.upper: trueにします。 - テンポ:「速め(1.15x、デフォルト)、落ち着いたテンポ(1.05x)、自然なテンポ(1x)のどれにしますか?」→
pace.speed。 - Instagram の CTA:「Instagram のユーザー名と、コメントで入力してもらう言葉(GUIDE、LINK、商品名など)を教えてください」→
creator.handle、creator.name、およびnotesに"Comment word: <WORD>"というメモを設定します。また、creator.lang(録音に使う言語)と、voice.md に記載されたcreator.nicheも設定します。 - 動画で話題にするツール:「動画でよく名前を挙げるアプリやツールは何ですか?」最大8件まで登録できます。それぞれについて実際のロゴを取得し(looks.md の「Logos」を参照)、
video-agent/styles/default/assets/logos/<tool>.pngに保存します。確実なロゴが見つからない場合は、似たものを描かず、ファイルを提供してもらいます。
video-agent/styles/default/style.json に "version": 1、"name"、選んだ見た目のパッチ、続けて回答内容を記述します。エンジンのデフォルトと異なるキーだけを含めてください。video-agent/style.json は {"default": "default"} とします。以下のコマンドで JSON を解析できることを確認します:node -e 'JSON.parse(require("fs").readFileSync("video-agent/styles/default/style.json","utf8"))'。
エンジンのセットアップが完了していて(ステップ3)、video-agent/takes/ に10秒以上のテイクがある場合は、プレビューを作成します:
node <skill>/engine/short.mjs init video-agent/edits/short-style-test --source "<take>"
次に、そのテイクの1〜4秒あたりにボードを1つ追加します(アクセントカラーの単語を含む text と、最初のツールの logo を使用。scene-library.md を参照)。その後、以下を実行します:
node <skill>/engine/short.mjs words video-agent/edits/short-style-test
node <skill>/engine/short.mjs prepare video-agent/edits/short-style-test
node <skill>/engine/short.mjs stills video-agent/edits/short-style-test 0.5,2,5
stills/ 内の JPG をまず自分で確認します。紙の上でアクセントカラーが読みやすいこと、色付きブロック上の白いキャプションが読みやすいこと、ロゴが鮮明なこと、端で何も切れていないことを確認します。問題があれば修正してから見せ、「このままにしますか? それとも1つ変更しますか?」と尋ねます。変更する場合は style.json を編集し、init を再実行します(スタイルのスナップショットが作成されるためです)。新しい stills を作成します。最後に short-style-test を削除します。まだテイクがない場合は、見た目を3行で説明します。最初の編集時に確認できます。
いつでも /studio-setup style を実行して変更できます。/steal でコピーしたクリエイターのスタイルは、そのスタイルの隣(video-agent/styles/<name>/)に保存され、/short-editing <take> style <name> で使用できます。
6. 権限
ほかのスキルでも、同じいくつかのコマンドを何度も実行します。このプロジェクトでは、これらを事前に承認してください。ルールを提示して確認を求めてから、.claude/settings.json にマージします。ファイルがない場合は作成してください。すでにあるキーやルールはすべて維持し、決して削除しないでください。
{
"permissions": {
"allow": [
"Bash(yt-dlp *)",
"Bash(ffmpeg *)",
"Bash(ffprobe *)",
"Bash(node .claude/skills/short-editing/engine/*)"
]
}
}
- これらのみです。
Bash(*)、Bash(rm *)、Bash(curl *)、またはインタープリター全体を対象とするルール(Bash(node *)、Bash(python *))は絶対に追加しないでください。 - 共有の
settings.jsonにあるルールは、フォルダーが信頼された後に適用されます。このプロジェクトを git で管理していて、ルールを共有したくない作成者は、代わりに.claude/settings.local.jsonを使用できます(形式は同じで、個人用です)。 - 各スキルには、実行されるターンに適用される独自のコマンドも
allowed-toolsに記載されています。これらのルールは、それ以外のすべてのターンに適用されます。
7. アカウントとキー(任意)
必要なスキルを使いたい場合に限り、次の3つを設定します。1回のメッセージでまとめて確認してください。
| 対象 | 内容 | 費用 |
|---|---|---|
/insta-audit と /publish | Treg に Instagram、TikTok、YouTube のアカウントを接続する | 各自のアカウントでの利用は無料 |
/short-editing で正確な文字起こしを行う場合(リテイクや言いよどみもすべて検出してカットする)、/short-translate、/steal で声の下に流す音楽(効果音はパックに含まれており、キーは不要) | ElevenLabs API キー(推奨) | 各自の ElevenLabs プラン |
/codex-images | 各自の ChatGPT アカウントで Codex にログインする | 各自の ChatGPT プラン |
ElevenLabs:elevenlabs.io/app/settings/api-keys でキーを作成し、本人に video-agent/.env に ELEVENLABS_API_KEY=... として貼り付けてもらいます(空のファイルを作成して開いてください)。チャットでキーを尋ねてはいけません。キーが設定されていることは、表示せずに次のコマンドで確認します:grep -c ELEVENLABS_API_KEY video-agent/.env。
Codex:codex --version を実行してから、本人に codex login を実行してもらいます(ブラウザーで「Sign in with ChatGPT」を選択)。
Treg
yt-dlp は無料で YouTube の情報を取得できます。TikTok と Instagram はスクリプトから数値を取得できないようにしており、作成者本人の統計情報はログインが必要です。また、投稿にも各自のアカウントが必要です。Treg はその不足を補います。各自のアカウントを一度接続すれば、統計情報の取得と投稿は無料で利用でき、ほかの作成者の公開数値は1回あたり約 $0.001 です。新しく認証されたアカウントには一度だけ $1.00 のクレジットが付与され、数百回の呼び出しに使えます。
接続方法は2つあります。
- CLI、macOS と Linux 向けです。uv(適切な Python を取得するため推奨)、または Python 3.12 か 3.13 を使った pipx か pip が必要です。Windows 用インストーラーはありません。
curl -fsSL https://treg.to/install.sh | sh treg logintreg loginを実行するとブラウザーが開きます(GitHub、Google、またはメールコードでログイン)。 - MCP、すべての OS で利用でき、インストールは不要です:
claude mcp add --transport http treg https://treg.to/mcp/を実行してから、/mcpを実行してサインインします。以下のtreg catalog search、catalog get、call、balanceは、それぞれ MCP ツールのcatalog_search、catalog_get、call、balanceになります。
各自のアカウント(接続には CLI が必要です)。--capability post を指定すると、統計情報の読み取りと投稿に必要な権限を求めます。投稿する動画ごとに本人が承認する必要があります。
treg connections connect --provider instagram --capability post
treg connections connect --provider tiktok --capability post
treg connections connect --provider youtube --capability post
treg connections ls
各 connect を実行すると、プラットフォーム独自のログイン画面が開き、そこで承認します。投稿するプラットフォームだけを接続してください。Instagram はプロアカウント(Creator または Business)が必要です(アプリ内で無料で切り替えられます:プロフィール → メニュー → アカウントタイプとツール)。Treg はヒントを stderr に出力します。JSON を読み取るときは 2>/dev/null を追加してください。
Instagram を接続したら、すぐに /insta-audit を提案してください。何が効果的かを確認するための、最初のステップとして最適です。
Treg の各呼び出しの手順は、すべてのスキルで共通のルールです。
treg catalog search "<what you want to do>":ベンダー名ではなく、実行したい作業を説明します(「TikTok アカウントの動画を再生数とともに一覧表示する」など)。treg catalog get <id>:パラメーターと料金を確認します。呼び出す前に料金を伝えてください。接続済みの本人のアカウントは無料と表示されます。treg call <id> --query key=value。呼び出しに失敗しても料金はかかりません。残高はtreg balanceで確認できます。402 エラーは残高がないことを意味します。
権限:無料の読み取り専用コマンドのみを追加し、有料の treg call は毎回、事前に確認を求めるようにします。
"Bash(treg catalog *)",
"Bash(treg balance)",
"Bash(treg connections ls)"
8. まとめ
準備完了(✓またはスキップ)と今後の進め方を、各項目1行で示します。/editing <what they want> と入力するだけでもかまいません。適切なスキルが選ばれます。
最短で最初の動画を作る方法:1テイク(スマートフォン、カメラ、またはウェブカメラ)を video-agent/takes/<slug>.mp4 に録画してから、/short-editing を実行します。さらに作成したい場合は、次の手順に進みます。
/studio-script:今週の台本。まずフックを考え、人間らしい表現にします(自分のニッチで効果があるものを知るには、まず/studio-script viralを実行します)。/insta-audit:自分のInstagramで効果があるものを調べます(audit.md に記入します)。/outliers:競合のリールで大きな反響を得たものを参考に、録画用の台本を5本作成します。/short-editing:自分のスタイルで、ショート動画(縦型)またはYouTube動画(横型)を作成します。/broll:自分のBロール素材をライブラリにまとめ、編集動画に配置します。/steal:気に入ったクリエイターのリールを、2つ目のスタイルに取り入れます。/clips:長尺動画を完成したショート動画にします。/short-translate:別の言語で、自分の声を使ったテイクを作成します。/codex-images:サムネイル、カバー、エンドカードを作成します。/vox:写真を紙のコラージュアニメーションにします。/publish:YouTube、Instagram、TikTokに公開します。
後で
/studio-setup <part> で各パートに移動できます:tools、engine、voice(voice.md を再構築または更新)、style(見た目、音声、CTA、ツールのロゴ、ロゴ、エンドカード)、permissions、treg、keys。