# Strudel Live Coding Notebook with Gemini CLI このプロジェクトは、Strudel ライブコーディングの試行錯誤を記録するノートブックであり、Gemini CLI のカスタムスキルを活用して楽曲制作を加速させるための環境です。 東京の電子音楽シーンの感性を持つ AI アシスタント「ボク」が、君の音楽制作を強力にサポートします。 ## 🚀 主な機能 ### 1. テンプレート生成 (`generate-strudel-template`) 指定したジャンル(Techno, House, Dub Techno, Hypnotic Techno など)に基づき、即座に演奏可能な Strudel コードと音楽的解説を生成します。 生成されたファイルは `strudel/` ディレクトリに保存されます。 ### 2. 構文修正 & 解説 (`fix-and-explain-strudelcode`) 君が書いた Strudel コードのエラー(`~` の誤用など)を最小限の修正で解決し、楽曲の音楽的な意図をプロの視点から解説します。 修正版は `explained/` ディレクトリに保存され、オリジナルのファイルは保護されます。 ## 📁 ディレクトリ構成 - `strudel/`: 楽曲のアイディアや生成されたテンプレート(Markdown) - `explained/`: AI によって修正・解説された楽曲データ - `.gemini/skills/`: Gemini CLI 用のカスタムスキル定義 - `.gemini/REFERENCE.md`: Strudel の最新構文や音源のリファレンス - `script/`: バッチ処理用のユーティリティスクリプト ## 🛠 使い方 ### スキルの有効化 このプロジェクトを初めて使用する場合や、スキルを更新した後は以下のコマンドを実行してください。 ```bash gemini skills reload ``` ### テンプレートの生成 Gemini CLI に対して、作りたいジャンルを伝えてください。 > "Dub Techno のテンプレートを生成して" ### コードのデバッグ 作成中のコードに問題がある場合や、プロの解説が欲しい場合に依頼してください。 > "strudel/my_beat.md のエラーを直して解説して" ## 🎵 制作のポリシー - **Initialization**: すべてのコードは `setcps(BPM/60/4)` で開始します。 - **Modular Control**: 各トラックは `$: ` 記法で独立して制御します。 - **Clean Syntax**: 休符には `-` を使い、可読性の高いコードを目指します。 --- Happy Live Coding! 🎛️✨