Communitygithub.com

音楽生成スキル

シーン、動画、ゲーム、カスタム楽曲向けにプロシージャル音楽を生成します。サウンドトラック、アンダースコア、ジングル、ループ、ナレーション下の音楽、テーマ、楽器クローン、ミキシング/マスタリング、またはロボット的・フラット・ムード外の音楽に対して使用します。リサーチ、ディレクションシート、カスタムプリセット、宣言的スコアを含むプロジェクトを作成し、品質ゲートを通過するまでpipeline.pyでレンダリングします。

音楽生成スキル とは?

このスキルは、厳格で計測可能なパイプラインを通じてオリジナル音楽を生成するプロシージャル音楽生成システムです。すべての意思決定はAIエージェントが行い、スクリプトはそれを実行します。パイプラインは主観的な推測ではなく、客観的な測定値と品質ゲートを使用します。動画、ゲーム、広告、ポッドキャスト、ナレーションなど向けのオリジナル楽曲作成に適しています。ムード記述(例:「緊張感あふれるシネマティックな盛り上がり」「落ち着いたローファイ」)からサウンドトラックを生成したり、録音から楽器をクローンしたり、既存のステムのミキシング/マスタリング、カットやダイアログを含む動画へのスコアリング、ロボット的・平板・不均衡な音楽の修正、カルナティック、アラビア、アフリカ、東アジアなどの特定文化スタイルの処理が可能です。ワークフローはプロジェクト作成、リサーチ、ディレクションシート作成、プリセット作成、スコア記述、レンダリングと品質ゲート、リビジョン、納品の順で構成され、各ステップが明確に定義されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rashee1997/music-generator/tree/HEAD

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

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

ドキュメント

Music Generator

オリジナル音楽を厳格で計測可能なパイプラインを通じて生成するプロシージャル音楽生成システム。すべての決定はエージェントが行い、スクリプトがそれを実行します。パイプラインは主観的な推測ではなく、客観的な測定値と品質ゲートを使用します。

使用すべきタイミング

以下の場合にこのスキルを使用します:

  • 動画、ゲーム、広告、ポッドキャスト、ナレーション向けのオリジナル音楽を作成する
  • ムード記述からサウンドトラックを生成する(例:「緊張感あふれるシネマティックな盛り上がり」「落ち着いたローファイ」)
  • 録音から楽器をクローンする
  • 既存のステムをミキシングまたはマスタリングする
  • カットやダイアログを含む動画にスコアリングする
  • ロボット的、平板、または不均衡な音楽を修正する
  • 特定の文化スタイル(カルナティック、アラビア、アフリカ、東アジアなど)を扱う

クイックスタート

スキルディレクトリから仮想環境を使用して実行します:

  • Windows:.venv/Scripts/python.exe
  • Unix:.venv/bin/python

初回セットアップ:references/setup.mdを参照してください。

ワークフロー

以下の手順を順番に実行します。ステップを省略しないでください。

ステップアクション出力チェック
1プロジェクト作成python scripts/setup_project.py --new-project <dir> --title "<Title>"(--ambienceは明示的に要求された場合のみ追加)direction/、presets/、scores/、out/、reports/、STATUS.mdを含むプロジェクト構造
2リサーチpython scripts/research_kb.py <dir> --topic "<topic>" --tags <tags>。TinyFishでウェブソースを追加。アンビエンス/エフェクトの場合は--soundsを使用し、ライセンス/測定値を含む実際のリファレンスを文書化。KB引用とソースを含むreports/research_<topic>.md
3ディレクションシートtemplates/direction_sheet.jsonを<dir>/direction/direction_<title>.jsonにコピー。references/music-direction.mdに従いすべてのフィールドを記入。動画の場合は最初にscripts/video_score.pyを実行。ジョブ、雰囲気、セクション、モチーフ、ヒット、ミックス意図、空間ステージングを含む完全なシート
4プリセット作成python scripts/presets.py scaffold instruments/vocals/environments/sfx <name> --project <dir>。それぞれに固有の空間配置が必要。キャラクター、spatial.azimuth/distanceを含むプロジェクト内のプリセット
5スコア記述<dir>/scores/<title>_score.jsonを作成(宣言的、プリセットを参照)。詳細な制御にはtemplates/custom_score_template.pyを使用。プリセットを参照するトラックを含む有効なJSON
6レンダリングとゲートpython scripts/pipeline.py <dir>/scores/<title>_score.json --project <dir>out/master.wav(最新バージョンのコピー)、out/master_vNN.wav、out/versions.json、<master>.jsonタグ、stems/、midi/、FAILが0のreports/ci_report.json
7リビジョン一度に1つのレバーを変更(references/music-direction.md§6)。全ゲートが緑色になるまでステップ6を再実行(最大5回試行)。すべてのゲート通過
8試聴と納品python scripts/listen.py out/master.wav --direction direction/<sheet>.json結果を確認し報告

