← 返回 Skills 市场
scikkk

Songmaker

作者 scikkk · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
258
总下载
0
收藏
1
当前安装
1
版本数
在 OpenClaw 中安装
/install 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,...
使用说明 (SKILL.md)

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.

安全使用建议
This skill appears internally consistent, but before installing: (1) Verify you trust the provider (https://senseaudio.cn) because your SENSEAUDIO_API_KEY will be sent to their API and may incur costs or expose usage metadata. (2) Treat the API key as a secret—do not reuse a high-privilege key you rely on elsewhere; create a scoped key if the provider supports it and be ready to revoke it. (3) Review the provider's privacy/terms for uploaded text/audio and any retention or licensing of generated content. (4) Because the skill runs shell commands using curl, ensure the agent environment is isolated from sensitive networks/credentials. (5) If you need higher assurance, request source code or an official SDK/verification from the publisher before granting the API key.
功能分析
Type: OpenClaw Skill Name: songmaker Version: 1.0.0 The skill provides a legitimate integration for the SenseAudio service (senseaudio.cn) to generate lyrics and music. It uses standard shell commands (curl, jq) to interact with the service's API endpoints for task creation and polling. No evidence of malicious intent, data exfiltration, or unauthorized execution was found; the use of the SENSEAUDIO_API_KEY is consistent with the stated purpose of the skill.
能力评估
Purpose & Capability
Name/description (song generation) match the declared requirements: SENSEAUDIO_API_KEY and the use of senseaudio.cn API endpoints. Required binaries (curl, jq) are appropriate for the provided bash examples.
Instruction Scope
SKILL.md contains concrete curl/jq examples that call senseaudio.cn endpoints to generate lyrics and music and then poll task endpoints. It does not instruct reading unrelated files, other env vars, or sending data to third-party endpoints beyond the provider. It asks to show lyrics to the user for confirmation before proceeding.
Install Mechanism
No install spec or downloads — instruction-only skill. Nothing is written to disk by the skill itself beyond what the agent normally does when following the provided shell commands.
Credentials
Only a single API credential (SENSEAUDIO_API_KEY) is required and declared as primaryEnv. The key is consistent with the described provider and used in all example requests. No unrelated credentials or broad config paths are requested.
Persistence & Privilege
always:false (default), and the skill does not request elevated or persistent system-wide privileges. Autonomous invocation is allowed by platform default but not combined with other red flags.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install songmaker
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /songmaker 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of SenseAudio Songmaker. - Generate a complete song from a text description: auto-writes lyrics and composes music. - Supports user-supplied lyrics or full AI creation (lyrics → music). - Customization options for style, vocal gender, and instrumental/background music. - Returns downloadable audio and cover art links upon completion.
元数据
Slug songmaker
版本 1.0.0
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 1
常见问题

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。

💬 留言讨论