Install
openclaw skills install feishu-bgm飞书场景化背景音乐生成器。通过 MiniMax Music API 生成纯音乐 BGM,以音频消息发送到飞书群。 触发词:"来点BGM"、"开会背景音"、"加班音乐"、"头脑风暴BGM"、"会议音乐"、"工作BGM"、 "放点音乐"、"背景音乐"、"需要BGM"。当用户在飞书群中描述场景并希望获得背景音乐时激活。
openclaw skills install feishu-bgm根据工作场景生成纯音乐 BGM,通过飞书音频消息即时送达群聊。
依赖:MiniMax CLI(mmx-cli)+ Token Plan
npm install -g mmx-cli
需要 Node.js 18+。完整文档:https://github.com/MiniMax-AI/cli
前往 MiniMax 平台订阅 Token Plan(音乐生成需要额度):
# 方式一:API Key 登录(推荐,从平台「接口密钥」页获取)
mmx auth login --api-key sk-xxxxx
# 方式二:浏览器 OAuth 登录
mmx auth login
# 检查登录状态
mmx auth status
# 检查剩余额度
mmx quota
# 测试生成一首 BGM
mmx music generate --prompt "calm piano, ambient" --instrumental --out /tmp/test_bgm.mp3
全部通过即可使用本 Skill。
用户描述模糊时,从预设匹配最近场景;描述具体时,直接用用户描述构建 prompt。
| 场景关键词 | 风格 | BPM | 情绪关键词 |
|---|---|---|---|
| 开会/会议/讨论 | Ambient, Minimal | 70-90 | calm, professional, subtle |
| 头脑风暴/创意 | Electronic, IDM | 100-120 | creative, energetic, playful |
| 加班/赶工/冲刺 | Lo-fi, Chillhop | 85-95 | focused, determined, warm |
| 放松/休息/午休 | Bossa Nova, Jazz | 90-110 | relaxed, smooth, cozy café |
| 庆祝/发布/上线 | Funk, Disco | 115-125 | celebratory, groovy, uplifting |
| 复盘/总结/回顾 | Piano, Classical | 60-80 | reflective, thoughtful, gentle |
| 面试/1on1 | Acoustic, Folk | 80-100 | warm, comfortable, welcoming |
| 站会/日会 | Pop, Indie | 110-120 | light, breezy, efficient |
从用户消息中提取:
优先使用 CLI(无需管理 API Key),回退到 Python 脚本:
# 方式一:MiniMax CLI(推荐)
mmx music generate \
--prompt "<constructed prompt>" \
--instrumental \
--out /tmp/openclaw/bgm_<scene>.mp3
# 方式二:Python 脚本(需要 MINIMAX_API_KEY 环境变量)
python3 scripts/generate_bgm.py \
--prompt "<constructed prompt>" \
--output /tmp/openclaw/bgm_<scene>.mp3
Prompt 构建规则:
<style>, instrumental, <mood keywords>, <instrument hints>, <BPM> BPM,
background music for <scene description>, no vocals, professional and clean mix
示例:
Ambient, Minimal, instrumental, calm, professional, subtle,
soft piano, warm pads, gentle strings, 80 BPM,
background music for a team meeting, no vocals, professional and clean mix
生成完成后,使用 message 工具发送音频文件到当前群聊:
message(action="send", filePath="/tmp/openclaw/bgm_<scene>.mp3",
message="🎵 <场景名> BGM 已就绪")
发送后回复:
🎵 BGM 已送达!
场景:<场景描述>
风格:<风格>
适合:<使用建议>
💡 不满意可以说「换一首」或描述你想要的风格
| 用户说 | 动作 |
|---|---|
| "换一首" / "再来一首" | 同场景重新生成 |
| "要欢快一点的" | 调整情绪关键词重新生成 |
| "不要鼓" / "加点吉他" | 修改乐器提示重新生成 |
| "停" / "够了" | 结束,不再生成 |
CLI 自动管理认证和 region,无需手动传 API Key:
mmx music generate \
--prompt "<prompt>" \
--instrumental \
--out /tmp/openclaw/bgm_<scene>.mp3
scripts/generate_bgm.py 直接调用 MiniMax Music API:
MINIMAX_API_KEY 获取music-2.5+is_instrumental: true,output_format: url| 错误 | 处理 |
|---|---|
| API 超时 | 告知用户生成较慢,自动重试一次 |
| 生成失败 | 提示用户换个描述试试 |
| 余额不足 | 告知用户 API 额度用完 |
aigc_watermark: false)