# Beatoven

Beatoven.ai royalty-free music generation: compose tracks, poll tasks, download audio...

- Repository: https://github.com/Anil-matcha/awesome-muse-connectors (1403 stars)
- Category: Media
- License: MIT
- Last updated: 2026-10-13
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add Anil-matcha/awesome-muse-connectors --skill beatoven -g -a claude-code -y`
Codex: `npx skills add Anil-matcha/awesome-muse-connectors --skill beatoven -g -a codex -y`
Cursor: `npx skills add Anil-matcha/awesome-muse-connectors --skill beatoven -g -a cursor -y`
Gemini CLI: `npx skills add Anil-matcha/awesome-muse-connectors --skill beatoven -g -a gemini-cli -y`

## Description

Beatoven.ai royalty-free music generation: compose tracks, poll tasks, download audio, fetch individual stems. Trigger phrases: beatoven, compose music, generate a track, royalty free music, background music.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Beatoven.ai

## Purpose
Compose royalty-free music with Beatoven's public composition API: text-to-music (also audio-to-music and video-to-music prompts), task polling, track download, and individual stems (bass, chords, melody, percussion), plus SFX via the maestro model. Beatoven is Fairly Trained certified (licensed training data), so output is commercially safe, and it is the only verified self-serve music API in the catalog (Suno and Udio have no public APIs). Also available on the fal.ai marketplace.

## Tooling
All commands go through `bin/beatoven.py`:

```bash
bin/beatoven.py auth                                                      # verify credential setup (no spend)
bin/beatoven.py compose --prompt "30 seconds peaceful lo-fi chill hop track" --format wav
bin/beatoven.py compose --prompt "upbeat podcast intro" --format mp3 --looping
bin/beatoven.py status --task-id <task_id>                                # poll until composed
bin/beatoven.py download --task-id <task_id> --out track.wav              # download the composed track
bin/beatoven.py download --url https://.../track.wav --out track.wav      # download from a track URL directly
bin/beatoven.py stems --task-id <task_id>                                 # list the four stem URLs
bin/beatoven.py stems --task-id <task_id> --stem bass --out bass.wav      # download one stem
```

`compose` starts an async task and prints a `task_id`. Poll `status` with backoff; when status is `composed`, the response carries `track_url` and `stems_url` (bass, chords, melody, percussion). Endpoint paths are from Beatoven's published api-spec.md.

The rest: https://github.com/Anil-matcha/awesome-muse-connectors/blob/HEAD/connectors/beatoven/SKILL.md
