/install songmaker
SenseAudio Songmaker
Two-step song creation: generate lyrics → compose music. If the user already has lyrics, skip to Step 2.
Workflow
用户描述 → [Step 1] 生成歌词 → 用户确认/修改 → [Step 2] 生成歌曲 → 返回链接
↑ 用户自带歌词时跳过 Step 1
Step 1: Generate Lyrics
Skip this step if the user provides their own lyrics.
LYRICS_RESP=$(curl -s -X POST "https://api.senseaudio.cn/v1/song/lyrics/create" \
-H "Authorization: Bearer $SENSEAUDIO_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"prompt\": \"\x3CUSER_PROMPT>\", \"provider\": \"sensesong\"}")
TASK_ID=$(echo $LYRICS_RESP | jq -r '.task_id // empty')
If task_id is present, poll until done:
while true; do
POLL=$(curl -s "https://api.senseaudio.cn/v1/song/lyrics/pending/$TASK_ID" \
-H "Authorization: Bearer $SENSEAUDIO_API_KEY")
STATUS=$(echo $POLL | jq -r '.status')
{ [ "$STATUS" = "SUCCESS" ] || [ "$STATUS" = "FAILED" ]; } && break
sleep 3
done
LYRICS=$(echo $POLL | jq -r '.response.data[0].text')
If no task_id (sync response), read directly:
LYRICS=$(echo $LYRICS_RESP | jq -r '.data[0].text')
Show the lyrics to the user and ask for confirmation or edits before proceeding.
Lyrics Format
The API uses structured section tags separated by ;:
[intro-medium] ; [verse] 第一段歌词内容 ; [chorus] 副歌内容 ; [bridge] 桥段 ; [outro-short]
Common tags: [intro-short] [intro-medium] [verse] [chorus] [bridge] [outro-short] [outro-medium] [inst-short]
If the user provides plain lyrics without tags, wrap them: [verse] \x3Clyrics> ; [chorus] \x3Cchorus>
Step 2: Generate Song
Build the request body from user preferences:
| User says | Parameter |
|---|---|
| 男声 / 男歌手 | "vocal_gender": "m" |
| 女声 / 女歌手 | "vocal_gender": "f" |
| 纯音乐 / 无人声 | "instrumental": true (omit lyrics) |
| 风格描述(摇滚/流行/古风…) | "style": "\x3C描述>" |
| 不要某种风格 | "negative_tags": "\x3C描述>" |
SONG_RESP=$(curl -s -X POST "https://api.senseaudio.cn/v1/song/music/create" \
-H "Authorization: Bearer $SENSEAUDIO_API_KEY" \
-H "Content-Type: application/json" \
-d "{
\"model\": \"sensesong\",
\"lyrics\": \"\x3CLYRICS>\",
\"title\": \"\x3CTITLE>\",
\"vocal_gender\": \"\x3Cf|m>\",
\"style\": \"\x3CSTYLE>\"
}")
SONG_TASK=$(echo $SONG_RESP | jq -r '.task_id')
Song generation always returns a task_id. Poll until done (may take 30–120s):
while true; do
POLL=$(curl -s "https://api.senseaudio.cn/v1/song/music/pending/$SONG_TASK" \
-H "Authorization: Bearer $SENSEAUDIO_API_KEY")
STATUS=$(echo $POLL | jq -r '.status')
{ [ "$STATUS" = "SUCCESS" ] || [ "$STATUS" = "FAILED" ]; } && break
echo "生成中... ($STATUS)"
sleep 5
done
Output
On SUCCESS, extract and display:
echo $POLL | jq -r '.response.data[0] | "标题:\(.title)\
时长:\(.duration) 秒\
音频:\(.audio_url)\
封面:\(.cover_url)"'
Example output:
标题:夏日物语
时长:187 秒
音频:https://cdn.senseaudio.cn/songs/xxx.mp3
封面:https://cdn.senseaudio.cn/covers/xxx.jpg
On FAILED, report the status and suggest retrying with a different style or simpler lyrics.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install songmaker - 安装完成后,直接呼叫该 Skill 的名称或使用
/songmaker触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Songmaker 是什么?
Generate a complete song from a text description — AI writes lyrics then composes music. Use when users want to create a song, turn a description into audio,... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 258 次。
如何安装 Songmaker?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install songmaker」即可一键安装,无需额外配置。
Songmaker 是免费的吗?
是的,Songmaker 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Songmaker 支持哪些平台?
Songmaker 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Songmaker?
由 scikkk(@scikkk)开发并维护,当前版本 v1.0.0。