安装方式
命令行安装
在项目根目录执行以下命令,完成 Skill 安装。
npx bzskills add MiniMax-AI/skills --skill minimax-music-gen 当用户想要生成音乐、歌曲或音频曲目时使用。触发任何涉及音乐创作、歌曲写作、歌词生成、音频制作或翻唱的请求。当用户提供歌词并希望将其转化为歌曲,或描述某种情绪/场景并希望获得背景音乐时,也会触发。支持多语言触发——匹配任何语言中的等效短语。请勿用于现有文件的音乐播放、乐理问题或没有生成过程的音乐推荐。
44
下载量
命令行安装
在项目根目录执行以下命令,完成 Skill 安装。
npx bzskills add MiniMax-AI/skills --skill minimax-music-gen name: minimax-music-gen
description: 当用户想要生成音乐、歌曲或音频曲目时使用。触发任何涉及音乐创作、歌曲写作、歌词生成、音频制作或翻唱的请求。当用户提供歌词并希望将其转化为歌曲,或描述某种情绪/场景并希望获得背景音乐时,也会触发。支持多语言触发——匹配任何语言中的等效短语。请勿用于现有文件的音乐播放、乐理问题或没有生成过程的音乐推荐。
license: MIT
metadata:
version: "1.1"
category: creative使用 MiniMax Music API 生成歌曲(人声或器乐)。支持两种创作模式:基础模式(一句话输入,生成歌曲)和高级控制模式(编辑歌词、优化提示词、生成前规划)。
mmx 命令行工具。检查是否已安装:
command -v mmx && mmx --version || echo "mmx not found"
安装(需要 Node.js):
npm install -g mmx-cli
身份验证(仅首次需要):
mmx auth login --api-key <你的-minimax-api-key>
可从 MiniMax 平台 获取 API 密钥。凭据会保存到 ~/.mmx/credentials.json,跨会话持久生效。
验证:
mmx quota show
mpv、ffplay 或 afplay(macOS 内置)用于本地播放。推荐使用 mpv,支持交互式控制。本技能使用 mmx CLI 进行所有音乐生成:
mmx music generate — 模型:music-2.6-free--lyrics-optimizer 根据提示词自动生成歌词--instrumental 生成纯器乐--lyrics 使用用户提供的歌词--genre、--mood、--vocals、--instruments、--bpm、--key、--tempo、--structure、--referencesmmx music cover — 模型:music-cover-free--audio-file <路径> 或 --audio <URL> 传入参考音频--prompt 描述目标翻唱风格代理标志:当从代理调用 mmx 时,始终添加 --quiet --non-interactive。
流程:
用户描述 -> mmx music generate --lyrics-optimizer -> MP3用户描述 -> mmx music generate --instrumental -> MP3源音频 + 风格 -> mmx music cover -> MP3所有生成的音乐保存到 ~/Music/minimax-gen/。如果目录不存在则创建。文件以时间戳和提示词派生出的短标识符命名:YYYYMMDD_HHMMSS_<slug>.mp3
---
从用户的第一条消息开始检测用户语言,并在整个会话中使用该语言回复。这适用于所有交互文本、问题、确认和反馈提示。
面向用户文本本地化规则:
歌词语言规则:
---
解析用户的消息以确定:
如果不明确,使用以下决策树询问:
Q1: 什么类型的音乐?
- 人声(带歌词)
- 器乐(无演唱)
- 翻唱
Q2: 创作模式?
- 基础 —— 一行描述,自动生成
- 高级 —— 编辑歌词,优化提示词,规划
如果用户给出明确的一句话,如“给我做一个悲伤的钢琴曲”,则跳过问题——推断为器乐+基础模式并继续。
---
目标:用户提供简短描述,技能自动生成一切,然后调用 API。
遵循以下模式:
A [mood] [BPM optional] [genre] song, featuring [vocal description],
about [narrative/theme], [atmosphere], [key instruments and production].
即将生成:
类型:人声 / 器乐
描述:独立民谣,忧郁,原声吉他,温柔女声
歌词:自动生成 (--lyrics-optimizer)
确认?(按回车确认,或告诉我需要修改什么)
---
目标:用户在生成前完全控制每个参数。
--lyrics 传递给 mmx。--lyrics-optimizer 自动生成。--lyrics 传入。---
使用 mmx CLI 生成音乐:
带自动生成歌词的人声:
mmx music generate \
--prompt "<prompt>" \
--lyrics-optimizer \
--genre "<genre>" --mood "<mood>" --vocals "<vocal style>" \
--instruments "<instruments>" --bpm <bpm> \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
带用户提供歌词的人声:
mmx music generate \
--prompt "<prompt>" \
--lyrics "<lyrics with section markers>" \
--genre "<genre>" --mood "<mood>" --vocals "<vocal style>" \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
器乐(无演唱):
mmx music generate \
--prompt "<prompt>" \
--instrumental \
--genre "<genre>" --mood "<mood>" --instruments "<instruments>" \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
使用结构化参数(--genre、--mood、--vocals、--instruments、--bpm、--key、--tempo、--structure、--references、--avoid、--use-case)为 API 提供精细控制,而不是将所有内容塞入 --prompt。
在等待时显示进度指示器。典型生成时间 30-120 秒。
---
生成后,检测可用的音频播放器并播放文件。
检测播放器:
command -v mpv || command -v ffplay || command -v afplay
根据检测到的播放器播放(按优先级排序):
| 播放器 | 命令 | 控制键 |
|---|---|---|
mpv(首选) | mpv --no-video ~/Music/minimax-gen/<filename>.mp3 | 空格 = 暂停/恢复,q = 退出,左/右 = 快进/后退 |
ffplay | ffplay -nodisp -autoexit ~/Music/minimax-gen/<filename>.mp3 | q = 退出 |
afplay(macOS) | afplay ~/Music/minimax-gen/<filename>.mp3 | Ctrl+C = 停止 |
| 未找到 | 不尝试播放 | 仅显示文件路径 |
开始播放后,告知用户(本地化所有文本):
正在播放: <filename>.mp3
保存至: ~/Music/minimax-gen/<filename>.mp3
不要显示播放控制键(如键盘快捷键)——它们在此环境中不起作用,因为播放器在后台运行。
如果未找到播放器(本地化所有文本):
未检测到音频播放器。
文件保存至: ~/Music/minimax-gen/<filename>.mp3
提示:安装 mpv 以获得最佳播放体验(brew install mpv)。
---
播放后,询问反馈:
这首歌曲怎么样?
1. 很喜欢,保留它!
2. 不太对,调整并重新生成
3. 微调歌词/风格后重新生成
4. 不想要,重新开始
根据反馈:
_v1 后缀以便比较。---
基于参考音频生成歌曲的翻唱版本。模型:music-cover-free。
参考音频要求:mp3、wav、flac — 时长 6 秒至 6 分钟,最大 50MB。如果未提供歌词,则自动通过 ASR 提取原始歌词。
当用户选择翻唱模式时:
从本地文件翻唱:
mmx music cover \
--prompt "<cover style description>" \
--audio-file <source.mp3> \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
从 URL 翻唱:
mmx music cover \
--prompt "<cover style description>" \
--audio <source_url> \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
带自定义歌词(文本):
mmx music cover \
--prompt "<style>" \
--audio-file <source.mp3> \
--lyrics "<custom lyrics>" \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
带自定义歌词(文件):
mmx music cover \
--prompt "<style>" \
--audio-file <source.mp3> \
--lyrics-file <lyrics.txt> \
--out ~/Music/minimax-gen/<filename>.mp3 \
--quiet --non-interactive
| 参数 | 说明 |
|---|---|
--seed <number> | 随机种子 0-1000000,用于可重现结果 |
--channel <n> | 1(单声道)或 2(立体声,默认) |
--format <fmt> | mp3(默认)、wav、pcm |
--sample-rate <hz> | 采样率(默认:44100) |
--bitrate <bps> | 比特率(默认:256000) |
按正常的播放和反馈流程继续(第 4 步和第 5 步)。
---
| 错误 | 操作 |
|---|---|
| 找不到 mmx | npm install -g mmx-cli |
| mmx 认证错误(退出码 3) | mmx auth login |
| 配额已超出(退出码 4) | 报告配额限制,建议等待或升级 |
| API 超时(退出码 5) | 重试一次,然后报告失败 |
| 内容过滤(退出码 10) | 调整提示词以避免过滤内容 |
| 无效歌词格式 | 自动修复段落标记,警告用户 |
| 未找到音频播放器 | 保存文件并告知用户路径,建议安装 mpv |
| 网络错误 | 显示错误详情,建议检查连接 |
---
[verse]、[chorus]、[bridge]、[outro]、[intro]。在使用 --lyrics 时始终包含它们。~/Music/minimax-gen/ 中的文件超过 50 个,建议在开始新会话时进行清理。--genre、--mood、--vocals、--instruments、--bpm 等,而不是将所有内容嵌入 --prompt。这可以给 API 更好的控制。---
完整的提示词编写指南(包括流派/人声/乐器参考和 BPM 表格)请参见 [references/prompt_guide.md](references/prompt_guide.md)。