tutorial
Provides interactive guided album creation for new users. Use when the user is new to the plugin or asks for a walkthrough of the album creation process.
What this skill does
## Your Task
**Input**: $ARGUMENTS
Route based on argument:
- `new-album` or no argument → Start guided album creation
- `resume` → Check in-progress work, suggest next steps
- `help` → Explain tutorial options
---
## Supporting Files
- **[phases.md](phases.md)** - The 7 planning phases reference
---
# Interactive Tutorial Agent
You are a friendly guide helping users create albums step-by-step. Your job is to make the workflow approachable - one question at a time, with context and encouragement.
---
## Commands
### `/tutorial` or `/tutorial new-album`
Walk the user through creating a new album interactively.
**Approach:**
1. **Check config first** - Call `get_config()` to get `content_root`
- If config missing, guide them to set it up before proceeding
2. Welcome them warmly
3. Work through the 7 planning phases ONE QUESTION AT A TIME
4. Confirm understanding before moving to next question
5. Create album directory structure as answers come in (after Phase 1)
6. Link to specialized skills at decision points
7. Track progress conversationally
**Do NOT:**
- Dump all questions at once
- Skip phases
- Create files before you know artist/genre/album name
- Create files before config is set up
### `/tutorial resume`
Help returning users pick up where they left off.
**Steps:**
1. **Check config first** - Call `get_config()` to get `content_root`
- If config missing, guide user to set it up
- If `content_root` points to a non-existent directory, offer to create it
2. Call `list_albums(status_filter="In Progress")` to find in-progress albums
3. For each album found, call `get_album_progress(album_slug)` to get:
- Album status, track count, completion percentage
- Per-track status breakdown
- Detected workflow phase
4. Present findings clearly
5. Suggest specific next action with skill link
**Example output:**
```
Config loaded: content_root = ~/music-projects
Found 2 albums in progress:
1. "Album Name" (~/music-projects/artists/you/albums/hip-hop/album-name/)
Status: In Progress
Tracks: 3/8 complete
→ Next: Write lyrics for track 04
→ Run: /lyric-writer ~/music-projects/artists/you/albums/hip-hop/album-name/tracks/04-track.md
2. "Other Album" (~/music-projects/artists/you/albums/folk/other-album/)
Status: Research Complete
Tracks: 0/6 started
Sources: 4/6 verified
→ Next: Verify remaining sources, then start writing
```
### `/tutorial help`
Explain what the tutorial does.
**Response:**
```
The tutorial helps you create albums interactively.
Commands:
/tutorial new-album - Start creating a new album (guided, step-by-step)
/tutorial resume - Check your in-progress work and get next steps
/tutorial help - Show this message
The guided process walks you through:
1. Foundation - Artist, genre, album type
2. Concept - Story, theme, emotional core
3. Sonic Direction - Sound, influences, mood
4. Structure - Tracklist, track concepts
5. Album Art - Visual concept (generated later)
6. Practical Details - Title, research needs, explicit content
7. Confirmation - Review plan, get your go-ahead
At each step, I'll ask one question at a time and explain why it matters.
```
---
## The 7 Planning Phases
See [phases.md](phases.md) for the complete reference.
### How to Guide Each Phase
**Phase 1: Foundation**
- Start here. These answers determine everything else.
- Create album directory AFTER getting: artist, genre, album name
- If new artist, pause to create artist profile first
**Phase 2: Concept Deep Dive**
- Dig into the "why" - what makes this story worth telling?
- For documentary/true-story: flag that research will be needed
- Help them articulate the emotional core
**Phase 3: Sonic Direction**
- This is where `/suno-engineer` expertise helps
- Reference artists/albums are useful anchors
- Don't get too detailed yet - broad strokes
**Phase 4: Structure Planning**
- Work titles are fine - they'll evolve
- Get 1-2 sentences per track concept
- Identify the "heart" of the album (usually tracks 5-7)
**Phase 5: Album Art**
- Just the concept now, generation happens later
- `/album-art-director` can help refine this
- Keep it brief - visual mood, key imagery
**Phase 6: Practical Details**
- Confirm titles (but flexible is OK)
- Explicit content? (affects distributor flags)
- Research needs? (creates RESEARCH.md, SOURCES.md)
**Phase 7: Confirmation**
- Present the complete plan
- Get explicit "ready to start writing" confirmation
- Document everything in album README
---
## Creating Files During Tutorial
**Before creating any files**, ensure config is loaded and `{content_root}` is resolved.
**After Phase 1 is complete** (you know artist, genre, album name):
1. Create directory:
```bash
mkdir -p {content_root}/artists/[artist]/albums/[genre]/[album-name]/tracks
```
2. Create album README from template (read `${CLAUDE_PLUGIN_ROOT}/templates/album.md` first)
3. Tell user: "I've created the album folder at `{content_root}/artists/...`. We'll fill in the details as we go."
**After Phase 7 confirmation:**
1. Update album README with all planning details
2. Create track files from template
3. If true-story album: create RESEARCH.md and SOURCES.md
---
## Linking to Skills
At appropriate points, tell users about relevant skills:
| When | Suggest |
|------|---------|
| Discussing sound/genre | "We can get deeper into this with `/suno-engineer` later" |
| Planning visual concept | "When ready, `/album-art-director` will help create the prompt" |
| True-story album | "For research, `/researcher` coordinates specialized skills" |
| Starting lyrics | "Use `/lyric-writer` for each track" |
| Before generation | "Run `/lyric-reviewer` to QA check before Suno" |
---
## Tone & Style
- **Conversational** - Not a form to fill out, a conversation
- **One thing at a time** - Never list all questions at once
- **Explain why** - "This matters because..."
- **Affirm progress** - "Got it. That gives us a solid foundation."
- **Be honest** - If an idea needs work, say so constructively
- **Link ahead** - "Next we'll talk about the sound..."
---
## Example Interaction
**User:** `/tutorial new-album`
**You:**
```
[calls get_config()]
Config loaded:
content_root: ~/music-projects
audio_root: ~/Music/mastered
Let's create an album together.
First, the basics: Who's the artist?
- An existing artist you've already set up?
- Or someone new we need to create first?
(If existing, tell me the name. If new, we'll create them first.)
```
**If config is missing:**
```
Before we start, let's set up your configuration.
Option 1 - Interactive setup:
Run /configure
Option 2 - Manual setup:
mkdir -p ~/.bitwize-music
cp config/config.example.yaml ~/.bitwize-music/config.yaml
# Then edit the file with your settings
Let me know when you're ready!
```
**User:** "It's for my artist Alex Techno"
**You:**
```
Alex Techno - got it. Let me check if they're set up...
[reads artists/alex-techno/README.md]
Found them. Nice electronic artist profile.
What genre/style for this album?
- Staying in their electronic wheelhouse?
- Trying something different?
(This determines which folder the album lives in: electronic, hip-hop, etc.)
```
**User:** "Electronic, but darker and more industrial"
**You:**
```
Dark industrial electronic - that's a strong direction.
Now: What type of album is this?
- **Documentary** - Real events/people told through music
- **Narrative** - A fictional story arc across tracks
- **Thematic** - United by theme (not plot)
- **Character Study** - Deep dive into one person
- **Collection** - Standalone songs, loose connection
- **Original Soundtrack (OST)** - Music for a fictional property's world, scenes, and key moments (games, films, shows)
Which fits your vision?
```
*(Continue through all 7 phases this way)*
---
## Resume Example
**User:** `/tutorial resume`
**You:**
```
[calls get_config(), list_albums(status_filter="In Progress")]
CRelated 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.