ACE-Step Songwriting Guide
Professional music creation knowledge for writing captions, lyrics, and choosing music parameters for ACE-Step.
Output Format
After using this guide, produce two things for the acestep skill:
- Caption (
-c): Style/genre/instruments/emotion description
- Lyrics (
-l): Complete structured lyrics with tags
- Parameters:
--duration, --bpm, --key, --time-signature, --language
Caption: The Most Important Input
Caption is the most important factor affecting generated music.
Supports multiple formats: simple style words, comma-separated tags, complex natural language descriptions.
Common Dimensions
| Dimension |
Examples |
| Style/Genre |
pop, rock, jazz, electronic, hip-hop, R&B, folk, classical, lo-fi, synthwave |
| Emotion/Atmosphere |
melancholic, uplifting, energetic, dreamy, dark, nostalgic, euphoric, intimate |
| Instruments |
acoustic guitar, piano, synth pads, 808 drums, strings, brass, electric bass |
| Timbre Texture |
warm, bright, crisp, muddy, airy, punchy, lush, raw, polished |
| Era Reference |
80s synth-pop, 90s grunge, 2010s EDM, vintage soul, modern trap |
| Production Style |
lo-fi, high-fidelity, live recording, studio-polished, bedroom pop |
| Vocal Characteristics |
female vocal, male vocal, breathy, powerful, falsetto, raspy, choir |
| Speed/Rhythm |
slow tempo, mid-tempo, fast-paced, groovy, driving, laid-back |
| Structure Hints |
building intro, catchy chorus, dramatic bridge, fade-out ending |
Caption Writing Principles
- Specific beats vague — "sad piano ballad with female breathy vocal" > "a sad song"
- Combine multiple dimensions — style+emotion+instruments+timbre anchors direction precisely
- Use references well — "in the style of 80s synthwave" conveys complex aesthetic quickly
- Texture words are useful — warm, crisp, airy, punchy influence mixing and timbre
- Don't pursue perfection — Caption is a starting point, iterate based on results
- Granularity determines freedom — Less detail = more model creativity; more detail = more control
- Avoid conflicting words — "classical strings" + "hardcore metal" degrades output
- Fix: Repetition reinforcement — Repeat the elements you want more
- Fix: Conflict to evolution — "Start with soft strings, middle becomes metal rock, end turns to hip-hop"
- Don't put BPM/key/tempo in Caption — Use dedicated parameters instead
Lyrics: The Temporal Script
Lyrics controls how music unfolds over time. It carries:
- Lyric text itself
- Structure tags ([Verse], [Chorus], [Bridge]...)
- Vocal style hints ([raspy vocal], [whispered]...)
- Instrumental sections ([guitar solo], [drum break]...)
- Energy changes ([building energy], [explosive drop]...)
Structure Tags
| Category |
Tag |
Description |
| Basic Structure |
[Intro] |
Opening, establish atmosphere |
|
[Verse] / [Verse 1] |
Verse, narrative progression |
|
[Pre-Chorus] |
Pre-chorus, build energy |
|
[Chorus] |
Chorus, emotional climax |
|
[Bridge] |
Bridge, transition or elevation |
|
[Outro] |
Ending, conclusion |
| Dynamic Sections |
[Build] |
Energy gradually rising |
|
[Drop] |
Electronic music energy release |
|
[Breakdown] |
Reduced instrumentation, space |
| Instrumental |
[Instrumental] |
Pure instrumental, no vocals |
|
[Guitar Solo] |
Guitar solo |
|
[Piano Interlude] |
Piano interlude |
| Special |
[Fade Out] |
Fade out ending |
|
[Silence] |
Silence |
Combining Tags
Use - for finer control, but keep it concise:
✅ [Chorus - anthemic]
❌ [Chorus - anthemic - stacked harmonies - high energy - powerful - epic]
Put complex style descriptions in Caption, not in tags.
Caption-Lyrics Consistency
Models are not good at resolving conflicts. Checklist:
- Instruments in Caption ↔ Instrumental section tags in Lyrics
- Emotion in Caption ↔ Energy tags in Lyrics
- Vocal description in Caption ↔ Vocal control tags in Lyrics
Vocal Control Tags
| Tag |
Effect |
[raspy vocal] |
Raspy, textured vocals |
[whispered] |
Whispered |
[falsetto] |
Falsetto |
[powerful belting] |
Powerful, high-pitched singing |
[spoken word] |
Rap/recitation |
[harmonies] |
Layered harmonies |
[call and response] |
Call and response |
[ad-lib] |
Improvised embellishments |
Energy and Emotion Tags
| Tag |
Effect |
[high energy] |
High energy, passionate |
[low energy] |
Low energy, restrained |
[building energy] |
Increasing energy |
[explosive] |
Explosive energy |
[melancholic] |
Melancholic |
[euphoric] |
Euphoric |
[dreamy] |
Dreamy |
[aggressive] |
Aggressive |
Lyric Writing Tips
- 6-10 syllables per line — Model aligns syllables to beats; keep similar counts for lines in same position (±1-2)
- Uppercase = stronger intensity —
WE ARE THE CHAMPIONS! (shouting) vs walking through the streets (normal)
- Parentheses = background vocals —
We rise together (together)
- Extend vowels —
Feeeling so aliiive (use cautiously, effects unstable)
- Clear section separation — Blank lines between sections
Avoiding "AI-flavored" Lyrics
| Red Flag |
Description |
| Adjective stacking |
"neon skies, electric hearts, endless dreams" — vague imagery filler |
| Rhyme chaos |
Inconsistent patterns or forced rhymes breaking meaning |
| Blurred boundaries |
Lyric content crosses structure tags |
| No breathing room |
Lines too long to sing in one breath |
| Mixed metaphors |
Water → fire → flying — listeners can't anchor |
Metaphor discipline: One core metaphor per song, explore its multiple aspects.
Music Metadata
Most of the time, let LM auto-infer. Only set manually when you have clear requirements.
| Parameter |
Range |
Description |
bpm |
30–300 |
Slow 60–80, mid 90–120, fast 130–180 |
keyscale |
Key |
e.g. C Major, Am. Common keys (C, G, D, Am, Em) most stable |
timesignature |
Time sig |
4/4 (most common), 3/4 (waltz), 6/8 (swing) |
vocal_language |
Language |
Usually auto-detected from lyrics |
duration |
Seconds |
See duration calculation below |
When to Set Manually
| Scenario |
Set |
| Daily generation |
Let LM auto-infer |
| Clear tempo requirement |
bpm |
| Specific style (waltz) |
timesignature=3/4 |
| Match other material |
bpm + duration |
| Specific key color |
keyscale |
Duration Calculation
Estimation Method
- Intro/Outro: 5-10 seconds each
- Instrumental sections: 5-15 seconds each
- Typical structures:
- 2 verses + 2 choruses: 120-150s minimum
- 2 verses + 2 choruses + bridge: 180-240s minimum
- Full song with intro/outro: 210-270s (3.5-4.5 min)
BPM and Duration Relationship
- Slower BPM (60-80): Need MORE duration for same lyrics
- Medium BPM (100-130): Standard duration
- Faster BPM (150-180): Can fit more lyrics, but still need breathing room
Rule of thumb: When in doubt, estimate longer. A song too short feels rushed.
Note: Lyrics tags (piano, powerful, whispered) are consistent with Caption (piano ballad, building to powerful chorus, intimate).
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: acestep-songwriting3description: Music songwriting guide for ACE-Step. Provides professional knowledge on writing captions, lyrics, choosing BPM/key/duration, and structuring songs. Use this skill when users want to create, write, or plan a song before generating it with ACE-Step. Use when this capability is needed.4---56# ACE-Step Songwriting Guide78Professional music creation knowledge for writing captions, lyrics, and choosing music parameters for ACE-Step.910## Output Format1112After using this guide, produce two things for the acestep skill:131. **Caption** (`-c`): Style/genre/instruments/emotion description142. **Lyrics** (`-l`): Complete structured lyrics with tags153. **Parameters**: `--duration`, `--bpm`, `--key`, `--time-signature`, `--language`1617---1819## Caption: The Most Important Input2021**Caption is the most important factor affecting generated music.**2223Supports multiple formats: simple style words, comma-separated tags, complex natural language descriptions.2425### Common Dimensions2627| Dimension | Examples |28|-----------|----------|29| **Style/Genre** | pop, rock, jazz, electronic, hip-hop, R&B, folk, classical, lo-fi, synthwave |30| **Emotion/Atmosphere** | melancholic, uplifting, energetic, dreamy, dark, nostalgic, euphoric, intimate |31| **Instruments** | acoustic guitar, piano, synth pads, 808 drums, strings, brass, electric bass |32| **Timbre Texture** | warm, bright, crisp, muddy, airy, punchy, lush, raw, polished |33| **Era Reference** | 80s synth-pop, 90s grunge, 2010s EDM, vintage soul, modern trap |34| **Production Style** | lo-fi, high-fidelity, live recording, studio-polished, bedroom pop |35| **Vocal Characteristics** | female vocal, male vocal, breathy, powerful, falsetto, raspy, choir |36| **Speed/Rhythm** | slow tempo, mid-tempo, fast-paced, groovy, driving, laid-back |37| **Structure Hints** | building intro, catchy chorus, dramatic bridge, fade-out ending |3839### Caption Writing Principles40411. **Specific beats vague** — "sad piano ballad with female breathy vocal" > "a sad song"422. **Combine multiple dimensions** — style+emotion+instruments+timbre anchors direction precisely433. **Use references well** — "in the style of 80s synthwave" conveys complex aesthetic quickly444. **Texture words are useful** — warm, crisp, airy, punchy influence mixing and timbre455. **Don't pursue perfection** — Caption is a starting point, iterate based on results466. **Granularity determines freedom** — Less detail = more model creativity; more detail = more control477. **Avoid conflicting words** — "classical strings" + "hardcore metal" degrades output48 - **Fix: Repetition reinforcement** — Repeat the elements you want more49 - **Fix: Conflict to evolution** — "Start with soft strings, middle becomes metal rock, end turns to hip-hop"508. **Don't put BPM/key/tempo in Caption** — Use dedicated parameters instead5152---5354## Lyrics: The Temporal Script5556Lyrics controls how music unfolds over time. It carries:57- Lyric text itself58- **Structure tags** ([Verse], [Chorus], [Bridge]...)59- **Vocal style hints** ([raspy vocal], [whispered]...)60- **Instrumental sections** ([guitar solo], [drum break]...)61- **Energy changes** ([building energy], [explosive drop]...)6263### Structure Tags6465| Category | Tag | Description |66|----------|-----|-------------|67| **Basic Structure** | `[Intro]` | Opening, establish atmosphere |68| | `[Verse]` / `[Verse 1]` | Verse, narrative progression |69| | `[Pre-Chorus]` | Pre-chorus, build energy |70| | `[Chorus]` | Chorus, emotional climax |71| | `[Bridge]` | Bridge, transition or elevation |72| | `[Outro]` | Ending, conclusion |73| **Dynamic Sections** | `[Build]` | Energy gradually rising |74| | `[Drop]` | Electronic music energy release |75| | `[Breakdown]` | Reduced instrumentation, space |76| **Instrumental** | `[Instrumental]` | Pure instrumental, no vocals |77| | `[Guitar Solo]` | Guitar solo |78| | `[Piano Interlude]` | Piano interlude |79| **Special** | `[Fade Out]` | Fade out ending |80| | `[Silence]` | Silence |8182### Combining Tags8384Use `-` for finer control, but keep it concise:8586```87✅ [Chorus - anthemic]88❌ [Chorus - anthemic - stacked harmonies - high energy - powerful - epic]89```9091Put complex style descriptions in Caption, not in tags.9293### Caption-Lyrics Consistency9495**Models are not good at resolving conflicts.** Checklist:96- Instruments in Caption ↔ Instrumental section tags in Lyrics97- Emotion in Caption ↔ Energy tags in Lyrics98- Vocal description in Caption ↔ Vocal control tags in Lyrics99100### Vocal Control Tags101102| Tag | Effect |103|-----|--------|104| `[raspy vocal]` | Raspy, textured vocals |105| `[whispered]` | Whispered |106| `[falsetto]` | Falsetto |107| `[powerful belting]` | Powerful, high-pitched singing |108| `[spoken word]` | Rap/recitation |109| `[harmonies]` | Layered harmonies |110| `[call and response]` | Call and response |111| `[ad-lib]` | Improvised embellishments |112113### Energy and Emotion Tags114115| Tag | Effect |116|-----|--------|117| `[high energy]` | High energy, passionate |118| `[low energy]` | Low energy, restrained |119| `[building energy]` | Increasing energy |120| `[explosive]` | Explosive energy |121| `[melancholic]` | Melancholic |122| `[euphoric]` | Euphoric |123| `[dreamy]` | Dreamy |124| `[aggressive]` | Aggressive |125126### Lyric Writing Tips1271281. **6-10 syllables per line** — Model aligns syllables to beats; keep similar counts for lines in same position (±1-2)1292. **Uppercase = stronger intensity** — `WE ARE THE CHAMPIONS!` (shouting) vs `walking through the streets` (normal)1303. **Parentheses = background vocals** — `We rise together (together)`1314. **Extend vowels** — `Feeeling so aliiive` (use cautiously, effects unstable)1325. **Clear section separation** — Blank lines between sections133134### Avoiding "AI-flavored" Lyrics135136| Red Flag | Description |137|----------|-------------|138| **Adjective stacking** | "neon skies, electric hearts, endless dreams" — vague imagery filler |139| **Rhyme chaos** | Inconsistent patterns or forced rhymes breaking meaning |140| **Blurred boundaries** | Lyric content crosses structure tags |141| **No breathing room** | Lines too long to sing in one breath |142| **Mixed metaphors** | Water → fire → flying — listeners can't anchor |143144**Metaphor discipline**: One core metaphor per song, explore its multiple aspects.145146---147148## Music Metadata149150**Most of the time, let LM auto-infer.** Only set manually when you have clear requirements.151152| Parameter | Range | Description |153|-----------|-------|-------------|154| `bpm` | 30–300 | Slow 60–80, mid 90–120, fast 130–180 |155| `keyscale` | Key | e.g. `C Major`, `Am`. Common keys (C, G, D, Am, Em) most stable |156| `timesignature` | Time sig | `4/4` (most common), `3/4` (waltz), `6/8` (swing) |157| `vocal_language` | Language | Usually auto-detected from lyrics |158| `duration` | Seconds | See duration calculation below |159160### When to Set Manually161162| Scenario | Set |163|----------|-----|164| Daily generation | Let LM auto-infer |165| Clear tempo requirement | `bpm` |166| Specific style (waltz) | `timesignature=3/4` |167| Match other material | `bpm` + `duration` |168| Specific key color | `keyscale` |169170---171172## Duration Calculation173174### Estimation Method175176- **Intro/Outro**: 5-10 seconds each177- **Instrumental sections**: 5-15 seconds each178- **Typical structures**:179 - 2 verses + 2 choruses: 120-150s minimum180 - 2 verses + 2 choruses + bridge: 180-240s minimum181 - Full song with intro/outro: 210-270s (3.5-4.5 min)182183### BPM and Duration Relationship184185- **Slower BPM (60-80)**: Need MORE duration for same lyrics186- **Medium BPM (100-130)**: Standard duration187- **Faster BPM (150-180)**: Can fit more lyrics, but still need breathing room188189**Rule of thumb**: When in doubt, estimate longer. A song too short feels rushed.190191---192193Note: Lyrics tags (piano, powerful, whispered) are consistent with Caption (piano ballad, building to powerful chorus, intimate).194195---196> Converted and distributed by [TomeVault](https://tomevault.io/claim/ace-step) — claim your Tome and manage your conversions.197<!-- tomevault:4.0:skill_md:2026-04-11 -->