Coding

Byted Music Generate

Try it

Generate music using Volcengine Imagination API. Supports vocal songs, instrumental BGM, and lyrics generation. Use when the user wants to create songs, back...

What it does

This skill generates music using the Volcengine Music Generation API. It supports vocal songs, instrumental BGM, and AI lyrics generation.

The skill document

Music Generate Skill

This skill generates music using the Volcengine Music Generation API. It supports vocal songs, instrumental BGM, and AI lyrics generation.

Trigger Conditions

  1. User wants to generate a song (with lyrics or a text prompt)
  2. User needs background music, instrumental tracks, or soundtracks
  3. User wants AI-generated lyrics
  4. User mentions "write a song", "music generation", "BGM", "background music", "lyrics"

Environment Variables

Before using this skill, ensure the following environment variables are set:

  • VOLCENGINE_ACCESS_KEY — AccessKey ID
  • VOLCENGINE_SECRET_KEY — AccessKey Secret

How to obtain: Volcengine Console → Account (top-right) → Key Management → Create Key.

Usage

  1. Determine user intent and select the mode (song / bgm / lyrics).
  2. cd to the skill directory: skills/byted-music-generate.
  3. Run the script. The script polls the API internally and may take several minutes to complete (typically 1–5 minutes for song/bgm).
  4. Monitor execution: If the runtime environment moves the command to background, you MUST periodically (every 10 seconds) read the terminal output to check whether the script has finished. The script prints polling progress to stderr and outputs a single JSON line to stdout upon completion.
  5. Once completed, return the audio_url or lyrics from the JSON output to the user.

Three Modes

1. song — Vocal Song

User provides lyrics (Lyrics) or a text prompt (Prompt) to generate a vocal song.

# With text prompt
python scripts/music_generate.py song --prompt "A song about summer at the beach" --genre Pop --gender Female

# With lyrics
python scripts/music_generate.py song --lyrics "[verse]\nMoonlight on the windowsill\nMemories flowing like water\n[chorus]\nYou are my moonlight" --genre Folk --mood "Sentimental/Melancholic/Lonely"

Note: --lyrics and --prompt are mutually exclusive; lyrics takes priority. If the user hasn't provided lyrics, you can first use the lyrics mode to generate them, then pass the result to the song mode.

2. bgm — Instrumental BGM

Describe the desired music in natural language. The v5.0 model does not require Genre/Mood parameters — just describe everything in the --text field.

python scripts/music_generate.py bgm --text "Relaxed coffee shop ambiance music with piano and guitar" --duration 60

# With song structure segments
python scripts/music_generate.py bgm --text "Epic game soundtrack" --segments '[{"Name":"intro","Duration":10},{"Name":"chorus","Duration":30}]'

3. lyrics — Lyrics Generation

Returns synchronously (no polling needed). Can be used standalone or as a pre-step for the song mode.

python scripts/music_generate.py lyrics --prompt "A song about graduation farewell" --genre Folk --mood "Sentimental/Melancholic/Lonely" --gender Female

Manual Task Query (timeout fallback)

python scripts/music_generate.py query --task-id "202601397834584670076931"

Mode Detection Logic

User Request
    ↓
Contains "instrumental/BGM/background music/soundtrack"?
    ├─ Yes → bgm mode
    └─ No → Contains "lyrics/write lyrics" and does NOT request audio?
        ├─ Yes → lyrics mode
        └─ No → song mode
            ├─ User provided lyrics → --lyrics
            └─ User only described a theme → --prompt (or lyrics first, then song)

Script Parameters

song mode

ParameterRequiredDescription
--lyricseitherLyrics with structure tags
--prompteitherText prompt (Chinese, 5-700 chars)
--model-versionnov4.0 or v4.3 (default: v4.3)
--genrenoMusic genre
--moodnoMusic mood
--gendernoFemale / Male
--timbrenoVocal timbre
--durationnoDuration in seconds [30-240]
--keynoMusical key (v4.3 only)
--kmodenoMajor / Minor (v4.3 only)
--temponoTempo (v4.3 only)
--instrumentnoInstruments, comma-separated (v4.3 only)
--genre-extranoSecondary genres, comma-separated, max 2 (v4.3 only)
--scenenoScene tags, comma-separated (v4.3 only)
--langnoLanguage (v4.3 only)
--vod-formatnowav / mp3 (v4.3 only)
--billingnoprepaid / postpaid (default: postpaid)
--timeoutnoMax wait seconds (default: 300)

bgm mode

ParameterRequiredDescription
--textyesNatural language description
--durationnoDuration in seconds [30-120]
--segmentsnoJSON array of song structure segments
--versionnoModel version (default: v5.0)
--enable-input-rewritenoEnable prompt rewriting
--billingnoprepaid / postpaid (default: postpaid)
--timeoutnoMax wait seconds (default: 300)

lyrics mode

ParameterRequiredDescription
--promptyesLyrics prompt (Chinese only, <500 chars)
--genrenoMusic genre
--moodnoMusic mood
--gendernoFemale / Male

Script Return Info

The script outputs JSON with the following fields:

{
    "status": "success | timeout | error",
    "mode": "song | bgm | lyrics | query",
    "task_id": "...",
    "audio_url": "https://...",
    "duration": 46.0,
    "lyrics": "...",
    "error": null
}

Return the audio_url to the user for download or playback. URLs are valid for approximately 1 year, but users should save the file promptly.

Error Handling

  • PermissionError: VOLCENGINE_ACCESS_KEY ...: Inform the user to configure the environment variables. Write them to the workspace environment variable file, then retry.
  • status: "timeout": The task is still generating. Provide the user with the task_id and the manual query command from the output.
  • Copyright check failure (code 50000001): Suggest the user enrich the description or increase the audio duration, then retry.

References

Related skills

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai22 installs8 stars

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván559 installs18 stars

Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.

by fly0pants4.3k installs296 stars

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván855 installs69 stars

Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.

by Iván535 installs31 stars

More from volcengine-skills

Browse all skills

火山引擎联网搜索 API,返回网页/图片结果。联网搜索场景优先使用本 skill。触发词包括:查/搜/找、真的吗/靠谱吗/确认/核实、最近/今天/最新/近期、出处/来源/链接、有什么/有哪些/推荐、价格/政策/汇率/行情、对比/区别/哪个好、听说/据说/不太确定、热搜/热门/火、帮我看/了解一下、求证/辟谣、值不...

by volcengine-skills38 installs29 stars

Install and configure the security-related plugins required by OpenClaw, including the `claw-sentry` plugins. Use this skill when you want to complete instal...

by volcengine-skills28 installs

Generate high-quality images from text prompts using Volcano Engine Seedream models. Supports multiple artistic styles and aspect ratios. Use this skill when...

by volcengine-skills26 installs

Generate videos using Seedance models. Invoke when user wants to create videos from text prompts, images, or reference materials.

by volcengine-skills22 installs

CRITICAL: EXCELLENT at parsing BOTH PDF documents and IMAGES (including LONG SCREENSHOTS, scanned documents, and standard images). Extract structured Markdow...

by volcengine-skills18 installs

基于火山引擎Kickart服务生成抖店/抖音商品营销短视频,支持用户上传自定义图片/视频素材、素材分析、创意分析、故事板创作、成片生成、抖音发布全流程。当用户发送抖店/抖音商品链接、提及「上传素材」「添加图片」「添加视频」「素材分析」「创意分析」「故事板」「生成短视频」「营销视频」「发布视频」「抖音发布」时触发使用。

by volcengine-skills17 installs