← 返回
未分类 Key 中文

StepAce Experimental

Generate AI music on your Android phone via the StepAce Experimental app. Use this skill whenever the user asks to generate, create, make, compose, or queue...
通过 StepAce Experimental 应用在 Android 手机上生成 AI 音乐,用于响应用户的生成、创作、制作、作曲或排队请求。
ckadirt
未分类 clawhub v0.0.2 1 版本 100000 Key: 需要
★ 0
Stars
📥 281
下载
💾 0
安装
1
版本
#latest

概述

StepAce Experimental — AI Music Generation

Queue or schedule AI-generated songs directly to your Android phone through the StepAce Experimental app.


🚀 Setup (first time only)

Before using this skill, you need to connect it to your StepAce Experimental app:

  1. Open the StepAce Experimental app on your Android phone
  2. Go to Settings (bottom tab)
  3. Tap OpenClaw Bridge
  4. Tap Connect — the app generates a unique pairing token
  5. Copy the pairing token shown on screen
  6. Tell your agent:

> "Set my StepAce token to "

Your agent saves it as STEPACE_TOKEN. You only need to do this once — unless you regenerate your token in the app.


Token management

  • "Set my StepAce token to XYZ" → save as STEPACE_TOKEN
  • "Reset my token" → remind user: StepAce Experimental app → Settings → OpenClaw Bridge → Connect → paste new token
  • "What's my token?" → confirm it's set, show only first 4 + last 4 chars (e.g. T2L_**IP0)
  • If STEPACE_TOKEN is not set when the user asks to generate music → walk them through setup before proceeding

Generation types

Immediate — enqueue_generation

Queues a song to generate right now on the phone. Use this by default.

Scheduled — schedule_generation

Queues a song to generate at a specific future time. Use this when the user gives a time or date ("tonight at 2am", "schedule for tomorrow morning", etc.). Requires scheduledAt as a Unix timestamp in milliseconds.


Parameters exposed to the user

Only caption is required. All others are optional — omit them entirely from the payload if not specified (do not send null or empty values).

ParameterTypeNotes
------------------------
captionstringRequired. Describe style, mood, genre, instruments. Be descriptive.
lyricsstringSong lyrics. Ignored if instrumental: true.
instrumentalbooleantrue = no vocals. If true, do NOT send lyrics. If user provides lyrics, set false.
bpmintegerTempo, 20–300. Infer from genre if confident (e.g. techno → 132, lo-fi → 85).
durationintegerLength in seconds, 5–300. Defaults to ~30s if omitted.
keyscalestringKey and scale, e.g. "C minor", "F# major", "A dorian".
timesignaturestring"4/4" or "3/4" only.
vocal_languagestringBCP-47 tag for vocals. e.g. "en", "es", "pt", "fr", "ja", "ko". Only relevant when instrumental: false. Defaults to "en".

Instrumental logic

  • User provides lyrics → instrumental: false, include lyrics
  • User says "no vocals" / "instrumental" / "beat" → instrumental: true, omit lyrics
  • User provides neither → omit both instrumental and lyrics (let the app decide)

API call

Endpoint: POST https://openclaw-bridge.torrico-villanueva-cesar-kadir.workers.dev/openclaw/queue

Header: Content-Type: application/json

Preferred transport

Use curl from the shell as the default/preferred way to call the bridge.

Do not prefer Python urllib/generic HTTP clients when curl is available, because the bridge/CDN may treat those clients differently and reject them even when the same payload works via curl.

Immediate generation

Preferred example using curl:

source /home/deploy/.stepace-env

curl -X POST \
  'https://openclaw-bridge.torrico-villanueva-cesar-kadir.workers.dev/openclaw/queue' \
  -H 'Content-Type: application/json' \
  --data '{
    "pairingToken": "'"$STEPACE_TOKEN"'",
    "type": "enqueue_generation",
    "payload": {
      "requestJson": {
        "caption": "cinematic synthwave with huge drums",
        "instrumental": true,
        "bpm": 120,
        "duration": 30
      }
    }
  }'

