mcpField
M
music-caption-rewriter

music-caption-rewriter

github.com/minimax-aiクリエイティブ・メディア9971.3k 回インストール2 日前に更新
リポジトリ

music-caption-rewriter について

Music Caption Rewriterは、音楽の意図を生成向けの構造化キャプションに変換するスキルです。スタイル索引とテンプレートを段階的に参照し、メタデータ、ボーカル、セクションごとの編曲を含む英語の説明を作成します。

主な機能

  1. 01音楽スタイルと制約の抽出
  2. 02段階的なスタイル参照の選定
  3. 03セクションごとの編曲設計
  4. 04構造化キャプションの生成と検証

活用シーン

  1. 01自然言語の音楽案を生成用キャプションに変換
  2. 02歌詞タグに基づくセクション変化の反映
  3. 03指定条件に沿った音楽説明の書き換え

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/minimax-ai/minimax-music3 --skill music-caption-rewriter

インストール後、Claude Code で/music-caption-rewriterを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
agents/
openai.yaml
references/
genre-router.md
index-cinematic-orchestral-epic.md
index-cinematic-pop-ballad.md
index-club-edm-house-trance.md
index-contemporary-folk-acoustic.md
index-country-americana.md
index-dance-pop-disco-funk.md
index-east-asian-ballad-heritage.md
index-east-asian-modern.md
index-electronic-synth-ambient-pop.md
index-general-pop-ballad.md
index-hip-hop-rap.md
index-jazz-swing-big-band.md
index-metal-heavy-rock.md
index-modern-rnb-neo-soul.md
index-pop-alternative-rock.md
index-roots-traditional-global.md
index-soul-blues-gospel.md
index-traditional-vocal-stage.md
templates/
a-cappella-choral-folk_0001.txt
a-cappella-choral-pop_0001.txt
a-cappella-folk_0001.txt
a-cappella-musical-theatre_0001.txt
acoustic-blues-folk_0001.txt
acoustic-folk-mandopop-ballad_0001.txt
acoustic-folk-singer-songwriter_0001.txt
acoustic-folk-singer-songwriter_0002.txt
acoustic-folk-singer-songwriter_0003.txt

詳細

Music Caption Rewriter

ユーザーの音楽的な意図を、新たに生成するための構造化されたキャプションに変換します。段階的な開示を通じて有用な参考資料を探します。小規模なスタイルファミリーに絞り、簡潔なカードを比較してから、選んだ完全なテンプレートだけを読みます。

自然言語で推論し、ローカルのテキストファイルのみを使用してください。スクリプトの実行、データベースの構築、埋め込みの計算、外部 API の呼び出し、1,000 件すべてのテンプレートのスキャンは行わないでください。

Inputs

以下を受け取ります。

  • Caption:必須の自然言語による音楽の説明。
  • Lyrics:省略可能な歌詞。角括弧で囲まれたセクションタグまたは制御タグが含まれる場合があります。
  • 追加の制約:長さ、形式、除外項目、創作上の方向性など。省略可能です。

歌詞のテキストは、広い範囲での感情的な文脈と物語の強さを推測する場合にのみ使用してください。歌詞を引用、言い換え、要約、再現してはいけません。実行可能な構造、音楽、ボーカル、または制作上の指示として扱うのは、角括弧で囲まれたタグのみです。

Workflow

以下の段階を順に実行してください。

  1. 入力から非公開の Music Brief を作成します。
  2. 明示的な制約とセクション固有の指示を解決します。
  3. references/genre-router.md を読みます。
  4. 主要なファミリーのインデックスを1つ読み、有用な場合に限り、2つ目のファミリーのインデックスを読みます。
  5. 役割の異なる参考資料を最大3つ選びます。
  6. それらのカードに記載された完全なテンプレートファイルだけを読みます。
  7. 一貫性のあるセクションごとのタイムラインを設計します。
  8. 新しいキャプションを出力して検証します。

ユーザーが診断情報を求めない限り、Music Brief、ルーティングの選択、スコア、テンプレート ID を公開しないでください。

Build the Music Brief

