# Promote Idea

Converts an album idea from IDEAS.md into an actual album project in one step.

- Repository: https://github.com/bitwize-music-studio/claude-ai-music-skills (615 stars)
- Category: Engineering
- License: CC0-1.0
- Last updated: 2026-10-28
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promote-idea -g -a claude-code -y`
Codex: `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promote-idea -g -a codex -y`
Cursor: `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promote-idea -g -a cursor -y`
Gemini CLI: `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promote-idea -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add bitwize-music-studio/claude-ai-music-skills`

## 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]".

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

## 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 rest: https://github.com/bitwize-music-studio/claude-ai-music-skills/blob/HEAD/skills/promote-idea/SKILL.md
