Back to Skills

Music

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.

$ npx promptcreek add music

Auto-detects your installed agents and installs the skill to each one.

What This Skill Does

ElevenLabs Music Generation allows users to generate music from text prompts, offering control over instrumental tracks and songs with lyrics. It supports fine-grained control through composition plans, making it suitable for musicians, content creators, and developers seeking AI-generated music.

When to Use

  • Generate background music for videos.
  • Create custom soundtracks for games.
  • Produce royalty-free music for commercial use.
  • Experiment with AI-assisted music composition.
  • Develop personalized music playlists.
  • Compose music for podcasts or audiobooks.

Key Features

Generates music from text prompts.
Supports instrumental and lyrical compositions.
Offers fine-grained control via composition plans.
Provides Python, JavaScript, and cURL interfaces.
Allows uploading audio for inpainting workflows.
Generates structured plans for detailed control.

Installation

Run in your project directory:
$ npx promptcreek add music

Auto-detects your installed agents (Claude Code, Cursor, Codex, etc.) and installs the skill to each one.

View Full Skill Content

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. 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 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

0Installs
0Views

Supported Agents

Claude CodeCursorCodexGemini CLIAiderWindsurfOpenClaw

Attribution

Details

License
MIT
Source
admin
Published
3/18/2026

Tags

Related Skills