본문으로 건너뛰기
cccskills
무료GitHub에 공개

byted-music-generate

Generate music using Volcengine Imagination API. Supports vocal songs, instrumental BGM, and lyrics generation. Use when the user wants to create songs, background music, soundtracks, write lyrics, or mentions "music generation", "BGM", or "songwriting".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(6)

  • SKILL.md8.1 KB
  • LICENSE11.1 KB
  • references/parameters.md8.2 KB
  • requirements.txt66 B
  • scripts/music_generate.py17.8 KB
  • SKILL.cn.md7.5 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Music Generate Skill

Generate music using the Volcengine Music Generation API. 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

Two authentication methods are supported (gateway takes priority):

Option 1: API Gateway (recommended)

  • ARK_SKILL_API_BASE — API gateway base URL
  • ARK_SKILL_API_KEY — API gateway authentication key

Option 2: Direct AK/SK

  • VOLCENGINE_ACCESS_KEY — AccessKey ID
  • VOLCENGINE_SECRET_KEY — AccessKey Secret
  • How to obtain: Volcengine Console → Account → 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

  • IF the script raises PermissionError: Authentication not configured ..., inform the user to configure either API gateway (ARK_SKILL_API_BASE + ARK_SKILL_API_KEY) or direct AK/SK (VOLCENGINE_ACCESS_KEY + VOLCENGINE_SECRET_KEY) environment variables. Write them to the workspace environment variable file, then retry.
  • IF status is "timeout", the task is still generating. Provide the user with the task_id and the manual query command from the output.
  • IF copyright check fails (code 50000001), suggest the user enrich the description or increase the audio duration, then retry.

References

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Deploy, update, validate, and troubleshoot the AgentKit hybrid-cloud customer-service demo in this directory. Use when a user asks an AI coding agent to follow the README, deploy or update the demo, configure OpenAPI/Runtime/Knowledge/Memory/Sandbox/MCP/Skills/A2A, run customer-view validation, or record manual platform steps and failures.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

Generate deterministic SVG algorithmic artwork. Invoke when the user asks for geometric, generative, or algorithmic visual art.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

通过本地 Python CLI 和 OpenAPI 客户端管理、排查火山云手机资源。适用于查询实例和资源、截图、执行命令、查看任务、检查应用、主机和机房容量、标签、DNS、路由,以及操作已授权的测试云手机实例。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

Launch and continue the Volcengine AI Research survey workflow for concept testing, audience design, questionnaire drafting, interview guide generation, execution confirmation, progress checks, and result queries. Use this skill when the user wants to create, revise, confirm, execute, or follow up on a real AI research survey task in ABCompass instead of doing generic brainstorming, copywriting, translation, summarization, or broad market discussion.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

Create and check long-running video material evaluation tasks. Use this skill when the user wants to submit videos for evaluation, check an existing video evaluation task list, or fetch the result of a previously created video evaluation task. This skill is not a general-purpose video upload skill because upload is allowed only as an internal step of task creation. Authentication uses an API key passed as an Authorization bearer token.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

火山引擎 AntiDDoSPro 高防域名只读巡检。用户要查域名健康、攻击、流量、CC/WAF/区域封禁、智能防护或 CCAI 状态时使用。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bytedance/agentkit-samples4742026년 10월 16일 업데이트

bytedance의 스킬 모두 보기

이 스킬의 문제 신고