con un clic
wf-new
Use when まだコレクションディレクトリが存在せず、新規コレクション制作を立ち上げたいとき。「新しいコレクション始めたい」「制作開始」「新規ワークフロー」など、企画選択からディレクトリ作成・素材準備までを行う初期化フェーズで使用する。既存コレクションの進行は /wf-next
Menú
Use when まだコレクションディレクトリが存在せず、新規コレクション制作を立ち上げたいとき。「新しいコレクション始めたい」「制作開始」「新規ワークフロー」など、企画選択からディレクトリ作成・素材準備までを行う初期化フェーズで使用する。既存コレクションの進行は /wf-next
Use when Suno UI に投入する音楽プロンプト (Style + Lyrics) を生成したいとき。SunoAI V5 向けの YAML 定義(インストは `tracks_per_collection` で曲数指定の独立 entry 並列、ボーカルは pattern × tracks_per_pattern 設計)から suno-prompts.md / suno-prompts.json を作成する(次工程 `/suno-helper` でブラウザ自動生成 + playlist 一括追加、その後 `/masterup` で DL + マスター化)。プロンプト作成・Style 文・Lyrics テンプレートなど Suno 連続生成の前段で使用すること。Lyria チャンネルでは /lyria を使う
Use when Suno UI に投入する曲をブラウザで連続生成 + playlist 追加したいとき。yt-collection-serve で suno-prompts.json を配信し、suno-helper Chrome 拡張で 1 タブ完結の自動実行(pattern 注入 → Generate → 完了待機 → 次へ → 全件完了で playlist 一括追加)を回す operator 手順。`/suno` でプロンプトが揃った後、または既存 collection の途中再開で使用する
Use when 各コレクションの音楽ムード × サムネイル雰囲気 × タイトル訴求の整合性を監査したいとき。「整合性チェック」「一致してるか確認」「タイトル見直し」「サムネと音楽の一致」「タイトル改善」「CTR改善」など。CTR に最も影響するチェックポイント。方向性見直し時に必ず使用すること
Use when 収集済みのAnalyticsデータを詳細分析し、戦略的改善提案が必要なとき。/analytics-collect でデータ収集後に実行。CTR改善、パフォーマンス分析、戦略検討、データ分析、コレクション比較、投稿の振り返りなど、データに基づく判断が求められる場面で必ず使用すること
Use when YouTube Analyticsデータの収集・最新化が必要なとき。/analytics-analyze 実行前のデータ準備ステップとして使用。ユーザーが「データ更新」「最新の数字」「統計を取得」「分析の準備」と言及したとき、または analytics_system.py の実行が必要な場面で必ず使用すること
Use when Analytics分析レポートの表示・閲覧が必要なとき。過去レポートの比較やパフォーマンスレビュー時に使用。「レポート見せて」「過去データ確認」「パフォーマンスレビュー」「前回の分析結果」など、既存レポートの参照・比較が必要な場面で必ず使用すること
| name | wf-new |
| description | Use when まだコレクションディレクトリが存在せず、新規コレクション制作を立ち上げたいとき。「新しいコレクション始めたい」「制作開始」「新規ワークフロー」など、企画選択からディレクトリ作成・素材準備までを行う初期化フェーズで使用する。既存コレクションの進行は /wf-next |
新コレクション開始オーケストレーター。企画選択 + サムネイル承認の2箇所のみ一時停止する。
このセッションで初めて
/wf-*を呼ぶ場合は、先にdocs/workflow-cheatsheet.mdの判定フローを 1 回だけユーザーに提示すること(CLAUDE.md §6 参照)。
| 状況 | 使う? |
|---|---|
| 制作中コレクションが無い + 新しく始めたい | ✅ 使う |
| 「次なに作る?」とだけ聞かれた(企画候補が未確定) | ❌ 先に /collection-ideate で候補を出す(/wf-new 内部でも呼ぶが、単独で候補だけ見たいなら直接 /collection-ideate) |
| 既存コレクションを次工程へ進めたい | ❌ /wf-next を使う |
| 進捗だけ知りたい | ❌ /wf-status を使う |
/wf-new は workflow-state.json を 新規作成し自動更新する。ユーザーが手で編集してはいけない(扱い基準)。
config/channel/ が存在すること(load_config() でロード可能)。
存在しない場合、ユーザーに確認:
/channel-new を案内/channel-import を案内テーマはこの段階では不要。企画の結果でテーマが決定される。
データ収集は /analytics-collect(yt-analytics のラッパー)が担当するため、workflow からは呼び出さない。必要に応じてユーザー側で cron / launchd に登録する運用。
Step 1(企画)を自動実行中...
/collection-ideate を実行 — 日次収集データ + ベンチマークを基に分析 + ペルソナ別3つの企画候補をプレビューサムネイル付きで生成/collection-ideate の出力が表示された後、ユーザーに企画選択のみ求める:
config/channel/*.json の設定に従う)エラーハンドリング:
/collection-ideate がエラー → エラー内容を表示して中断。分析データの確認を案内ユーザーが企画を選択したら、以下を自動実行する:
以下の Python スクリプトを実行してコレクションディレクトリと workflow-state.json を自動生成する:
uv run yt-init-collection "<Collection Name>" "<theme-slug>" --track-count <N> --selected-plan <A-E> --music-engine <suno|lyria>
<Collection Name>: 企画で決定したコレクション表示名<theme-slug>: ハイフン区切りのテーマスラッグ(例: brigid-hearth)--track-count: 確認済みトラック数(デフォルト 12)--selected-plan: 選択された企画(A〜E)--music-engine: 音楽エンジン(suno / lyria)。省略時は config/channel/youtube.json の music_engine が使われる。コレクション単位で上書きしたいときのみ明示するスクリプトが以下を自動実行:
collections/planning/YYYYMMDD-<short>-<theme>-collection/ ディレクトリ作成workflow-state.json 初期化(stage=planning, phase=planning-approved)出力されたパスを後続ステップで使用する。フルスキーマは references/schema.md を参照。
多言語タイトル生成で必須となる workflow-state.json.scene_phrases を投入する:
uv run yt-populate-scene-phrases <collection-dir-name>
<collection-dir-name>: 2a で作成された YYYYMMDD-<short>-<theme>-collection のディレクトリ名config/channel/content.json の title.theme_scenes[<theme>].scene から自動解決され、Vertex AI Gemini で localizations.json.supported_languages 全件に翻訳されて書き込まれるsupported_languages が 1 言語以下のチャンネルでは CLI 側で自動スキップされるため、条件分岐は不要(そのまま呼んで構わない)scene_phrases が存在する場合もスキップ(--overwrite で上書き可能)theme_scenes[<theme>] が未定義の場合は --en "<custom phrase>" で英語フレーズを明示指定する。詳細は references/scene_phrases.md 参照エラーハンドリング:
theme_scenes 未定義 + --en 未指定 → エラー終了。config/channel/content.json の title.theme_scenes に該当 theme を追加するか、--en を渡して再実行/wf-next から再実行可能)Phase 1 の成果物を 20-documentation/ に保存:
10-assets/main.png にコピー(/collection-ideate で本番品質で生成済み)single_step モードまたは image_generation.provider: codex の場合: /collection-ideate のプレビュー画像がテキスト込みの完成サムネイルなので、/thumbnail は不要。
ただし QA は必ず通す(#570、プレビュー = 最終 thumbnail だと品質チェックが一切走らない経路を塞ぐ):
main.png を等倍プレビューし、以下を目視確認する
4-4 の diff_prompt_template に ${anatomy_clause} を強調挿入して再生成、または codex プロバイダー(人体破綻に強い傾向)へ切り替えて再生成。/collection-ideate の Phase 4 から再実行するmain.png を thumbnail.jpg にコピーする:
cp <collection-path>/10-assets/main.png <collection-path>/10-assets/thumbnail.jpg
/thumbnail <theme> を Agent で実行(テキストオーバーレイ生成。/thumbnail の品質チェック節で同等 QA が走る)/suno <theme> を Skill ツールで実行(プロンプト生成のみ。実際の楽曲生成は /suno-helper で連続実行する)
/suno 呼び出し前提条件チェック(#571): config/skills/suno.yaml::genre_line を読み、空のときは config/channel/analytics.json::benchmark.channels[].slug 全件について data/video_analysis/<slug>/*.json の存在を確認する。両方とも未充足(genre_line 空 AND 全 slug で分析結果不在)であれば /suno を起動せず、uv run yt-video-analyze --source benchmark --channel <slug> --top 5 を先行実行するようユーザーに案内して Phase 2c を一旦停止する(data/benchmark_*.json が無ければさらにその前段で /benchmark を案内)。AI が genre_line を手書きで埋めて続行することは禁止/lyria <theme> を Skill ツールで実行(プロンプト設計のみ。Lyria 3 API 呼び出しは /wf-next で実行)workflow-state.json を更新:
assets.music_prompts: trueエラーハンドリング:
assets.loop_video = "failed" を記録して続行サムネイルをプレビューで開く:
open <collection-path>/10-assets/thumbnail.jpg
AskUserQuestion でサムネイルの承認を求める:
question: "サムネイルを承認しますか?"
options:
- 承認する → assets.thumbnail = true に更新 → ループ動画生成へ
- 再生成 → `/collection-ideate` のプレビュー段階で調整済みのため、diff_prompt を修正して `generate_image.py` で再生成
- 中断 → ここで一旦停止(後で `/wf-next` で再開可能)
承認された場合、ループ動画を生成:
/loop-video を Skill ツールで実行(main.png → loop.mp4)workflow-state.json を更新: assets.loop_video: true / "failed"完了ガイダンスを表示:
`/wf-new` 完了!
コレクション: <collection_name>
テーマ: <theme>
トラック数: <track_count>
音楽エンジン: <suno|lyria>
ディレクトリ: collections/planning/YYYYMMDD-<short>-<theme>-collection/
現在のフェーズ: prepared
ループ動画: ✅ 生成済み / ⚠️ 失敗(`/wf-next` で再試行可能)
音楽エンジンに応じた次ステップ案内:
/suno-helper を実行してください。yt-collection-serve で suno-prompts.json を配信 → suno-helper Chrome 拡張で Suno タブに連続注入 → 全件完了で playlist 一括追加まで自動。完了後に /wf-next を実行(plain Suno UI への手動投入は非推奨)」/wf-next を実行すると Lyria 3 API が呼ばれ、コレクション尺に応じてセグメントが生成されます → ミキシング+マスタリング後に再度 /wf-next」重要: /suno-helper / /wf-next への自動接続はしない(/suno-helper は Chrome + Suno ログイン + 拡張ロードの physical 準備、/wf-next は次フェーズ進行の意思決定をそれぞれ user に委ねる)。ユーザーが手動で呼ぶ。
| 状況 | 兆候 | 対処 |
|---|---|---|
| GCP ADC 未取得/失効 | ConfigError / ADC 認証エラー | gcloud auth application-default login(必要なら set-quota-project)を再実行 |
| Vertex AI rate | HTTP 429 | 時間を置いて再実行。並列実行を避け順次処理する |
| API 障害 / サービス停止 | HTTP 503 / タイムアウト | Google Cloud(Vertex AI)のステータスを確認し、時間を置いて再実行 |
| 委譲先 skill の失敗 | 子 skill がエラー終了 | 各子 skill の「障害時ガイダンス」を参照して個別に対処 |
/collection-ideate スキル/thumbnail スキル/loop-video スキル/suno スキル/suno-helper スキル/lyria スキル/wf-next/wf-status