← Back to list
🛠️

music Checked

Generate music using ElevenLabs Music API. Use when creating instrumental tracks, songs with lyri…
🛠️ Developer Tools skills By calesthio Version v1.0.0 Added 2026-09-07 Updated 2026-09-07 Source ↗
8.5Overall rating
2Views
7Downloads
56.5kStars

Installation

🤖 Install via AI

Copy the prompt below and send it to your AI assistant (e.g. Claude Code) — it will follow the instructions and install automatically.

Install the "music" skill by following the instructions at https://skill123.me/install/music.
⌨️ Command line install

Run in your terminal — downloads and installs to ~/.claude/skills/.

curl -fsSL https://skill123.me/install/music.sh | bash
📦 Download ZIP

Download the zip and extract it into your skills directory (e.g. ~/.claude/skills/), then restart your session.

⬇ Download v1.0.0 · 5 KB
📊 Static rating
8.5/10
Trigger
7.5
Structure
9.3
Workflow
7.6
Content
9.0
Engineering
9.0
Security
9.5

Six-dimension rubric with reviewer rationale.

View scorecard ↓
🛡 Dynamic test
—

Not live-tested yet — this skill is rated on static analysis only.

About this skill

Generate music using ElevenLabs Music API. Use when creating instrumental tracks, songs with lyrics, background music, jingles, or any AI-generated music composition. Supports prompt-based generation, composition plans for granular control, and detailed output with metadata.

ElevenLabs Music Generation

Generate music from text prompts - supports instrumental tracks, songs with lyrics, and fine-grained control via composition plans.

> **Setup:** See Installation Guide (references/installation.md). For JavaScript, use @elevenlabs/* packages only.

Documentation

Generate music using ElevenLabs Music API. Use when creating instrumental tracks, songs with lyrics, background music, jingles, or any AI-generated music composition. Supports prompt-based generation, composition plans for granular control, and detailed output with metadata.

ElevenLabs Music Generation

Generate music from text prompts - supports instrumental tracks, songs with lyrics, and fine-grained control via composition plans.

> **Setup:** See Installation Guide (references/installation.md). For JavaScript, use @elevenlabs/* packages only.

Quick Start

### Python


from elevenlabs import ElevenLabs

client = ElevenLabs()

audio = client.music.compose(
    prompt="A chill lo-fi hip hop beat with jazzy piano chords",
    music_length_ms=30000
)

with open("output.mp3", "wb") as f:
    for chunk in audio:
        f.write(chunk)

### JavaScript


import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
import { createWriteStream } from "fs";

const client = new ElevenLabsClient();
const audio = await client.music.compose({
  prompt: "A chill lo-fi hip hop beat with jazzy piano chords",
  musicLengthMs: 30000,
});
audio.pipe(createWriteStream("output.mp3"));

### cURL


curl -X POST "https://api.elevenlabs.io/v1/music" \
  -H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
  -d '{"prompt": "A chill lo-fi beat", "music_length_ms": 30000}' --output output.mp3

Methods

| Method | Description |

|--------|-------------|

| music.compose | Generate audio from a prompt or composition plan |

| music.composition_plan.create | Generate a structured plan for fine-grained control |

| music.compose_detailed | Generate audio + composition plan + metadata |

| music.upload | Upload an audio file for later inpainting workflows and optionally extract its composition plan |

See API Reference (references/api_reference.md) for full parameter details.

music.upload is available to enterprise clients with access to the inpainting feature.

Composition Plans

For granular control, generate a composition plan first, modify it, then compose:


plan = client.music.composition_plan.create(
    prompt="An epic orchestral piece building to a climax",
    music_length_ms=60000
)

# Inspect/modify styles and sections
print(plan.positiveGlobalStyles)  # e.g. ["orchestral", "epic", "cinematic"]

audio = client.music.compose(
    composition_plan=plan,
    music_length_ms=60000
)

Content Restrictions

  • Cannot reference specific artists, bands, or copyrighted lyrics
  • bad_prompt errors include a prompt_suggestion with alternative phrasing
  • bad_composition_plan errors include a composition_plan_suggestion

Error Handling


try:
    audio = client.music.compose(prompt="...", music_length_ms=30000)
except Exception as e:
    print(f"API error: {e}")

Common errors: 401 (invalid key), 422 (invalid params), 429 (rate limit).

References

View full documentation
  • Installation Guide (references/installation.md)
  • API Reference (references/api_reference.md)

Score breakdown

Trigger
7.5
Rich music synonyms (jingle, instrumental, background) in When clause; no When-Not
Structure
9.3
Compact SKILL.md with installation and API reference properly offloaded and linked
Workflow
7.6
Method table, plan-then-compose workflow, content restrictions, error codes; no output verification
Content
9.0
Concise imperative sections with runnable Python/JS/curl examples
Engineering
9.0
Valid frontmatter with env metadata, both referenced files exist
Security
9.5
Official elevenlabs.io endpoints only, env-var key, no injection or secrets
Clean ElevenLabs Music wrapper: 108-line SKILL.md with two well-linked references, composition-plan workflow, content restrictions, and error guidance; only a weak verification loop and missing When-Not keep it below top marks.