Generate and refine Suno AI music prompts (v5.5). Style prompts, tagged lyrics, genre templates, troubleshooting, tips, features, and genre research via an action router. Use when: 'suno prompt', 'write suno lyrics', 'style prompt for suno', 'BPM prompting', 'vocal tags', 'fix garbled lyrics', 'voice cloning suno', 'suno genre', 'suno studio', or any Suno prompt-craft request.
Scanned 9/2/2026
Install to Claude Code
npx -y skills add melodic-software/claude-code-plugins --skill suno --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Suno?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/melodic-software-suno)More formats (shields.io, HTML) on the badges page.
---
description: "Generate and refine Suno AI music prompts (v5.5). Style prompts, tagged lyrics, genre templates, troubleshooting, tips, features, and genre research via an action router. Use when: 'suno prompt', 'write suno lyrics', 'style prompt for suno', 'BPM prompting', 'vocal tags', 'fix garbled lyrics', 'voice cloning suno', 'suno genre', 'suno studio', or any Suno prompt-craft request."
argument-hint: "[action] [args] (e.g., /suno prompt, /suno lyrics, /suno genre <name>). Full action list in body; default: menu"
user-invocable: true
disable-model-invocation: false
---
## Variables
Arguments: `$ARGUMENTS`
## Purpose
Suno is an AI music platform; the prompt is the instrument. This skill helps the user **generate, refine, and debug Suno prompts**, both the **style/genre** and **lyrics** fields, using v5.5-era best practices, the documented tag taxonomy, and community-validated performance tricks.
The skill is a **prompt-craft assistant**, not an audio generator. Suno produces audio; this skill makes sure the prompt going INTO Suno is sharp, on-format, free of common pitfalls.
Suno v5.5 (released March 26, 2026; verified 2026-07-18 against <https://suno.com/blog/v5-5>) preserved v5's prompt syntax but improved adherence to nuanced descriptors and added three personalization layers (Voices, Custom Models, My Taste). Everything below targets v5.5 unless noted; legacy v4 (~200-char style prompt) is out of scope.
> **Deprecation horizon:** Suno and Warner Music Group committed to launching licensed models in 2026 and deprecating the current models when those launch; they announced no date. Re-check Suno's release notes before relying on v5.5-specific behavior. Source: [joint WMG/Suno announcement, 2025-11-25](https://www.prnewswire.com/news-releases/warner-music-group-and-suno-forge-groundbreaking-partnership-302626017.html).
## Action Router
Parse `$ARGUMENTS`: first token = action, remainder = args. If empty
(e.g. model-invoked from a natural-language request), infer the action
from conversation context; show this menu only when no actionable
context exists.
| Action | Purpose | Detail |
|--------|---------|--------|
| `prompt <intent>` | Build a complete style prompt + lyrics from a song idea | inline + [context/style.md](context/style.md) + [context/lyrics.md](context/lyrics.md) |
| `lyrics <intent>` | Generate or refine lyrics with section tags, vocal tags, **per-section style overrides**, performance cues | [context/lyrics.md](context/lyrics.md) |
| `style <intent>` | Generate a style prompt using the 6-layer formula | [context/style.md](context/style.md) |
| `clean <text>` | Review user's existing prompt, flag pitfalls, propose rewrite | [context/troubleshoot.md](context/troubleshoot.md) + [context/style.md](context/style.md) |
| `research <topic>` | **On-the-fly external research**. Artist sonic profiles, current trends, niche genres, specific reference songs (BPM/key/instrumentation). Translates findings into Suno descriptors. | [context/research-recipes.md](context/research-recipes.md) |
| `tags` | Show the full tag taxonomy (structural, vocal, instrument, mood, ending) | [context/lyrics.md](context/lyrics.md) |
| `genre <name>` | Genre handler. 4 modes: load template (12 built-ins), research a niche genre, suggest genres for a vibe, or show a genre family tree | [templates/<name>.md](templates/) + [context/genre-taxonomy.md](context/genre-taxonomy.md) |
| `troubleshoot <symptom>` | Diagnose a specific failure (hallucinated lyrics, BPM ignored, vocal artifacts, exclusions failing, a section absorbed / missing, choppy over-paused delivery) | [context/troubleshoot.md](context/troubleshoot.md) |
| `tips` | Community-validated lyric-side performance tricks (caps, vowel stretch, ellipses, parentheticals). MEDIUM confidence | [context/tips.md](context/tips.md) |
| `power-tips` | Power-user techniques (tag order, genre fusion anchor/accent, stem-loop refinement, two-pass vocal isolation, persona-as-draft, punctuation cadence, describe-this-song, Custom Model tricks). **Confidence is per section, not per file**: genre fusion anchor/accent sits between LOW-MEDIUM and MEDIUM (three guides, one corroborating Reddit post. Corroboration, not consensus); tag-order front-loading is LOW-MEDIUM on one Reddit post, **for terse comma-separated prompts only** and unverified for the v5.5 conversational style this skill targets; middle-tag softening and bare-position weighting stay unsourced | [context/power-tips.md](context/power-tips.md) |
| `features` | v5.5 feature index. Voices, Custom Models, Personas, Cover, Extend, Replace, Stems, Studio, Sliders, Duration | [context/v55-features.md](context/v55-features.md) + [context/advanced.md](context/advanced.md) |
| `voices` | Voice cloning deep dive. Recording, verification, conflict rules with style prompt | [context/voices.md](context/voices.md) |
| `studio` | Suno Studio (GAW). What's possible, clip ops, Take Lanes, Warp Markers, MIDI, stems | [context/studio.md](context/studio.md) |
| `workflow <recipe>` | Demo upload, edit/rearrange, add instruments, vocal comping, multi-genre cover chain. 8 recipes | [context/workflow-recipes.md](context/workflow-recipes.md) |
If the action is unknown, show this table and ask what the user wants.
---
## Load-bearing fundamentals (inline. Every action assumes these)
### The 6-layer formula (style prompt ordering)
Order matters. Early tags carry more weight. Front-load genre.
1. **Genre / subgenre**. Specific, not "pop" → `synth-pop, 80s-inspired`
2. **Mood**. 2-3 words → `nostalgic, hopeful` (not 9 conflicting moods)
3. **Instrumentation**. Specific → `fingerpicked acoustic guitar` (not just "guitar")
4. **Vocal direction**. Acoustic descriptors → `breathy, intimate, slight rasp` (not "amazing")
5. **BPM**. Numeric → `128 BPM` (not "fast")
6. **Production**. `polished mix`, `lo-fi tape hiss`, `compressed and aggressive`
Sweet spot: **5–8 distinct tags**. Fewer than 4 → generic. More than 10 → conflicting signals.
### Character budgets
| Field | Limit | Notes |
|-------|-------|-------|
| Style prompt (v5/v5.5) | **~1,000 chars** | Up from ~200 in v4. Late-prompt attention may decay; silent truncation is unverified. Front-load critical content. |
| Lyrics | **5,000-char hard cap** (v4.5/v5/v5.5) | 3,000 was the v4-era cap. Quality sweet spot stays **~3,000** (~40-60 lines / 200-300 words). Past that Suno rushes, skips sections, or cuts output short. |
| Title | **~100 chars** | Up from ~80 in v4. Minimal or no known effect on musical output; community reports differ |
| Exclude field | Free-text in Advanced Options (Custom mode) | Same vocabulary as inline negatives |
**Verified 2026-07-18**. No official Suno page states field limits; figures are third-party tester consensus ([hookgenius character limits](https://hookgenius.app/learn/suno-character-limits/), [aimusicapi cheat sheet, 2026-07-03](https://aimusicapi.ai/en/blog/suno-ai-prompt-character-limits)).
**Recheck trigger:** hookgenius or the aimusicapi cheat sheet revises the character-limit figures above, **or** an official Suno page states style-prompt / lyrics / title limits directly. Not a date.
### The lyrics field is a SECOND style channel
Power users treat the lyrics field as more than words to sing. **Per-section style overrides** in lyrics control instrumentation, dynamics, and production section-by-section. Something the global style prompt can't do.
```
[Verse: piano only, no drums, intimate]
First narrative beat...
The vocals carry the weight...
[Pre-Chorus: drums enter, building]
Tension rising...
Tension rising...
[Chorus: full band kicks in, distorted guitar lead, gang vocals]
THE HOOK
THE HOOK
[Bridge: stripped to vocals + acoustic, dry mix]
Most vulnerable moment...
[Chorus: bigger than before, double-tracked vocals, layered harmonies]
THE HOOK
```
Two separator syntaxes work. Both on the same `[Tag]` line:
- `[Verse: descriptor, descriptor]`. Colon + comma list
- `[Bridge | dark | introspective | sparse]`. Pipe-separated
Keep modifiers short (2-4 words each). Match section to tone. "explosive drop" only makes sense on `[Drop]`, not `[Intro]`.
This solves the **dynamics problem**, without it, every section sounds the same density. With it, you can build verse-chorus contrast, strip the bridge, blow up the final chorus.
### Worked example (synth-pop)
**Style prompt:**
```
synth-pop, 80s-inspired, nostalgic and hopeful,
shimmering analog synths, warm Moog bass, punchy drum machine,
ethereal female vocals with reverb tail, 95 BPM,
polished radio-ready production, no autotune
```
**Lyrics (skeleton):**
```
[Intro]
[Verse 1]
First narrative beat, present tense, concrete imagery...
[Pre-Chorus]
Building tension, single-line repetition encouraged
[Chorus]
The HOOK — peak energy, full instrumentation
Repeat the title or core phrase
[Verse 2]
Second narrative beat, contrast or escalation
[Chorus]
[Bridge]
Contrast section — often a key change or stripped-back
[Chorus]
[Outro]
[End]
```
The `no X` syntax works for negative prompts: `no autotune, no reverb wash`. Grouping negatives at the end is a readability convention, not a verified adherence rule. The `Exclude` field in Custom mode's Advanced Options is the structural alternative.
### Anti-patterns (always flag these in `clean` action)
| Anti-pattern | Why it fails | Fix |
|--------------|--------------|-----|
| Vague genre (`pop`, `rock`) | Generic AI sound | Specify subgenre + era + tonal cue |
| 5+ stacked genres | Muddy mix, incoherent style | Pick 1-2 max, or use a clear hybrid (`nu-metal dubstep`) |
| 9+ mood words | Conflicting emotional signals | 2-3 related moods |
| `amazing`, `epic`, `beautiful` | Zero effect on output | Replace with acoustic descriptors (`raspy`, `breathy`, `intimate`) |
| BPM as descriptor (`fast`) | ±20 BPM drift | Use numeric (`128 BPM`). ~90% adherence in v5.5 |
| `(x2)` after a lyric line | Repeat is largely ignored | Write the line twice with minor variation |
| Naming artists directly (`like Drake`) | Blocked or ignored | Use sound descriptors (`Toronto trap bounce`, `silk-smooth R&B falsetto`) |
| `no drums` in a drum-heavy genre alone | Drums still appear | Pair with positive (`piano only, no drums`) |
| Style prompt near / over ~1,000 chars | Later content may receive less attention; silent truncation is unverified | Front-load critical content |
| Capitalize EVERY word | Effect dilutes | Cap only turning-point words for emphasis |
| Vocal descriptor + active Voices/Custom Model | Conflict between clone and prompt | **Drop gender/tone descriptors when a Voice or Custom Model is selected** |
### Custom mode is required for tag syntax
Simple mode = unified prompt + auto-lyrics. **Custom mode** = separate fields (style, lyrics, title) + Advanced Options + tag syntax + Creative Sliders. Any time the user wants `[Verse]`/`[Chorus]`/`[Female Vocal]`-style tags, they must be in Custom mode. See [context/advanced.md](context/advanced.md).
---
## How to handle each action
**`prompt <intent>`**. Build both style and lyrics. Read [context/style.md](context/style.md) for layer detail, [context/lyrics.md](context/lyrics.md) for tag taxonomy. Produce two fenced blocks (style, lyrics), each labeled, within budget. End with 2-3 tweak suggestions.
**`lyrics <intent>`**. Load [context/lyrics.md](context/lyrics.md). Output a tagged lyrics block with section structure (`[Verse 1]`, `[Chorus]`, etc.). Include 1-2 performance cues (parentheticals, ellipses) where they fit naturally. Stay ≤3,000 chars, the quality sweet spot; the hard cap is 5,000, unless user asked for max.
**`style <intent>`**. Load [context/style.md](context/style.md). Walk the 6-layer formula. Output one fenced style-prompt block + character count. Suggest 2-3 alternatives (different mood, different production).
**`clean <text>`**. Load [context/troubleshoot.md](context/troubleshoot.md) and [context/style.md](context/style.md). Score the user's prompt against the anti-pattern table above. Surface flagged issues with specific quotes. Propose a rewrite. Do NOT silently rewrite. State what changed and why in your response.
**`tags`**. Load [context/lyrics.md](context/lyrics.md). Render the full taxonomy as tables (structural, vocal, instrument, mood, ending). Include parameterized syntax `[Tag: descriptors]` example.
**`genre <name>`**. 4-mode router. Detect intent from arguments:
1. **Template mode**. `<name>` matches one of the 12 built-in templates (pop, rock, hip-hop, trap, edm, jazz, classical, folk, metal, ambient, lofi, rnb): read [templates/<name>.md](templates/) and present.
2. **Research mode**. `<name>` is a real genre but no template exists (e.g., `dungeon synth`, `witch house`, `gqom`, `phonk`, `slowcore`, `vaporwave`, `nu-disco`):
- Check [context/genre-taxonomy.md](context/genre-taxonomy.md) first, if cataloged, build a Suno prompt from the catalog entry
- If not cataloged, invoke the `research` action's Phase 1 (WebFetch / Perplexity) to fetch BPM range, instrumentation, vocal style, production character
- Synthesize into the standard template format: style prompt block + lyrics shell + 3 tweak knobs + 2-3 common variants
- Cite sources
3. **Suggest mode**. `<name>` starts with `suggest` (e.g., `genre suggest dark moody chill`, `genre suggest dystopian aggressive`) OR is a vibe phrase rather than a genre name:
- Read [context/genre-taxonomy.md](context/genre-taxonomy.md) "Vibe → genre mapping" section
- Return 3-7 fitting genres, each with: 1-line distinguishing characteristic + the right BPM/key/instrumentation hints + which template to load OR which research target to chase
- Ask user which one to expand into a full prompt
4. **Family mode**. `<name>` starts with `family` (e.g., `genre family hip-hop`, `genre family electronic`):
- Read [context/genre-taxonomy.md](context/genre-taxonomy.md) family tree
- Show the requested family's subgenres in tree form
- Brief 1-line characteristic per subgenre
- Ask user which leaf to expand
If `<name>` is ambiguous (could be template OR research OR suggest), ask user which mode they want.
**`troubleshoot <symptom>`**. Load [context/troubleshoot.md](context/troubleshoot.md). Match the symptom to a known failure mode. Give diagnosis + 1-3 specific fixes + a regenerate-with-this prompt rewrite if applicable.
**`tips`**. Load [context/tips.md](context/tips.md). Surface community-validated techniques (caps for vocal pressure, vowel stretching for melisma, ellipses for breath, parentheticals for inline directives, hyphenation for staccato, line breaks for melodic separation). Caveat: MEDIUM-confidence, consensus across multiple community sources but no official Suno doc, **except where an entry flags itself lower: the timing-cue entry is LOW-MEDIUM.**
**`features`**. Load [context/v55-features.md](context/v55-features.md) (what's new in v5.5) and/or [context/advanced.md](context/advanced.md) (modes, Personas, Cover, Extend, Replace Section, Stems, Sliders, Studio). Pick the section the user asked about. Don't dump everything.
---
## Confidence flags (be honest about source quality)
- **HIGH confidence**: claims confirmed by Suno's official help center (`help.suno.com`) or `suno.com/blog`. The 6-layer formula, structural and vocal tag names, Custom mode requirements, Voices/Custom Models/My Taste mechanics, and Creative Slider names and qualitative endpoints, all HIGH. Character budgets are NOT officially published, third-party tester consensus only (MEDIUM-HIGH).
- **MEDIUM confidence**: community-validated techniques across multiple guides + Reddit consensus, but no official Suno doc. Capitalization weighting magnitude, vowel-stretching letter counts, hyphenation staccato, `(x2)` failure mode, and **every numeric Creative Slider setting or range in this skill except the Audio Influence entry value** are community-empirical. Treat exact magnitudes and slider numbers as starting points for A/B tests, not official values.
- **LOW-MEDIUM confidence**: below MEDIUM because the multi-source consensus is missing. At most a single community post plus its own comment thread, and no official Suno doc. Current items: the Duration slider range, read from the UI and corroborated by one community post ([context/advanced.md](context/advanced.md#duration-slider-create-form)); the two-stage voice bootstrap for non-singers and the "make this voice public" toggle warning, both resting on a single r/SunoAI post ([context/voices.md](context/voices.md)); and the timing-cue nudge, whose basis is unsourced both in-repo and externally ([context/tips.md](context/tips.md)). Offer these as untested leads carrying their own caveat, never as procedure, and never in place of a better-supported route when one exists.
- **OFF the ladder. First-hand writer observation.** Every rung above grades **second-hand** sourcing: official docs, multiple community guides, a single community post. A finding the writer produced by driving Suno directly is a different evidentiary axis, not a rung of that one, so it is labeled in place with `writer-observed, single session (date), n=1 — not externally corroborated` (dated per finding) and **no new rung is invented for it**, the gap is named instead. First-hand does **not** outrank MEDIUM: one unreproduced session is not consensus, and where the reading is flow-scoped or setup-scoped the label must carry that scope with it. But an observed **failure** is existence evidence in a way a claimed success is not: it shows the failure *can* happen, which is enough to document a fix, and never enough to assert that it always happens or to state a mechanism. Surface these with the label and scope attached, and prefer the cheap safe default over the clever shape whenever one exists. Current items: the Audio Influence entry value ([context/advanced.md](context/advanced.md)), and tag-only section absorption plus short-line over-separation (both [context/troubleshoot.md](context/troubleshoot.md)). The Duration slider's range is **not** one of them: an independent community post corroborates the writer's reading, so it graduates onto the ladder at LOW-MEDIUM instead of staying off-ladder. A first-hand observation that finds external support graduates onto the ladder; it does not keep the off-ladder label as a badge.
When generating prompts, default to HIGH-confidence techniques. Surface MEDIUM-confidence tricks as opt-in suggestions, not commands. Surface LOW-MEDIUM items only with their caveat attached, and only after naming the better-supported route. Surface off-ladder writer observations with their label and their scope attached, and when one records a failure, give the safe default as the fix rather than a prohibition.
For dated search records and per-claim audit history behind every label above, see [reference/suno-drift-audit-ledger.md](reference/suno-drift-audit-ledger.md).
---
## Maintenance. Load on demand
Nothing below is needed to write a prompt. It is the maintainer surface for this skill's own claims.
| File | Load when |
|---|---|
| [reference/suno-drift-audit-ledger.md](reference/suno-drift-audit-ledger.md) | Re-rating a claim in a context spoke, answering whether a claim was ever audited, or shipping any change to a spoke. It is the committed record of which claims have been audited, which are unsourced, and which release last touched each. A row that moves is updated in the same PR as the claim |
---
## What this skill does NOT do
- **Generate audio**. Suno does that. This skill produces text prompts.
- **Cover legacy v4 prompting**, the ~200-char style-prompt era is out of scope. Targets v5.5.
- **Make commercial-use determinations**. Cover and Voices have commercial constraints noted in `context/advanced.md`; treat as informational, not legal advice.
- **Replace Suno's web UI workflow**. This is a prompt-craft assistant. Workflow steps requiring clicks in Suno's UI (Replace Section, Persona creation, Voice verification) are described, not automated.
- **Fix already-generated audio**. Suno's prompt is a generation-time control. Most issues (hallucinated lyrics, vocal artifacts, BPM drift) are prevention-only. The skill's troubleshoot action gives the prompt-side fix, then asks the user to regenerate.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!