Loading...
Loading...
Use ACE-Step API to generate music, edit songs, and remix music. Supports text-to-music, lyrics generation, audio continuation, and audio repainting. Use this skill when users mention generating music, creating songs, music production, remix, or audio continuation.
npx skill4agent add ace-step/ace-step-1.5 acestepscripts/acestep.sh# 1. cd to this skill's directory
cd {project_root}/{.claude or .codex}/skills/acestep/
# 2. Check API service health
./scripts/acestep.sh health
# 3. Generate with lyrics (recommended)
./scripts/acestep.sh generate -c "pop, female vocal, piano" -l "[Verse] Your lyrics here..." --duration 120 --language zh
# 4. Output saved to: {project_root}/acestep_output/-c-l-drandom-l# need to cd to this skill's directory first
cd {project_root}/{.claude or .codex}/skills/acestep/
# Caption mode - RECOMMENDED: Write lyrics first, then generate
./scripts/acestep.sh generate -c "Electronic pop, energetic synths" -l "[Verse] Your complete lyrics
[Chorus] Full chorus here..." --duration 120 --bpm 128
# Instrumental only
./scripts/acestep.sh generate "Jazz with saxophone"
# Quick exploration (Simple/Random mode)
./scripts/acestep.sh generate -d "A cheerful song about spring"
./scripts/acestep.sh random
# Options
./scripts/acestep.sh generate "Rock" --duration 60 --batch 2
./scripts/acestep.sh generate "EDM" --no-thinking # Faster
# Other commands
./scripts/acestep.sh status <job_id>
./scripts/acestep.sh health
./scripts/acestep.sh modelsacestep_output.claudeproject_root/
├── .claude/
│ └── skills/acestep/...
├── acestep_output/ # Output directory
│ ├── <job_id>.json # Complete task result (JSON)
│ ├── <job_id>_1.mp3 # First audio file
│ ├── <job_id>_2.mp3 # Second audio file (if batch_size > 1)
│ └── ...
└── ...use_format=true| Field | Description |
|---|---|
| Actual caption used for synthesis (may be LM-enhanced) |
| Actual lyrics used for synthesis (may be LM-enhanced) |
| Original input caption |
| Original input lyrics |
| BPM used |
| Key scale used |
| Duration in seconds |
| Detailed timing and model info |
| Seeds used (for reproducibility) |
| LM model name |
| DiT model name |
lyricsmetas.lyricsconfig --setscripts/config.json{
"api_url": "http://127.0.0.1:8001",
"api_key": "",
"api_mode": "completion",
"generation": {
"thinking": true,
"use_format": false,
"use_cot_caption": true,
"use_cot_language": false,
"batch_size": 1,
"audio_format": "mp3",
"vocal_language": "en"
}
}| Option | Default | Description |
|---|---|---|
| | API server address |
| | API authentication key (optional) |
| | API mode: |
| | Enable 5Hz LM (higher quality, slower) |
| | Output format (mp3/wav/flac) |
| | Vocal language |
scripts/acestep.sh# Check dependencies
curl --version
jq --versionchoco install jqbrew install jqsudo apt-get install jqsudo dnf install jqcd "{project_root}/{.claude or .codex}/skills/acestep/" && bash ./scripts/acestep.sh config --check-key
cd "{project_root}/{.claude or .codex}/skills/acestep/" && bash ./scripts/acestep.sh config --get api_urlhttps://api.acemusic.aiapi_urlhttps://api.acemusic.aiapi_keyemptyAskUserQuestioncd "{project_root}/{.claude or .codex}/skills/acestep/" && bash ./scripts/acestep.sh config --set api_key <KEY>acestep-lyrics-transcription./scripts/acestep.sh healthhttp://127.0.0.1:*./scripts/acestep.sh healthhttps://api.acemusic.ai./scripts/acestep.sh config --set api_url "https://api.acemusic.ai"
./scripts/acestep.sh config --set api_key "your-key"
./scripts/acestep.sh config --set api_mode completionhttp://127.0.0.1:8001scripts/config.json./scripts/acestep.sh config --set api_url "http://remote-server:8001"
./scripts/acestep.sh config --set api_key "your-key"config --check-keyconfiguredemptyconfig --get api_keyconfig.jsonconfig --list***api_modescripts/config.json| Mode | Endpoint | Description |
|---|---|---|
| | OpenRouter-compatible, sync request, audio returned as base64 |
| | Async polling mode, supports all parameters |
./scripts/acestep.sh config --set api_mode completion
./scripts/acestep.sh config --set api_mode nativeinference_stepsinfer_methodshift--no-waitstatusmodel/v1/models