納品メタデータとバージョン

認証は、音楽ゲート通過後に自動的に3つのものを書き込みます:

  • out/master_vNN.wav — 認証されたレンダリングごとに独自のバージョンファイルが作成されます。以前のバージョンは保持され、再レンダリングしても上書きされません。
  • out/master.wav — 単一のマスターを期待するツール向けに、最新バージョンのコピー。
  • out/versions.json — 各バージョンとそのタイムスタンプ、測定値、およびそれを獲得した変更(クリアしたゲート障害、または「最初の認証レンダリング」)を記録。
  • out/master.json — マスターの横に書き込まれる標準タグ。

タグの出典:presets/metatdats/metadata.jsonのデフォルト値(アーティスト、アルバム、著作権、ライセンス、出版社、ISRC、言語)、次にスコアから派生した値(タイトル、piece_typeからのジャンル、年、事実に基づく「キー · BPM · piece_type」コメント)、最後にプロジェクト自身のmetadata.jsonがオーバーライド。実際の値はスクリプトではなく<project>/metadata.jsonに書き込んでください。

エージェント向けルール:

  • master_vNN.wavやversions.jsonのレコードを決して削除または上書きしないでください。クリーンテイクが必要な場合、それは新しいバージョンになります。
  • レンダリング後に記録を確認:python scripts/helpers/version_manager.py list --project <dir>。
  • MP3圧縮は手動であり、パイプラインの一部ではありません:python scripts/helpers/compress_mp3.py out/master_vNN.wav -o <file>.mp3 -b 320k。サイドカータグをMP3に引き継ぎます。
  • ゲート行meta.tagsとmeta.versionはこのレコードのみを追跡します。これらは警告を出しますが、失敗することはなく、最初のレンダリングではINFOです。

主要原則

  • モジュール性:音/空間はpresets/、音符はscores/、意図はdirection/に。モノリシックなスクリプトはありません。
  • リサーチ駆動:すべてのカスタム楽器/ボーカル/文化にはKBリサーチの引用が必要です。
  • コードよりデータ:新しい音はPythonジェネレーターではなくシーンデータ("scene"/"scene_layers")を使用します。
  • 一度に1つの変更:ゲート障害を修正するときは、パラメーターを1つだけ変更し再測定します。
  • 推測ではなく測定:パイプラインの指標と診断を使用します。味覚は測定されません。
  • すべての楽曲にミックスプリセット:ゲインステージング、ダイナミクス、サイドチェイン、マスタリングを制御します。

タスク別ルート

タスク主な参照先
動画スコアリング/カットreferences/video-scoring.md、scripts/video_score.py
ボーカル/合唱/ハミングreferences/vocals-and-choirs.md、references/vocal-engine.md
文化スタイル/フュージョンknowledgebase/README.md、references/cultural-soul.md、references/genre-fusion.md
SFX/アンビエンス/フォーリーreferences/sound-effects.md、references/physical-scene.md、references/environments-as-presets.md
SFZオーケストラreferences/sfz-libraries.md、scripts/sfz_libs.py
楽器クローン/抽出references/instrument-cloning.md、references/extraction.md
ミキシング/マスタリングreferences/mixing-and-mastering.md、scripts/mixer.py、scripts/mix_diagnostics.py
ゲート障害references/quality-gate.md、scripts/gate_profiles.py

出力テンプレート

Done: out/master.wav (Xs, -X.X LUFS, -X.X dBTP)、midi/<title>_score.mid、stems/ (N)、reports/ci_report.json。
What it is: <雰囲気、キー、BPM、楽器、プリセット>。
Gates: <N pass, 0 fail after K attempts>;listen: <測定値>。
Not checked: 味覚、実楽器リアリズム、最終動画への適合性。
Next: <1つの提案された変更>。

注意事項と制限

  • デフォルトでGM SoundFontを使用。SFZライブラリはオプション。標準合成では歌詞はありません(合唱/ハミングはテクスチャとして扱われます)。
  • listen.pyはearshotモデルが必要(インストールするにはpython scripts/setup_project.py --earsを実行)。
  • ヘッドフォン空間化はspatial.binaural: trueのプリセットのみ。
  • ミックス診断は報告しますがゲートをブロックしません(ブロックするゲートは品質ゲートにあります)。
  • 完全なルールについてはAGENTS.md、完全な制限についてはreferences/troubleshooting-and-limits.mdを参照してください。

関連スキル