Equivalent JSON payload:

{
  "pairingToken": "{STEPACE_TOKEN}",
  "type": "enqueue_generation",
  "payload": {
    "requestJson": {
      "caption": "cinematic synthwave with huge drums",
      "instrumental": true,
      "bpm": 120,
      "duration": 30
    }
  }
}

Scheduled generation

Preferred example using curl:

source /home/deploy/.stepace-env

curl -X POST \
  'https://openclaw-bridge.torrico-villanueva-cesar-kadir.workers.dev/openclaw/queue' \
  -H 'Content-Type: application/json' \
  --data '{
    "pairingToken": "'"$STEPACE_TOKEN"'",
    "type": "schedule_generation",
    "payload": {
      "requestJson": {
        "caption": "dark techno with metallic percussion",
        "instrumental": true
      },
      "scheduledAt": 1775120400000
    }
  }'

Equivalent JSON payload:

{
  "pairingToken": "{STEPACE_TOKEN}",
  "type": "schedule_generation",
  "payload": {
    "requestJson": {
      "caption": "dark techno with metallic percussion",
      "instrumental": true
    },
    "scheduledAt": 1775120400000
  }
}

scheduledAt must be a Unix timestamp in milliseconds (13 digits). Convert from the user's stated time using their local timezone if known, otherwise ask.

With lyrics

{
  "pairingToken": "{STEPACE_TOKEN}",
  "type": "enqueue_generation",
  "payload": {
    "requestJson": {
      "caption": "fast energetic electronic anthem with punchy drums",
      "lyrics": "We light the night, we never slow, hearts on fire, we steal the show.",
      "vocal_language": "en",
      "instrumental": false,
      "duration": 30,
      "bpm": 160
    }
  }
}

Success response

{
  "jobRef": "ref_abc123...",
  "status": "queued",
  "type": "enqueue_generation"
}

Reply to the user with a message like:

🎵 Song queued on StepAce Experimental!
Caption: <caption>
📅 Scheduled for: <human-readable time>   ← only if scheduled
Settings: 160 BPM · C minor · 4/4 · 30s  ← only mention fields that were set
Job ref: ref_abc123...

Your phone will notify you when it's done 🎶

Error handling

ErrorWhat to do
------------------
Missing / invalid pairingTokenToken may have expired. Ask user: StepAce Experimental app → Settings → OpenClaw Bridge → Connect to regenerate, then update the token.
Missing captionAsk the user to describe the music they want.
Missing scheduledAt for schedule_generationAsk the user for a specific date/time.
Network errorTell the user the bridge couldn't be reached. Ask them to check their phone is online and the app has been opened at least once.

Natural language examples

  • "Make me a dark synth-wave track at 130 BPM"enqueue_generation, instrumental: true, bpm: 130
  • "Generate a cumbia song with these lyrics: [...]"enqueue_generation, instrumental: false, vocal_language: "es"
  • "Queue a lo-fi beat, 85 BPM, 60 seconds"enqueue_generation, instrumental: true, bpm: 85, duration: 60
  • "Schedule a techno track for 2am tonight"schedule_generation, resolve scheduledAt from current time + user's timezone
  • "Make a waltz in A minor"timesignature: "3/4", keyscale: "A minor"
  • "Something chill in Spanish"vocal_language: "es", infer a relaxed caption
  • "Song about the ocean, no lyrics, key of D minor, 45 seconds"instrumental: true, keyscale: "D minor", duration: 45

版本历史

共 1 个版本

  • v0.0.2 当前
    2026-05-07 18:00 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,362 📥 318,703
ai-intelligence

ontology

oswalpalash
类型化知识图谱,用于结构化智能体记忆与可组合技能。支持创建/查询实体(人员、项目、任务、事件、文档)及关联...
★ 714 📥 243,984
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 670 📥 324,316