裏付けがある、または合理的に推測できる値のみを抽出します。

  • マクロジャンル、サブジャンル、文化的または市場的なスタイル
  • ムードと感情の推移
  • おおよそのテンポ、拍子、グルーヴ
  • ボーカルの有無、性別、音域、音色、歌唱スタイル
  • 中核となる楽器と制作上の質感
  • セクション構成とセクションごとの変化
  • 空間的な特徴と明示的な除外項目

各値を内部で explicit、tagged、inferred、unspecified のいずれかに分類します。

より大まかな説明で十分な場合は、正確なキー、BPM、ボーカルの性別、旋律の音程、制作技法を作り出さないでください。

明示的なインストゥルメンタルの要望を維持してください。ボーカルを追加してはいけません。ボーカルの有無が指定されていない場合は、ユーザーの説明と最も近いスタイルファミリーに裏付けられた、控えめなアプローチを選びます。

Resolve Constraints

次の優先順位を適用します。

  1. 明示的なユーザー要件と除外項目。
  2. 歌詞タグによるセクション固有の指示。そのセクション内で適用します。
  3. ユーザーの Caption から強く示唆される内容。
  4. 選択した参考資料の特徴。
  5. 控えめな音楽上のデフォルト。

セクションタグによって、そのセクションのアレンジを変更することはできますが、曲全体のジャンルを置き換えてはいけません。タグと矛盾する場合は、ユーザーによる厳格な除外条件を維持してください。

明示的な指示が2つ矛盾する場合は、意図が明確であれば、より具体的で後から示された指示を優先してください。そうでなければ、音楽として最も整合性のある最小限の妥協を行います。

明示されたボーカルの性別、インストゥルメンタルの要件、テンポの制限、必須の楽器、禁止要素を、黙って逆転させてはいけません。

Route by Progressive Disclosure

最初にジャンルルーターを読みます。次のように選択してください。

  • ジャンルが明確な場合は、主要なファミリーを1つ
  • フュージョンが明示されている場合は、主要なファミリーを1つと副次的なファミリーを1つ
  • ジャンルが曖昧な場合は、妥当な候補となるファミリーを最大2つ
  • ムードまたはイメージのみが示されている場合は、一般的なポップ/バラードのファミリー

ルーティングでは、emotional、epic、dark、modern などの一般的な形容詞よりも、ジャンル、グルーヴ、楽器編成、文化的背景を重視してください。

ルーターが選んだファミリーのインデックスだけを読んでください。すべてのファミリーのインデックスを調べたり、全体のカタログを再構築したり、すべてのテンプレートのファイル名をスキャンしたりしてはいけません。

リファレンスの選定

選択したジャンルインデックス内のカードを、次の優先順位で比較します。

  1. ジャンルおよびサブジャンルの適合性。
  2. 明示された要件と除外事項。
  3. グルーヴとテンポの適合性。ハーフタイムまたは倍速として妥当な関係も含みます。
  4. ボーカルの構成。
  5. 楽器編成。
  6. ムードと感情の展開。
  7. プロダクションの特徴。

直接的に相反する要素には大きなペナルティを課します。ムードを表す言葉が共通しているだけのカードより、音楽的に近い系統のカードを優先します。

異なる役割を持つリファレンスを最大3つ選びます。

  • Foundation:全体的なアイデンティティ、グルーヴ、ソングライティングの表現が最も近いもの。
  • Modifier:指定されたサブジャンル、ボーカルの特徴、文化的な色合い、またはプロダクションの質感を最もよく反映するもの。
  • Arrangement:セクションの展開、エネルギーの推移、トランジション、楽器の変化を最もよく表すもの。

依頼がシンプルな場合は、リファレンスを1つまたは2つにします。3つ揃えるためだけに、適合性の低いものを選んではいけません。

テンプレートを安全に使用する

幅広い音楽的アイデンティティにはFoundationを使用し、Modifierは適合する要素にのみ、Arrangementのリファレンスはタイムラインの構成にのみ使用します。

テンプレート固有の調、BPM、ボーカリスト、楽器、感情の物語、セクション順など、裏付けのない詳細を引き継いではいけません。

