Install
openclaw skills install song-creationMulti-agent song creation workflow using 拾光's agent architecture (writer → musician → programmer). Use when the user says '创作一首歌', '写一首歌', '做首歌', '写首歌', '创作一首音乐', or any song/music creation request. This skill covers: 1) spawning 墨白 writer agent for lyrics, 2) spawning 和弦 musician agent for music design (style, BPM, key, arrangement), 3) spawning 引擎 programmer agent with ComfyUI AceStep workflow for audio synthesis.
openclaw skills install song-creation青 → 拾光 ◒ → writer(墨白✍️) → 歌词
→ musician(和弦🎵) → 音乐方案
→ programmer(引擎⚙️) → ComfyUI 合成
拾光是总工程师,拆解任务分配给各子会话,然后整合结果呈现给青。
墨白、和弦、引擎的名字只是角色描述,不是预注册的 agent。
实际执行是通过 sessions_spawn 创建全新的子会话,
并给每个子会话注入对应的角色描述(「你叫墨白,你是文字精灵...」)。
这意味着:
了解用户想要的风格/主题/情绪方向。可自由发挥,也可基于用户提供的方向。不需要每个都问,估摸着来。
方式:sessions_spawn 启动子 agent
参数:
label: writer-lyricsmodel: custom-integrate-api-nvidia-com/deepseek-ai/deepseek-v4-pro(NVIDIA API 版)context: isolated任务模板:
你叫墨白 ✍️,是拾光团队的文字精灵,世间一切文字归你管。
**任务**:写一首歌词,[风格/主题/情绪提示]。
写一首完整的歌词,包含:歌名、主歌(至少2段)、副歌、桥段(可选)。
歌词要有画面感和情绪层次。
**格式要求**:
歌名:《XXXX》
[主歌1] xxxx
[主歌2] xxxx
[副歌] xxxx
[桥段] xxxx
完成后直接输出歌词,不要多余解释。
接收墨白的歌词输出,传给和弦。
方式:sessions_spawn 启动子 agent
参数:
label: musician-melodymodel: custom-integrate-api-nvidia-com/deepseek-ai/deepseek-v4-pro(NVIDIA API 版)context: isolated任务模板(包含完整歌词):
你叫和弦 🎵,是拾光团队的旋律织造者。
墨白写了《XXXX》的歌词:
[完整歌词]
请给出完整的音乐设计方案:
1. **Style Tags(英文,供 AceStep 使用)**
2. **调性 & BPM**
3. **情感基调**
4. **编曲方案**:分段落乐器编排
5. **编曲强度曲线**
6. **AceStep 参数建议**:温度、top_p、CFG
7. **建议时长 duration(秒)**
完成后直接输出方案。
参数:
label: engine-comfyuimodel: deepseek/deepseek-v4-flash(不需 NVIDIA API)context: isolated任务模板中必须包含的内容:
你是引擎 ⚙️,拾光团队的程序员。
**⚠️ 必须:先读操作手册再动手!**
```bash
cat ~/.openclaw/workspace/tools/comfyui操作手册.md
任务:用 ComfyUI + AceStep 生成歌曲《XXX》
~/ai/ComfyUI/user/default/workflows/api工作流/audio_ace_step1_5_xl_sft.json直接给 [主歌1] 开始的内容。
### Step 5: 呈现结果
按格式输出:
Style Tags
曲风标签
歌词 [完整歌词]
参数
MEDIA:/path/to/output.mp3
## ComfyUI 合成细节
### 工作流
- **主力**:`audio_ace_step1_5_xl_sft.json`(SFT 版,50 步,音质好,支持长音频)
- 替代:`audio_ace_step1_5_xl_turbo.json`(Turbo 版,更快但音质略差)
### 启动 ComfyUI
```bash
# ✅ 正确方式(必须用此脚本)
bash /home/qsh/ai/run_comfyui.sh
# ❌ 禁止手动拼 python 路径
# ❌ 禁止加 --gpu-only
| Node | 类型 | 作用 |
|---|---|---|
| 94 | TextEncodeAceStepAudio1.5 | 文本编码(歌词/tags/参数入口) |
| 98 | EmptyAceStep1.5LatentAudio | 控制音频时长 |
| 104 | UNETLoader | 主模型(acestep_v1.5_xl_sft) |
| 105 | DualCLIPLoader | CLIP 模型 |
| 106 | VAELoader | VAE 模型 |
| 107 | SaveAudioMP3 | 输出 MP3 |
| 110 | VAEDecodeAudioTiled | VAE 分块解码(已配置,无需修改) |
| 字段 | 说明 | 必须设置 | 禁止操作 |
|---|---|---|---|
tags | 风格标签(英文) | ✅ | — |
lyrics | 歌词正文 | ✅ | 不能含歌名行 |
bpm | 速度 | ✅ | — |
keyscale | 调性 | ✅ | — |
duration | 时长(元数据) | ✅ | — |
temperature | 温度 | ✅ | — |
top_p | Top-P | ✅ | — |
cfg_scale | CFG 强度 | ✅ | — |
language | 语言 | ✅ | — |
seed | 种子 | ✅ | 直接用 int |
clip | CLIP 引用 | ❌ | 保持 ["105", 0] 不动 |
timesignature | 拍号 | ❌ | 保持默认 "4" |
generate_audio_codes | — | ❌ | 保持默认 True |
top_k | — | ❌ | 保持默认 0 |
min_p | — | ❌ | 保持默认 0 |
wf["98"]["inputs"]["seconds"] = 185 # 实际控制生成时长
# ✅ 正确格式
wf["107"]["inputs"]["filename_prefix"] = "YYYYMMDD/audio/歌曲名"
# ❌ 错误格式: "audio/YYYYMMDD/歌曲名"
lyrics 字段传给 AceStep 后会被直接唱出来。必须去掉 歌名:《XXX》 前缀!
# ✅ 正确:直接从 [主歌1] 开始
lyrics = """[主歌1]
xxxx"""
# ❌ 错误:歌名会被当歌词唱
lyrics = """歌名:《剑饮长风》
[主歌1]
xxxx"""
clip 字段是节点引用 ["105", 0],绝不能改seed 字段可以设为随机整数:n["seed"] = random.randint(0, 999999999)node_errors,它会明确指出哪个节点出错| 参数 | 值 |
|---|---|
| Steps | 50(工作流 KSampler 默认) |
| cfg_scale | 7 |
| duration | 185s |
| VAE | VAEDecodeAudioTiled(工作流自带) |
| seed | 随机 |
# 先彻底清理残留进程
pkill -f "python.*main.py"
# 再重新启动
bash /home/qsh/ai/run_comfyui.sh
# 1. 从 ComfyUI output 移出
shutil.move(src, dst)
# 2. 删除源目录(如果空)
os.rmdir(comfyui_output_dir)
~/ai/ComfyUI/output/~/.openclaw/workspace/output/YYYYMMDD/audio/优先级:NVIDIA API 免费模型优先,长时间无响应才切 deepseek/deepseek-v4-flash
| Agent | 模型 | 说明 |
|---|---|---|
| 墨白 ✍️ | custom-integrate-api-nvidia-com/deepseek-ai/deepseek-v4-pro | NVIDIA 免费 |
| 和弦 🎵 | custom-integrate-api-nvidia-com/deepseek-ai/deepseek-v4-pro | NVIDIA 免费 |
| 引擎 ⚙️ | deepseek/deepseek-v4-flash | 默认付费 API |
每次 spawn 引擎时,必须在任务模板中包含:
tools/comfyui操作手册.mdbash /home/qsh/ai/run_comfyui.sh 启动 ComfyUIclip 等节点引用字段详细操作手册:tools/comfyui操作手册.md