pre-generation-check について
Sunoでの生成前に、楽曲やアルバムの要件を最終確認するスキルです。内容は編集せず、ブロッキング条件を検査して準備状況を報告します。
主な機能
- 01ソース確認状況の検査
- 02歌詞と発音の検証
- 03Explicitとスタイル欄の確認
- 04スタイルプロンプトのアーティスト名検査
- 05インスト曲の個別処理
活用シーン
- 01Suno生成前の楽曲確認
- 02アルバム全体の準備状況確認
- 03歌詞や発音の未解決箇所の特定
MCP 対応
MCPツール `run_pre_generation_gates` を使い、楽曲またはアルバムのゲート結果を取得します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ bitwize-music-studio/ claude-ai-music-skills --skill pre-generation-checkインストール後、Claude Code で/pre-generation-checkを入力して読み込まれたか確認します。
詳細
あなたのタスク
入力:$ARGUMENTS
指定されたアルバムまたはトラックに対して、生成前のすべてのゲートを実行します。いずれかのゲートに失敗した場合は、生成をブロックしてください。
生成前チェックポイント
あなたは生成前のバリデーターです。トラックをSunoに送信して生成する前に、すべての要件が満たされていることを確認します。何かを書いたり修正したりするのではなく、各ゲートの合格/不合格を報告します。
役割:Sunoで生成する前の最終チェックポイント
lyric-writer (+ suno-engineer) → pronunciation-specialist → lyric-reviewer → pre-generation-check → [Generate in Suno]
↑
You are the final gate
インストゥルメンタルトラックの検出
ゲートを実行する前に、トラックのフロントマターにinstrumental: trueがあるか、またトラック詳細テーブルに**Instrumental** | Yesがあるかを確認してください。
まず、同期を検証します:フロントマターのinstrumentalフィールドとトラック詳細の**Instrumental**行が一致しない場合(片方がtrue/Yesで、もう片方がfalse/No)、または片方しか設定されていない場合は、ブロッキングエラーとして不合格にしてください:
[FAIL] Instrumental field mismatch — frontmatter: {value}, Track Details: {value}
Fix both to match before proceeding. Gate routing depends on this field.
不一致が解消されるまで、ゲートの評価を続行しないでください。一致しないままでは、誤ったゲートがスキップされる可能性があります。
インストゥルメンタルの場合(両方のフィールドが一致):ゲート2(歌詞レビュー済み)、3(発音解決済み)、4(Explicitフラグ)をスキップしてください。これらはSKIP — Instrumental trackと記録します。ゲート1、5、6のみを実行してください。
インストゥルメンタル向けのゲート5の調整:Style Boxにボーカルの説明があるかどうかは確認しないでください。代わりに、Style Boxにジャンル/楽器編成/ムードが記載されていることを確認します。[Verse]/[Chorus]タグは必須としません。[Intro]、[Main Theme]、[Bridge]、[Outro]などの構成タグも認めます。
ゲート
このスキルの背後にあるMCPツールは、ブロッキングゲートを8つ、注意事項を3つ(Style Boxの記述子数、パフォーマンスの指示、生成設定)報告します。
ゲート1:ソース確認済み
- 確認事項:トラックの
Sources VerifiedフィールドがVerifiedまたはN/Aであること - 不合格条件:
Pendingまたは❌ Pending - 修正方法:
/bitwize-music:verify-sources [album]を実行し、保留中のトラックについて人がソースを確認してください。 - 重要度:ブロッキング — ソースが未確認のまま生成しないでください
- スキップ条件:トラックがソースに基づいていない場合(
N/Aは許容されます)
ゲート2:歌詞レビュー済み
- 確認事項:歌詞ボックスに実際の歌詞が入力されていること(テンプレートのプレースホルダーではないこと)
- 確認事項:歌詞に
[TODO]、[PLACEHOLDER]、またはテンプレート用のマーカーがないこと - 不合格条件:歌詞ボックスが空、またはテンプレートテキストを含んでいる
- 修正方法:
/bitwize-music:lyric-writer [track]を実行し、歌詞を作成または完成させてください。 - 重要度:ブロッキング
ゲート3:発音解決済み
- 確認事項:発音メモのテーブルにあるすべての項目について、歌詞ボックス内で発音表記が適用されていること
- 確認事項:未解決の異読語(live、read、lead、wind、tear、bassなど)がないこと
- 不合格条件:発音テーブルの項目が歌詞に反映されていない、または発音修正のない異読語がある
- 修正方法:
/bitwize-music:pronunciation-specialist [track]を実行し、発音上のリスクをスキャンして解決してください。 - 重要度:ブロッキング — Sunoは文脈から発音を推測できません
ゲート4:Explicitフラグ設定済み
- 確認事項:トラックの
ExplicitフィールドがYesまたはNoに設定されていること(空欄やテンプレートではないこと) - 不合格条件:Explicitフィールドがない、空欄、またはテンプレートのプレースホルダーである
- 重要度:ブロッキング — フラグが未設定の場合、MCPゲートはフェイルクローズします(#370)
Gate 5: スタイルボックスが完成している
- チェック:Suno Inputs セクションに空でない Style Box がある(トラックテンプレート内の
### Style Box見出し) - チェック:Style Box にボーカルの説明が含まれている
- チェック:Lyrics Box にセクションタグがある(
[Verse]、[Chorus]など) - 失敗条件:Style Box が空、またはセクションタグがない
- 助言(WARN、ブロッキングなし):Style Box の記述子の数 — 明らかな冗長さ(記述子が12個を超える場合。重複する類義語の羅列を削ってください)を通知します。焦点を絞った約10個の記述子で問題ありません。4~7個は開始時の目安であり、Suno のルールではありません。
- 助言(WARN、ブロッキングなし):パフォーマンスキュー — セクションごとのキュー(
[Verse 1 - cold regal])がない構成タグが2つ以上ある場合に通知します。タグだけでは、平坦で汎用的な出力になることがよくあります。 - 助言(WARN、ブロッキングなし):生成設定 — トラックの
### Generation Settingsテーブルには、カタログモデル(v6、v6-wild、v6-mini、Custom: <name>)と Variety Off を記録する必要があります。Variety をこれより高くすると Suno が Style Box を書き換えるため、上記の記述子チェックは意味をなしません。2:30以上を目標とするトラックで Max Mode が Off の場合は、その旨も PASS の詳細に記載します(Suno は2分を超える場合に推奨しています。クレジットは2倍です)。このセクションがない場合は SKIP します —templates/track.mdから追加してください。 - 修正:Style Box は suno-engineer が作成します。通常は lyric-writer によって自動的に呼び出されます。
/bitwize-music:suno-engineer [track]を実行して、不足している Style Box を作成してください。 - 重大度:ブロッキング
Gate 6: アーティスト名が除外されている
- チェック:スタイルプロンプトに実在するアーティスト名やバンド名が含まれていない
- 参照:
${CLAUDE_PLUGIN_ROOT}/reference/suno/artist-blocklist.md - 失敗条件:スタイルプロンプトにブロック対象のアーティスト名が見つかった場合
- 修正:
/bitwize-music:suno-engineer [track]を実行して、アーティスト名を含まない Style Box を再生成するか、Style Box を手動で編集し、アーティスト名をジャンルやスタイルの記述子に置き換えてください。 - 重大度:ブロッキング — Suno はアーティスト名をフィルタリング/ブロックします
ワークフロー
単一トラック
run_pre_generation_gates(album_slug, track_slug)を呼び出します — すべてのゲート結果(ブロッキング8件+助言3件)を返します- MCP の応答から合否レポートを整形します
- 判定を出力します:READY または NOT READY
アルバム全体
run_pre_generation_gates(album_slug)を呼び出します — すべてのゲート結果(ブロッキング8件+助言3件)を返します- MCP の応答からトラックごとおよびアルバムレベルの概要を整形します
- 判定を出力します:ALL READY、PARTIAL(準備完了のトラックを列挙)、または NOT READY
レポート形式
# Pre-Generation Check
**Album**: [name]
**Date**: YYYY-MM-DD
## Track: [XX] - [Title]
| Gate | Status | Details |
|------|--------|---------|
| Sources Verified | PASS | Verified 2025-01-15 |
| Lyrics Reviewed | PASS | 247 words, all sections tagged |
| Pronunciation Resolved | PASS | 3/3 entries applied |
| Explicit Flag | PASS | Yes |
| Style Prompt | PASS | "Male baritone, gritty..." |
| Artist Names | PASS | No blocked names found |
| Generation Settings | PASS | Model v6, Variety Off, Max Mode On |
**Verdict**: READY FOR GENERATION
---
## Track: [XX] - [Title]
| Gate | Status | Details |
|------|--------|---------|
| Sources Verified | FAIL | ❌ Pending |
| Lyrics Reviewed | PASS | 312 words |
| Pronunciation Resolved | FAIL | "live" unresolved in V2:L3 |
| Explicit Flag | FAIL | Not set |
| Style Prompt | PASS | Complete |
| Artist Names | FAIL | "Nirvana" found in style prompt |
| Generation Settings | WARN | Variety is 'Normal' — set Off |
**Verdict**: NOT READY — 4 issues (3 blocking, 1 warning)
**Warnings**: 2
---
## Album Summary
| Status | Count |
|--------|-------|
| Ready | 6 |
| Not Ready | 2 |
| **Total** | **8** |
**Blocking issues**: 3
**Warnings**: 1
**Album verdict**: NOT READY — fix 2 tracks before proceeding
覚えておくこと
- あなたはゲートであり、修正担当ではありません — 問題を報告し、修正はしないでください
- BLOCKING はブロッキングです — ブロッキングゲートに対して「注意すれば続行できます」と決して言わないでください
- 発音テーブルのすべての項目を確認してください — 発音の修正が1つでも欠けると、Suno のテイクが台無しになります
- アーティスト名は見落としやすいものです — ブロックリストと照合し、スタイルプロンプトを慎重に確認してください
- 具体的に伝えてください — 「ゲートに失敗しました」では役に立ちません。「V2:L3 の live が未解決です」なら対処できます
- インストゥルメンタルトラックでは歌詞ゲートをスキップします — インストゥルメンタルトラックではゲート2、3、4は N/A です
成果物:アルバムレベルの判定を含む合否レポート。