Music Generation Skill
Overview
This skill generates songs (vocal or instrumental) from a structured JSON spec using the
MiniMax music generation API (/v1/music_generation). You describe the style/mood/scene in
prompt, optionally provide lyrics, and the script returns an MP3.
Workflow
Step 1: Understand Requirements
Identify the desired style, mood, scene, language, and whether the user wants vocals or a pure instrumental track. Decide whether to supply lyrics or let the model write them.
Step 2: Create the Spec JSON
Write a JSON file in /mnt/user-data/workspace/ named {descriptive-name}.json:
{
"title": "Rainy Night Cafe",
"prompt": "indie folk, melancholic, introspective, walking alone, cafe",
"lyrics": "[verse]\nStreetlights glow the night wind sighs\n[chorus]\nPush the wooden door warm air inside"
}
Fields:
title(optional): a human-readable name.prompt(required): style, mood, and scene. Drives the musical character.lyrics(optional): song lyrics. Use\nbetween lines and structure tags such as[Intro],[Verse],[Pre Chorus],[Chorus],[Bridge],[Outro].is_instrumental(optional, bool): settruefor a pure instrumental track (no lyrics needed).
Behavior:
lyricsprovided → those lyrics are sung.is_instrumental: true→ instrumental, no vocals.- neither → the model auto-writes lyrics from
prompt(lyrics_optimizer).
Step 3: Execute Generation
python /mnt/skills/public/music-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/rainy-night-cafe.json \
--output-file /mnt/user-data/outputs/rainy-night-cafe.mp3
Parameters:
--prompt-file: Absolute path to the JSON spec (required).--output-file: Absolute path for the output MP3 (required).
[!NOTE] Do NOT read the python file, just call it with the parameters.
Environment
MINIMAX_API_KEY(required): your MiniMax interface key.MINIMAX_API_HOST(optional): defaulthttps://api.minimaxi.com.MINIMAX_MUSIC_MODEL(optional): defaultmusic-2.6-free(works for all API-key users); paid/Token-Plan users can setmusic-2.6for higher limits.
Output Handling
- Music is saved as MP3 (typically in
/mnt/user-data/outputs/). - Share the generated file with the user using the present_files tool.
- Offer to iterate on style or lyrics if adjustments are needed.
Notes
- Keep
promptfocused on style/mood/scene; put the actual sung words inlyrics. - For non-English songs, write
lyricsin the target language.