--- name: new-album description: Creates a new album with the correct directory structure and templates. Use IMMEDIATELY when the user says 'make a new album' or similar, before any discussion. argument-hint: model: claude-haiku-4-5-20251001 allowed-tools: - Read - Bash - Write - bitwize-music-mcp --- ## Your Task **Input**: $ARGUMENTS Create a new album directory structure with all required files and templates. --- # New Album Skill You create the complete album directory structure based on config. ## Step 1: Parse Arguments Expected formats: - ` ` — standard album - ` documentary ` — true-story/documentary album (creates RESEARCH.md + SOURCES.md) Examples: - `sample-album electronic` - `my-new-album hip-hop` - `protest-songs folk` - `the-heist documentary hip-hop` Valid genres: Any genre that has a directory under `${CLAUDE_PLUGIN_ROOT}/genres/`. Use the slug form (lowercase, hyphenated) — e.g. `deep-house`, `crust-punk`, `k-pop`, `hip-hop`. To check if a genre is valid, verify `${CLAUDE_PLUGIN_ROOT}/genres/{genre}/README.md` exists. **Parsing logic:** 1. If 3 arguments and second is `documentary`: album = arg1, genre = arg3, documentary = true 2. If 2 arguments: album = arg1, genre = arg2, documentary = false 3. If 2 arguments and neither matches a valid genre slug: ask for clarification 4. If only 1 argument or none: ask the user **After parsing, if documentary flag was not set, ask:** "Is this a documentary/true-story album? (This adds research and sources templates.)" If arguments are missing, ask: ``` Usage: /new-album /new-album documentary Example: /new-album sample-album electronic /new-album the-heist documentary hip-hop /new-album night-drive deep-house Genre must match a directory under genres/ (use slug form: deep-house, crust-punk, etc.) ``` ## Step 2: Create Album via MCP Call `create_album_structure(album_slug, genre, documentary)` — creates the complete directory structure with templates in one call. - Creates content directory at `{content_root}/artists/{artist}/albums/{genre}/{album-name}/` - Copies album template as README.md - Creates `tracks/` and `promo/` directories with templates - For documentary albums (`documentary: true`): also creates RESEARCH.md and SOURCES.md - Returns `{created: bool, path: str, files: [...]}` - If album already exists, returns an error **Note**: Audio and documents directories are NOT created (those are created when needed by import-audio/import-art). ## Step 3: Confirm Report: ``` Created album: {album-name} Location: {album_path} Files created: - README.md (album template) - tracks/ (empty, ready for track files) - promo/ (social media copy templates) Next steps: Option 1 - Interactive (Recommended): Run /bitwize-music:album-conceptualizer to design your album concept through the 7 Planning Phases. Option 2 - Manual: 1. Edit README.md with your album concept 2. Create tracks with /import-track or manually in tracks/ Tip: For OST/soundtrack albums with a mix of vocal and instrumental tracks, the album-conceptualizer will ask about the vocal/instrumental split per track. Set `instrumental: true` in track frontmatter for instrumental tracks — they skip the lyrics workflow and go directly to /bitwize-music:suno-engineer. ``` ## Error Handling **Config file missing:** ``` Error: Config not found at ~/.bitwize-music/config.yaml Run /configure to set up. ``` **Invalid genre:** ``` Error: Invalid genre "{genre}" No genre directory found at genres/{genre}/. Use a valid genre slug (e.g. hip-hop, deep-house, grindcore). Check genres/INDEX.md for the full list. ``` **Album already exists:** ``` Error: Album already exists at {album_path} ``` **Templates not found:** ``` Error: Templates not found. Is the plugin installed correctly? Expected at: ${CLAUDE_PLUGIN_ROOT}/templates/ ``` --- ## Examples ``` /new-album sample-album electronic ``` Config has: ```yaml paths: content_root: ~/bitwize-music artist: name: bitwize ``` Result: ``` Created album: sample-album Location: ~/bitwize-music/artists/bitwize/albums/electronic/sample-album/ Files created: - README.md (album template) - tracks/ (empty, ready for track files) Next steps: Option 1 - Interactive (Recommended): Run /bitwize-music:album-conceptualizer to design your album concept through the 7 Planning Phases. Option 2 - Manual: 1. Edit README.md with your album concept 2. Create tracks with /import-track or manually in tracks/ ``` --- ## True Story Albums If user mentions this is a documentary or true-story album: ``` /new-album the-heist documentary hip-hop ``` The `create_album_structure(album_slug, genre, documentary=true)` call automatically creates RESEARCH.md and SOURCES.md from templates. Report: ``` Created album: the-heist (documentary) Location: ~/bitwize-music/artists/bitwize/albums/hip-hop/the-heist/ Files created: - README.md (album template) - RESEARCH.md (research template) - SOURCES.md (sources template) - tracks/ (empty, ready for track files) ``` --- ## Common Mistakes ### ❌ Don't: Create directories manually **Wrong:** ```bash # Manual mkdir, config reading, template copying cat ~/.bitwize-music/config.yaml mkdir -p ~/music-projects/artists/bitwize/albums/... cp templates/album.md ... ``` **Right:** ``` # Single MCP call handles everything create_album_structure(album_slug, genre, documentary) ``` The MCP tool reads config, resolves paths, creates directories, and copies templates automatically. ### ✅ Do: Use the specific genre slug Any genre with a directory under `genres/` is valid. Use the most specific genre that fits: ```bash /new-album my-album boom-bap # has its own genre directory /new-album my-album deep-house # specific subgenre /new-album my-album grindcore # specific subgenre /new-album my-album hip-hop # broad category also works ```