Overview
Lyrics-driven full song generation (including vocals, complete structure of verses/bridge/chorus), multi-style creation (pop/classical/electronic/rock, etc.). Also supports strong-rhythm / full-arrangement instrumental music, with arrangement capability superior to general-purpose instrumental music tools.
API Mapping
- Song and strong-rhythm instrumental music generation:
audio_cashew_songgenerate
Dependencies
- meitu-cli:
>=2.0.6 - Credentials:CONFIG AKSK →
meitu tools update; EXEC AKSK → actual execution (see rootCONFIG.md) - Environment variables:
MEITU_OPENAPI_TOOL_TASK_MODE=command
Path alias:
$VISUAL={OPENCLAW_HOME}/workspace/visual/
Core Workflow
Preflight → Execute → Deliver
Preflight
meitu --version≥ 2.0.6- Already ran with CONFIG AKSK
meitu tools update - Current AKSK = EXEC,
MEITU_OPENAPI_TOOL_TASK_MODE=command - output_dir:openclaw.yaml →
./output/|else →$VISUAL/output/audio-song-generate/;mkdir -p
Execute
Trigger signals / routing rules
Core dimensions:Vocal/arrangement scenario hit + complete parameters。
| Scenario | Determination keywords | Routing |
|---|---|---|
| Full song with vocals | write a song, with vocals, with lyrics, sing a song, brand song | audio_cashew_songgenerate |
| Strong-rhythm / fully arranged instrumental music | strong rhythm, strong variation, reversed melody, full arrangement feel | audio_cashew_songgenerate |
Single API tool: call when parameters are complete, retry once on failure then return error; no cross-tool fallback. When style and lyrics conflict, prompt(style) prevails.
Parameter definitions
| Parameter | Type | Required | Range | Default | Description |
|---|---|---|---|---|---|
prompt |
STRING | Yes | -- | -- | Song style description. If missing → prompt "please describe the song style you want" |
prompt_lyrics |
STRING | Yes | -- | -- | Lyrics content. If missing → prompt "please provide lyrics content" (for strong-rhythm instrumental music scenarios, can be filled with an empty string or stylistic description) |
model |
STRING | No | auto / mureka-6 / mureka-7.5 / mureka-o1 | auto | Generation model selection, illegal values fall back to auto |
audio_cashew_songgenerate Use prompt + prompt_lyrics + model. Vocal quality is affected by multilingual pronunciation.
Tool invocation
meitu audio-song-generate --prompt "<style>" --prompt_lyrics "<lyrics>" [--model auto] --json --download-dir {output_dir} --skill_name skill_audio-song-generate
Error degradation
| Scenario | Handling method |
|---|---|
prompt missing |
Prompt "please describe the song style you want", do not call API |
prompt_lyrics missing (vocal scenario) |
Prompt "please provide lyrics content", do not call API |
model specified a nonexistent value |
Fall back to auto |
audio_cashew_songgenerate invocation failed |
Retry once, if still failing return error |
prompt and prompt_lyrics style conflict |
Use prompt as the standard, inform the user that the lyrics will be arranged in the specified style |
| User only wants lyrics, not melody | Refuse, not within the scope of this tool |
| Content compliance interception | Directly return compliance prompt, do not retry |
Deliver
- Use output_dir resolved by Preflight
- From
downloaded_files[0].saved_pathread the downloaded audio file path mv {downloaded_files[0].saved_path} {output_dir}/{YYYY-MM-DD}_{descriptive}_audio-song-generate.mp3
Output
- Format:MP3
- Location: project →
./output/, one-time →$VISUAL/output/audio-song-generate/
Baseline Task ID
See references/task-id-baseline.md corresponding row.