agentsclimarketplace

Openrouter text2music

Skill QinghongLin/data2story-skill/skills/data2story/designer/scripts/openrouter-text2music

Data Journalist Agent: Transforming Data into Verifiable Multimodal Story

Install
npx -y skills add QinghongLin/data2story-skill --skill openrouter-text2music

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Generate music (NOT speech) via OpenRouter using Google Lyria 3 Pro.

SKILL.md

1.6 KB, as published. Nobody here has run it

openrouter-text2music

Text → music via OpenRouter. Default model: google/lyria-3-pro-preview.

⚠️ This is a music-generation model, not TTS. It produces 48kHz stereo audio with instrumentation, and can include vocals and timed lyrics based on the prompt. For narration/voiceover, use a dedicated TTS tool (e.g., OpenAI tts-1, ElevenLabs).

Usage

Resolve TOOL_DIR = the directory containing this SKILL.md. Commands below use TOOL_DIR as a symbolic placeholder; replace it with the resolved, quoted path before running Bash.

export OPENROUTER_API_KEY=sk-or-v1-...

python3 TOOL_DIR/scripts/generate_music.py \
  --prompt "Driving synthwave, 120 BPM, nostalgic lead over a pulsing arpeggio, no vocals" \
  --download PROJECT_DIR/assets/bg_music.wav

Flags

FlagDefaultDescription
--promptrequiredText prompt (genre, mood, instruments, tempo, optional lyrics)
--downloadrequiredOutput audio file path
--modelgoogle/lyria-3-pro-previewAlt: google/lyria-3-clip-preview (shorter clips)

Pricing

  • lyria-3-pro-preview: $0.08 per song

Notes

  • Request uses POST /api/v1/chat/completions with modalities: ["audio","text"].
  • Response parsing handles several shapes: message.audio, a content part with type=audio, or a data:audio/... URL embedded in the text content.
  • Output format is typically WAV (48kHz stereo); the script saves whatever bytes the API returns — choose the extension to match.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.