/promote-idea
Converts an album idea from IDEAS.md into an actual album project in one step. Use when the user says "promote [idea title]", "turn idea into album", or "start working on [idea]".
$ npx -y skills add bitwize-music-studio/claude-ai-music-skills --skill promote-idea --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/promote-idea
Context preview
The summary Claude sees to decide when to auto-load this skill.
Converts an album idea from IDEAS.md into an actual album project in one step. Use when the user says "promote [idea title]", "turn idea into album", or "start working on [idea]".
SKILL.md
promote-idea.SKILL.mdname: promote-idea
description: Converts an album idea from IDEAS.md into an actual album project in one step. Use when the user says "promote [idea title]", "turn idea into album", or "start working on [idea]".
argument-hint: <"idea title"> [album-slug-override]
model: haiku
allowed-tools:
- Read
- bitwize-music-mcp
Your Task
**Input**: $ARGUMENTS
Convert a `Pending` idea from `IDEAS.md` into a full album project in one call. Replaces the manual 3-step workflow (`get_ideas` → `new-album` → `update_idea`) with a single entry point.
---
Promote Idea Skill
Step 1: Parse Arguments
Expected formats:
- `"<idea title>"` — auto-derive slug from the title
- `"<idea title>" <album-slug>` — override the auto-derived slug
- `"<idea title>" documentary` — standard slug, documentary flag on
- `"<idea title>" <album-slug> documentary` — explicit slug + documentary
Examples:
- `"Kleine Welt"` → slug auto-derived to `kleine-welt`
- `"The Great Molasses Flood" molasses-flood documentary`
- `"Ängstliche Kätzchen"` → slug `angstliche-katzchen` (diacritics stripped)
**If no arguments are supplied, or the title is empty**, list the available pending ideas first and ask which one to promote:
Which idea should I promote?
Pending ideas:
1. Kleine Welt (electronic, Thematic)
2. The Great Molasses Flood (folk, Documentary)
3. Linux Kernel Wars (electronic, Character Study)
Reply with the exact title.
Use `get_ideas(status_filter="Pending")` to fetch the list.
Step 2: Confirm the Derived Slug
Call `get_ideas(status_filter="Pending")` (or `search(query=idea_title, scope="ideas")`) to confirm the idea exists and show the user what's about to happen.
Compute the slug locally for display only (lowercase, strip diacritics, non-alphanumeric → hyphen). If the result looks odd, offer to override:
About to promote:
Idea: Kleine Welt
Slug: kleine-welt
Genre: electronic
Type: Thematic
Proceed? (Or supply a different slug.)
Skip the confirmation step if the user has already provided an explicit slug — that's the signal they've already thought about it.
Step 3: Ask About Documentary Flag (if not already supplied)
The `documentary` flag decides whether `RESEARCH.md` and `SOURCES.md` are created. This is **not** derivable from idea metadata — the idea's "Type" field can say "Documentary" but that's a separate concept (narrative shape). Ask once:
> Is this a documentary/true-story album? (Adds research + sources > templates. Answer 'yes' for real-world events, 'no' for fiction.)
Skip this step if `documentary` is already in the arguments.
Step 4: Promote via MCP
Call `promote_idea(idea_title, album_slug=<slug or "">, documentary=<bool>)`.
The tool performs all of:
1. Find the idea in state (error if missing or already promoted) 2. Create the album directory via `create_album_structure` 3. Inject the idea's concept into the new `README.md` under a `## Concept` section 4. Advance idea status `Pending` → `In Progress` 5. Add `**Promoted To**: <slug>` back-link to the idea in `IDEAS.md`
The tool returns `{promoted: true, slug, album_path, files, ...}` on success or `{error: ...}` on failure.
Step 5: Confirm and Suggest Next Step
On success, report:
Promoted "Kleine Welt" → album "kleine-welt"
Location: ~/bitwize-music/artists/bitwize/albums/electronic/kleine-welt/
Files: README.md, tracks/
Concept block injected into README.md from idea.
Idea status: Pending → In Progress
Next step:
/bitwize-music:album-conceptualizer
This walks through the 7 Planning Phases (Vision, Identity, Sonic
Direction, Structure, Tracks, Content, Approval) to develop the concept
you just carried over into the album.
For documentary albums, add:
Research files also created: RESEARCH.md, SOURCES.md
Don't forget human source verification before generation.
---
Error Handling
**Idea not found:**
Error: Idea "Nonexistent" not found in IDEAS.md.
Check available ideas: /bitwize-music:album-ideas list
**Idea already promoted:**
Error: Idea "Already Active" is already promoted (status: In Progress).
If you want to rename or re-scaffold, use /bitwize-music:rename on the
existing album instead.
**Idea has no genre:**
Error: Idea "No Genre" has no **Genre** field in IDEAS.md.
Set the genre first: /bitwize-music:album-ideas edit "No Genre"
**Invalid genre:**
Error: Invalid genre "xyz" on idea. Not in genres/.
Fix the genre in IDEAS.md, then retry.
**Duplicate album slug:**
Error: Album "kleine-welt" already exists.
Options:
1. Supply a different slug: /bitwize-music:promote-idea "Kleine Welt" kleine-welt-2
2. Resume the existing album: /bitwize-music:resume kleine-welt
---
Examples
Simple title
/bitwize-music:promote-idea "Kleine Welt"
Auto-derives slug `kleine-welt`, asks about documentary flag, calls `promote_idea`, reports outcome.
Explicit slug override
/bitwize-music:promote-idea "The Great Molasses Flood" molasses-1919
Uses `molasses-1919` instead of the auto-derived `the-great-molasses-flood`.
Documentary album
/bitwize-music:promote-idea "The Great Molasses Flood" documentary
Creates `RESEARCH.md` and `SOURCES.md` in addition to the standard README and tracks directory.
---
Why a Dedicated Skill
The manual workflow required three steps in sequence:
1. `get_ideas` to find the idea's genre 2. `/bitwize-music:new-album <slug> <genre>` with a slug the user invented 3. `update_idea("<title>", "status", "In Progress")`
Problems this skill solves:
- **Concept transfer** — The idea's concept text is now merged into the new
album README automatically (manual copy/paste used to be skipped often).
- **Status discipline** — Ideas no longer linger as `Pending` after being
worked on; the transition is automatic and bidirectional (`Promoted To` back-link).
- **Slug derivation** — No more re-inventing the slug; diacritics and
Read more
name: promote-idea description: Converts an album idea from IDEAS.md into an actual album project in one step. Use when the user says "promote [idea title]", "turn idea into album", or "start working on [idea]". argument-hint: <"idea title"> [album-slug-override] model: haiku allowed-tools: - Read - bitwize-music-mcp
Your Task
**Input**: $ARGUMENTS
Convert a `Pending` idea from `IDEAS.md` into a full album project in one call. Replaces the manual 3-step workflow (`get_ideas` → `new-album` → `update_idea`) with a single entry point.
---
Promote Idea Skill
Step 1: Parse Arguments
Expected formats:
- `"<idea title>"` — auto-derive slug from the title
- `"<idea title>" <album-slug>` — override the auto-derived slug
- `"<idea title>" documentary` — standard slug, documentary flag on
- `"<idea title>" <album-slug> documentary` — explicit slug + documentary
Examples:
- `"Kleine Welt"` → slug auto-derived to `kleine-welt`
- `"The Great Molasses Flood" molasses-flood documentary`
- `"Ängstliche Kätzchen"` → slug `angstliche-katzchen` (diacritics stripped)
**If no arguments are supplied, or the title is empty**, list the available pending ideas first and ask which one to promote:
Which idea should I promote? Pending ideas: 1. Kleine Welt (electronic, Thematic) 2. The Great Molasses Flood (folk, Documentary) 3. Linux Kernel Wars (electronic, Character Study) Reply with the exact title.
Use `get_ideas(status_filter="Pending")` to fetch the list.
Step 2: Confirm the Derived Slug
Call `get_ideas(status_filter="Pending")` (or `search(query=idea_title, scope="ideas")`) to confirm the idea exists and show the user what's about to happen.
Compute the slug locally for display only (lowercase, strip diacritics, non-alphanumeric → hyphen). If the result looks odd, offer to override:
About to promote: Idea: Kleine Welt Slug: kleine-welt Genre: electronic Type: Thematic Proceed? (Or supply a different slug.)
Skip the confirmation step if the user has already provided an explicit slug — that's the signal they've already thought about it.
Step 3: Ask About Documentary Flag (if not already supplied)
The `documentary` flag decides whether `RESEARCH.md` and `SOURCES.md` are created. This is **not** derivable from idea metadata — the idea's "Type" field can say "Documentary" but that's a separate concept (narrative shape). Ask once:
> Is this a documentary/true-story album? (Adds research + sources > templates. Answer 'yes' for real-world events, 'no' for fiction.)
Skip this step if `documentary` is already in the arguments.
Step 4: Promote via MCP
Call `promote_idea(idea_title, album_slug=<slug or "">, documentary=<bool>)`.
The tool performs all of:
1. Find the idea in state (error if missing or already promoted) 2. Create the album directory via `create_album_structure` 3. Inject the idea's concept into the new `README.md` under a `## Concept` section 4. Advance idea status `Pending` → `In Progress` 5. Add `**Promoted To**: <slug>` back-link to the idea in `IDEAS.md`
The tool returns `{promoted: true, slug, album_path, files, ...}` on success or `{error: ...}` on failure.
Step 5: Confirm and Suggest Next Step
On success, report:
Promoted "Kleine Welt" → album "kleine-welt" Location: ~/bitwize-music/artists/bitwize/albums/electronic/kleine-welt/ Files: README.md, tracks/ Concept block injected into README.md from idea. Idea status: Pending → In Progress Next step: /bitwize-music:album-conceptualizer This walks through the 7 Planning Phases (Vision, Identity, Sonic Direction, Structure, Tracks, Content, Approval) to develop the concept you just carried over into the album.
For documentary albums, add:
Research files also created: RESEARCH.md, SOURCES.md Don't forget human source verification before generation.
---
Error Handling
**Idea not found:**
Error: Idea "Nonexistent" not found in IDEAS.md. Check available ideas: /bitwize-music:album-ideas list
**Idea already promoted:**
Error: Idea "Already Active" is already promoted (status: In Progress). If you want to rename or re-scaffold, use /bitwize-music:rename on the existing album instead.
**Idea has no genre:**
Error: Idea "No Genre" has no **Genre** field in IDEAS.md. Set the genre first: /bitwize-music:album-ideas edit "No Genre"
**Invalid genre:**
Error: Invalid genre "xyz" on idea. Not in genres/. Fix the genre in IDEAS.md, then retry.
**Duplicate album slug:**
Error: Album "kleine-welt" already exists. Options: 1. Supply a different slug: /bitwize-music:promote-idea "Kleine Welt" kleine-welt-2 2. Resume the existing album: /bitwize-music:resume kleine-welt
---
Examples
Simple title
/bitwize-music:promote-idea "Kleine Welt"
Auto-derives slug `kleine-welt`, asks about documentary flag, calls `promote_idea`, reports outcome.
Explicit slug override
/bitwize-music:promote-idea "The Great Molasses Flood" molasses-1919
Uses `molasses-1919` instead of the auto-derived `the-great-molasses-flood`.
Documentary album
/bitwize-music:promote-idea "The Great Molasses Flood" documentary
Creates `RESEARCH.md` and `SOURCES.md` in addition to the standard README and tracks directory.
---
Why a Dedicated Skill
The manual workflow required three steps in sequence:
1. `get_ideas` to find the idea's genre 2. `/bitwize-music:new-album <slug> <genre>` with a slug the user invented 3. `update_idea("<title>", "status", "In Progress")`
Problems this skill solves:
- **Concept transfer** — The idea's concept text is now merged into the new
album README automatically (manual copy/paste used to be skipped often).
- **Status discipline** — Ideas no longer linger as `Pending` after being
worked on; the transition is automatic and bidirectional (`Promoted To` back-link).
- **Slug derivation** — No more re-inventing the slug; diacritics and
Showing the first part of this file.
I love music but never learned an instrument. AI became the creative outlet that was always out of reach. This project started as a way to go deep on Claude Code plugin architecture, agentic workflows, multi-model orchestration, and MCP tooling.
Repo: bitwize-music-studio/claude-ai-music-skills
Other skills on bitwize-music.
- /about
Provides information about the bitwize-music plugin, its version, and its creator. Use when the user asks about the plugin, its purpose, version, or capabilities.
Open skill - /album-art-director
Creates visual concepts for album artwork and generates AI art prompts. Use during planning for concept discussion, or after all tracks are Final for actual artwork generation.
Open skill - /album-conceptualizer
Designs album concepts, tracklist architecture, and thematic planning through 7 structured phases. Use when planning a new album or reworking an existing album concept.
Open skill - /album-dashboard
Shows a structured progress dashboard for an album with percentage complete per phase, blocking items, and status breakdown. Use for a quick visual overview of album progress.
Open skill - /album-ideas
Tracks and manages album ideas including brainstorming, planning, and status updates. Use when the user wants to add, review, or organize their album idea backlog.
Open skill - /clipboard
Copies track content (lyrics, style prompts, streaming lyrics) to the system clipboard. Use when the user needs to paste lyrics or style prompts into Suno or other external tools.
Open skill

