senseaudio-jingle-forge

Create a brand jingle (5–15 seconds) from a brand name and tone keywords. Use when users want a brand sound logo, audio identity, jingle, intro music, or short branded audio clip. Triggers on "品牌 jingle", "开机音效", "广告片尾音乐", "品牌声音", "音频 logo", "短视频片头音乐", or any request to create a short branded musical piece.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "senseaudio-jingle-forge" with this command: npx skills add scikkk/jingle-forge

SenseAudio Jingle Forge

Turn brand information into a ready-to-use audio logo. A jingle is not a song — it's short (5–15s), memorable, and built around the brand name. This skill constrains the music generation API to that specific format.

Step 1: Collect Brand Info

Ask the user for:

FieldExample
品牌名"极光科技"
行业/产品"智能家居"
调性关键词"科技感、温暖、未来"
使用场景开机音效 / 广告片尾 / 短视频片头 / APP 启动
人声偏好有人声(男/女)/ 纯音乐

If the user provides partial info, infer reasonable defaults and proceed.

Step 2: Generate Jingle Lyrics

Jingle lyrics have strict rules — explain this to the user if they ask why the lyrics look short:

  • Total length: ≤ 20 characters
  • Must contain the brand name
  • Last line ends with the brand name
  • Should rhyme or have a strong rhythm
  • No verse/chorus structure — just 1–2 punchy lines

Build the lyrics prompt with these constraints baked in:

为品牌"<品牌名>"创作一段 Jingle 歌词。
要求:
- 总字数不超过20字
- 必须包含品牌名"<品牌名>"
- 最后一句以品牌名结尾
- 押韵,朗朗上口
- 调性:<调性关键词>
- 场景:<使用场景>
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\": \"<PROMPT>\", \"provider\": \"sensesong\"}")

TASK_ID=$(echo $LYRICS_RESP | jq -r '.task_id // empty')

If async (task_id present), poll:

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 sync, read directly: LYRICS=$(echo $LYRICS_RESP | jq -r '.data[0].text')

Show the lyrics to the user and ask for approval or edits before composing.

Step 3: Match Style to Brand Tone

Map tone keywords to music style automatically:

Tone keywordStyle suggestion
科技 / 未来 / 数字electronic, synthesizer, futuristic
温暖 / 家庭 / 亲切acoustic guitar, piano, warm
高端 / 奢华 / 精致strings, jazz, orchestral
活力 / 年轻 / 运动pop, upbeat, energetic
自然 / 健康 / 清新acoustic, folk, light
专业 / 商务 / 信任corporate, clean, minimal
可爱 / 儿童 / 萌playful, xylophone, cheerful

Combine multiple keywords: "科技感、温暖" → "electronic piano, warm synth, modern"

Also add "short jingle, 5-15 seconds, brand audio logo" to the style to constrain length.

Step 4: Generate Two Versions in Parallel

Always produce two versions — users almost always need both:

Version A — 带唱版 (with vocals):

SONG_A=$(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\": \"<LYRICS>\",
    \"title\": \"<品牌名> Jingle\",
    \"vocal_gender\": \"<f|m>\",
    \"style\": \"<STYLE>, short jingle, 5-15 seconds, brand audio logo\",
    \"negative_tags\": \"long intro, extended outro, complex arrangement\"
  }")
TASK_A=$(echo $SONG_A | jq -r '.task_id')

Version B — 纯音乐版 (instrumental):

SONG_B=$(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\",
    \"instrumental\": true,
    \"title\": \"<品牌名> Jingle Instrumental\",
    \"style\": \"<STYLE>, short jingle, 5-15 seconds, brand audio logo\",
    \"negative_tags\": \"vocals, long intro, extended outro\"
  }")
TASK_B=$(echo $SONG_B | jq -r '.task_id')

Poll both tasks (check every 5s, may take 30–120s):

for TASK in $TASK_A $TASK_B; do
  while true; do
    POLL=$(curl -s "https://api.senseaudio.cn/v1/song/music/pending/$TASK" \
      -H "Authorization: Bearer $SENSEAUDIO_API_KEY")
    STATUS=$(echo $POLL | jq -r '.status')
    { [ "$STATUS" = "SUCCESS" ] || [ "$STATUS" = "FAILED" ]; } && break
    sleep 5
  done
done

Step 5: TTS Brand Name Read

Generate a clean spoken version of the brand name — useful for overlaying on the instrumental:

curl -s -X POST https://api.senseaudio.cn/v1/t2a_v2 \
  -H "Authorization: Bearer $SENSEAUDIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"model\": \"SenseAudio-TTS-1.0\",
    \"text\": \"<品牌名>\",
    \"stream\": false,
    \"voice_setting\": {
      \"voice_id\": \"<VOICE_ID_MATCHING_TONE>\",
      \"speed\": 0.9
    },
    \"audio_setting\": { \"format\": \"mp3\" }
  }" -o brand_name.json

jq -r '.data.audio' brand_name.json | xxd -r -p > brand_name.mp3

Pick voice based on tone: 高端/专业 → male_0004_a; 温暖/亲切 → female_0006_a; 活力/年轻 → male_0026_b

Output

Present all three deliverables:

品牌 Jingle 生成完成:

带唱版:  <audio_url_A>  (时长:<duration>秒)
纯音乐版:<audio_url_B>  (时长:<duration>秒)
品牌名朗读:brand_name.mp3(可叠加到纯音乐版)

使用建议:
- 开机音效 / APP 启动:纯音乐版
- 广告片尾:带唱版 或 纯音乐版 + 品牌名朗读叠加
- 短视频片头:带唱版

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Aavegotchi Renderer Bypass

Render Aavegotchi assets by deriving renderer hashes from Goldsky Base core data and calling POST /api/renderer/batch on www.aavegotchi.com. Use when the use...

Registry SourceRecently Updated
General

Toutiao User Profile API

Call GET /api/toutiao/get-user-detail/v1 for Toutiao User Profile through JustOneAPI with userId.

Registry SourceRecently Updated
General

Toutiao Search API

Call 2 search versions for Toutiao App Keyword Search through JustOneAPI with keyword.

Registry SourceRecently Updated
General

Compaction UI Enhancements

Background memory compaction with auto-trigger, chat summary paragraph, configurable threshold, model selector, settings tab, and result storage for OpenClaw...

Registry SourceRecently Updated