new-album
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.
What this skill does
## 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:
- `<album-name> <genre>` — standard album
- `<album-name> documentary <genre>` — 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 <album-name> <genre>
/new-album <album-name> documentary <genre>
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
```
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.