三国志HIPHOP制作ウィザード
トリガーワード
「三国志」「sangoku」「/sangoku-song」
前提知識(進行開行に必ず読み込む)
📁 保存場所(固定・変更禁止): 全成果物は
/home/yn4416/projects/sangokushi-HIPHOP/songs/<武将>_<エピソード>/配下に保存すること。~/Music/には一切保存しない。スキル実行時は最初にmkdir -pで正規パスを事前作成し、そこ以外にファイルを作らないこと。
references/発音ルール.md(硬制約・造語/誤読再発防止・は→わ)references/曲構成_BPM計算.md(テンポ×曲長連動・構造タグ14種)references/固有名詞マップ.md(読み辞書・janome限界)references/music-cover手法.md(発音問題の公式解法)references/韻技術.md(母音ベース韻・Phase 2 で使用)references/武将カタログ.md(Phase 0 選択用)references/ジャンルカタログ.md(Phase 1 選択用)
🔗 作曲エンジン共通参照(
make-songへ共通化済み・必ず参照):
../make-song/references/[L1]プロンプト技法.md(Phase 1/3 参照・GMIV順序・具体語推・楽器制限・括弧/コロン記法)../make-song/references/[L1]構造理論.md(Phase 2 参照・小節×BPM・ジャンル別構造・感情曲線Emotion Arc)../make-song/references/[L1]楽曲制作基礎_ジャンル別.md(Phase 1 参照・コード進行語彙・スケール・リズム・10ジャンルの作曲の型)../make-song/references/[L1]日本語歌詞技法.md(Phase 2 参照・韻・歌詞構成論・音節設計)本スキル固有の
発音ルール.md/曲構成_BPM計算.md/武将カタログ.md/ジャンルカタログ.mdは三国志HIPHOP特化として残存・上記共通知識と併用すること。
進行(7フェーズ・ハイブリッド)
🔴 = 人間判断ポイント。必ず停止してユーザー確認を待つ。 楽曲制作は「聴かないと分からない」ので生成ごとに停止(曹仁v1-v8の失敗→修正ループの再現)。
Phase 0: 武将選択(起点)
AskUserQuestion で選択式:
質問:「どの武将で作りますか?」
選択肢(武将カタログから代表):
曹操 / 曹仁 / 関羽 / 張飛 / 趙雲 / 諸葛亮 / 呂布 / 周瑜 / 劉備 / 司馬懿
+「その他(カタログ参照)」
💡 外部楽曲ベースの場合: YouTube動画から世界観・構造を逆コンパイルしたい時は
reverse-engineer-songスキルを使用(「YouTubeから分析して」等)。出力仕様書を本skillの Phase 0「その他」経由で持ち込み可能。
💡 汎用の作曲・作詞(テーマ不限)の場合:
make-songスキルを使用(「曲作って」「作曲して」等)。本スキルは三国志HIPHOP固有だが、作曲エンジン部分はmake-songに共通化されている。必要に応じてmake-songの参照(プロンプト技法・構造理論・発音問題等)を活用可。
選択後、references/武将カタログ.md からその武将の 代表作戦・人物像・推奨ジャンル/テンポ を提示。
Phase 1: 設計パラメータ固め(核心5項目)
AskUserQuestion で順に選択式:
- 対象エピソード/戦 — 選んだ武将のカタログから候補提示(曹仁→「樊城籠城戦」等)
- ジャンル — 代表8個 +「その他」:
和風HIPHOP / グレイトフル・デイズ風 / 中華風HIPHOP / トラップ / ドリル / オーケストラHIPHOP / ブームバップ / ヌメタルHIPHOP - テンポ感 → BPM —
スロー70-85 / ミドル86-100 / アップ101-115 / ファスト116+ / 数値直接指定 - 曲の規模 —
フック8小節 / フック16小節 / 60秒 / フル3分 / フル4分※ 秒数は BPM から自動算出して表示(秒数 = 小節数 × 4 × 60 / BPM)。曲構成_BPM計算.md参照。 - ボーカル性別 —
男 / 女 / デュオ(F)(M)
Phase 2: 歌詞制作(スキル内10ステップ・硬制約適用)
発音ルール.md と 固有名詞マップ.md を厳守しながら:
- テーマ確定 → 史実確認(カタログの史実参照)
- 構成設計 →
曲構成_BPM計算.mdで小節数逆算 - 漢字で歌詞執筆(意味明確に)
- ひらがな化 →
scripts/kanji_to_hiragana.pyでjanome確認(固有名詞マップ適用) - 発音制御 → 助詞「は→わ」全適用(発音ルール.md)
- 日本語チェック → 造語・不自然表現スキャン(1行ずつ音読)
- 漢字版併記(ユーザー照合用・必須)
- 韻設計 →
韻技術.mdで母音列調整 - 生成前チェックリスト(発音ルール.md §6項目全確認)
- 🔴 人間判断: 漢字版歌詞を提示 → 「この歌詞で生成していいですか?」
Phase 3: 楽曲生成
- MiniMax MCP
music_generation(model=music-2.6)で生成- prompt: ジャンルカタログの英語プロンプト指針
- lyrics: Phase 2 のひらがな歌詞(構造タグ
[Verse 1][Chorus]等)
- 🔴 人間判断: 聴取 → 「発音/曲調はどうですか?」
- 発音問題あれば music-cover ループ(
music-cover手法.md):- 良い回を即
music_cover_preprocess(無料・直接API)→cover_feature_id(24h有効) - 修正歌詞で
music-cover生成(直接API・MCP不可) - → 再聴取
- 良い回を即
Phase 4: アートワーク(画像)
- MiniMax MCP
text_to_image(image-01)で構図生成- 水墨画風・武将の象徴シーン(曹仁なら籠城/関羽攻撃/洪水 等)
- 構造化プロンプト推奨(出典: サイバー和モダン映像分析・Gemini生成):
[スタイル] + [被写体] + [環境/小物] + [照明/色] + [構図] --ar 16:9- 例:
Chinese ink wash painting, general Cao Ren on flooded walls, rain and storm clouds, dramatic lighting indigo and crimson, cinematic --ar 16:9
- 例:
- 🔴 花鈿(眉間の赤点)あれば →
remove-huadianスキルを自動呼出 - 🔴 人間判断: 「構図/花鈿除去はこれでいいですか?」
Phase 5: 動画生成
- MiniMax MCP
generate_video(Hailuo-2.3)で生成- FL2V(開始+終了帧)/ S2V(人物参照)/ I2V(静止画→動画)を
00_SYSTEM/AI生成メディア_ケイパビリティマップ.md参照で選択 - 最大10秒。15秒は10s+5sを2本→ffmpeg結合
- モーション指示(出典: サイバー和モダン映像分析・Gemini生成):
- 静(Lofi/籠城):
perfect loop, subtle swaying smoke, slow grain, no sudden camera movement - 動(戦闘/サビ):
fast dynamic camera panning, ink transition effect, aggressive particle motion
- 静(Lofi/籠城):
- FL2V(開始+終了帧)/ S2V(人物参照)/ I2V(静止画→動画)を
- 🔴 人間判断: 「動画はこれでいいですか?」
- Token Plan制限時: 従量課金($0.19~/本)を案内してスキップ可、または
MINIMAX_API_KEY_VIDEO(別アカウント)で直接API生成(00_SYSTEM/AI生成メディア_ケイパビリティマップ.md§2 参照)
- Token Plan制限時: 従量課金($0.19~/本)を案内してスキップ可、または
Phase 6: 成果物整理 + SSOT記録
- 楽曲ディレクトリに格納(
/home/yn4416/projects/sangokushi-HIPHOP/songs/<武将>_<エピソード>/)lyrics.md(ひらがな+漢字版+修正履歴)README.md(アートワーク・履歴表)_INDEX.md更新
- SSOT記録(既存ルール準拠):
01_DECISIONS/ai-music/YYYY-MM-DD_<武将><エピソード>.md(詳細)10_DAILY/YYYY-MM-DD.md(サマリー+リンク)
エラー処理・フォールバック
| 障害 | 対処 |
|---|---|
| 🔴発音問題(聴取後) | music-coverループ(music-cover手法.md) |
| 🔴生成揺らぎ | 良い回を即 preprocess 保存(cover_feature_id は24h有効) |
| 🔴動画Token Plan制限 | 従量課金($0.19~/本)案内してスキップ可 |
| 🔴花鈿(眉間の赤点) | remove-huadian スキルを自動呼出 |
| 🔴造語/漢字誤読 | Phase 2 の品質チェックで硬制約(janome+固有名詞マップ・人間最終確認) |
重要: MCP説明文 ≠ 公式仕様
music_generation MCP説明文に「up to 1 minute」とあるが誤り。曲長は BPM×小節数で決まり、5分曲も可能(曹仁v8=175秒で実証)。長さ・コスト・機能の上限は references/曲構成_BPM計算.md と 00_SYSTEM/AI生成メディア_ケイパビリティマップ.md を信じる。
関連
references/7本(知識層)scripts/kanji_to_hiragana.py(janome一括変換・venv:~/venv/janome)- 既存スキル
remove-huadian(花鈿除去・Phase 4 で呼出) - 設計書:
obsidian-ssot/01_DECISIONS/ai-music/2026-06-15_sangoku-songスキル_design.md