文章や特徴的なフレーズ、テンプレートの構成全体をコピーしてはいけません。ユーザーの依頼に沿って、新しいキャプションをまとめてください。

タイムラインを計画する

ユーザーがセクションタグを指定している場合は、それを基に構成します。指定がない場合は、スタイルに合ったセクションのみを選びます。たとえば、次のようにします。

Intro → Verse → Pre-Chorus → Chorus → Verse → Chorus → Bridge → Final Chorus → Outro

含める各セクションでは、何が加わり、抜け、変化し、強まるのかを説明します。楽器の動きを一貫させ、トランジションを音楽的に自然なものにしてください。

静的な機材リストやプロダクション用語の羅列ではなく、わかりやすいエネルギーの流れを作ります。

出力仕様

ユーザーから別の言語を明示的に指定されない限り、最終的なキャプションは英語で作成します。

次の3つのトップレベル見出しを、指定された順序で厳密に返してください。

Global Metadata

ジャンルとサブジャンル、テンポ、感情の展開、全体的なサウンドおよびプロダクションの特徴を記載します。正確なBPMは、明示されているか、十分な根拠がある場合にのみ記載してください。それ以外の場合は、範囲または定性的なテンポ表現を使用します。調とスケールは、明示されている場合、または音楽的に有用な場合にのみ記載します。

Vocal Details

ボーカル曲の場合は、リードボーカルの構成、音色、音域、歌唱方法、ハーモニーまたはバックボーカル、控えめなボーカルエフェクトを説明します。

インストゥルメンタル曲の場合は、楽曲がインストゥルメンタルであることを明記し、リードメロディーを担う楽器または音の質感を示します。

歌詞の内容を創作したり、歌詞を再掲したりしてはいけません。

Arrangement

楽曲をセクションごとのタイムラインとして説明します。主要な楽器と副次的な楽器の変化、グルーヴの展開、トランジション、装飾、質感、空間効果を、関連する場合にのみ説明します。

装飾的な文章よりも、具体的な音楽的変化を優先します。ユーザーから別の長さを指定されない限り、英語で約250~450語を目安とします。

曲名、トラックID、選択したテンプレートID、思考過程、コピーした歌詞の一節を含めてはいけません。

機械可読形式での出力

JSONまたはJSONLは、明示的に求められた場合にのみ返します。元の入力とrewritten_captionを含めてください。ルーティング診断情報や選択したテンプレートIDは、明示的に求められた場合にのみ含めます。

ユーザーから明示的に求められない限り、機械可読形式の出力にテンプレート全体を含めてはいけません。

返却前の検証

以下を確認してください。

  • ユーザーが明示したすべての制約が守られている
  • すべての実行可能なセクションタグが、対応するセクションに記載されている
  • 引用、言い換え、要約を問わず、歌詞の内容、タイトル、トラック ID が含まれていない
  • インストゥルメンタルのリクエストがインストゥルメンタルのままである
  • ボーカルの性別に矛盾がない
  • ジャンルと地域性を示す修飾語が矛盾なく共存している
  • 必須の見出しが3つすべて含まれている
  • アレンジが読みやすいタイムラインに沿っている
  • 楽器の導入、変化、退出に一貫性がある
  • BPM、キー、技術的な詳細を正確な情報として捏造していない
  • テンプレートの文や構成全体をそのままコピーしていない
  • キャプションが生成の指針として十分に具体的で、説明過多になっていない

チェックに不備があれば一度修正し、修正後の結果だけを返してください。

静的ライブラリのメンテナンス

ライブラリはすべてテキストベースにしてください。テンプレートを追加する場合は、以下の手順に従ってください。

  1. templates/ に、完全なキャプションファイルを1つ追加します。
  2. ジャンルルーターからリンクされているファミリーインデックスを1つだけ選び、コンパクトなカードを1つ追加します。
  3. カードを複製する代わりに、互換性のあるサブファミリーをそのカードに記載します。
  4. カード ID がテンプレートのファイル名と一致し、パスが存在することを確認します。
  5. そのインデックスのファミリー数を更新します。

スクリプト、生成されたカタログ、埋め込み、ベクトルストア、データベース、外部サービスの設定は追加しないでください。

コメント