Skip to content
Skill Authoring
Skill

/venice-create-audio

End-to-end audio creation workflow with Venice. Use when a user wants finished audio - "write and produce a jingle", "make a 30 second lo-fi loop", "add a voiceover", "I need a whoosh sound effect". Covers choosing between a song with lyrics, an instrumental, a sound effect, a

From plugin
venice
17028 skills

Claude Code

$ npx -y skills add veniceai/skills --skill venice-create-audio --agent claude-code

SKILL.md

venice-create-audio.SKILL.md
name: venice-create-audio
description: End-to-end audio creation workflow with Venice. Use when a user wants finished audio - "write and produce a jingle", "make a 30 second lo-fi loop", "add a voiceover", "I need a whoosh sound effect". Covers choosing between a song with lyrics, an instrumental, a sound effect, a seamless loop and spoken narration, reading each music model's lyrics, duration and loop support from the live catalog, quoting before queuing, polling, cleanup, picking a TTS voice, and saving files. Uses the Venice MCP tools (venice_audio_quote, venice_music_generate, venice_music_status, venice_tts, venice_voice_clone, venice_list_models, venice_model_details) when available, or /audio/quote, /audio/queue, /audio/retrieve and /audio/speech otherwise.

Create audio with Venice

A workflow for music, sound effects and voiceover. Music and sound effects are asynchronous jobs that are quoted, queued and polled. Speech is a single synchronous call. Every field is documented in [`venice-audio-music`](../venice-audio-music/SKILL.md) and [`venice-audio-speech`](../venice-audio-speech/SKILL.md).

| Step | Venice MCP tool | REST endpoint | |---|---|---| | Find music models and their features | `venice_list_models` (`type: "music"`), `venice_model_details` | `GET /api/v1/models?type=music` | | Price a music job | `venice_audio_quote` | `POST /api/v1/audio/quote` | | Queue music or a sound effect | `venice_music_generate` | `POST /api/v1/audio/queue` | | Poll, then collect the audio | `venice_music_status` | `POST /api/v1/audio/retrieve` | | List voices | `venice_voice_clone` (`action: "list"`) | `GET /api/v1/models?type=tts` | | Speak text | `venice_tts` | `POST /api/v1/audio/speech` |

Use when

  • The user wants a song, an instrumental bed, a loop or a sound effect produced.
  • A video, ad or explainer needs narration or a soundtrack.
  • You need to price an audio job before committing to it.

Pick the right kind of audio

| The user wants | Use | Model feature to check | |---|---|---| | A song with sung lyrics | `venice_music_generate` with `lyrics_prompt`, or `lyrics_optimizer: true` to write lyrics from the prompt | `supports_lyrics`, `supports_lyrics_optimizer`, lyrics character limit | | Background music, no vocals | `venice_music_generate` with `force_instrumental: true` | `supports_force_instrumental` | | A sound effect | `venice_music_generate` on a sound-effects model | model type and duration options | | A seamless loop | `venice_music_generate` with `loop: true` | `supports_loop` | | Spoken narration | `venice_tts` | voices for the TTS model |

Workflow: music and sound effects

1. Pin down the brief

Ask for genre or mood, tempo or energy, length, whether it needs vocals, and where it will be used. For a song, agree on the lyrics (or let the model write them) before spending anything.

2. Pick a model

Call `venice_list_models` with `type: "music"`, then `venice_model_details` for the candidate with `type: "music"`. Check the features in the table above plus the duration rules: some models take `duration_seconds` within a range or from a fixed list, and some take no duration at all. Sending a field the model does not support is a `400`.

3. Quote and confirm

Call `venice_audio_quote` with `model`, plus `duration_seconds` for models that take a duration, or `character_count` for models priced per thousand characters. It is free. Tell the user the price and get a yes.

4. Queue

Call `venice_music_generate` with `model` and `prompt`, plus whichever of `duration_seconds`, `lyrics_prompt`, `lyrics_optimizer`, `force_instrumental` or `loop` the model supports. Keep the returned `queue_id` together with the `model`.

Use `lyrics_prompt` and `force_instrumental`. The older `lyrics` and `instrumental` names are deprecated.

5. Poll, collect, clean up

Call `venice_music_status` with `queue_id`, `model` and `delete_media_on_completion: true`. While it says `PROCESSING`, it reports `average_execution_time` and `execution_duration` in milliseconds; poll every 2-5 seconds. When it completes, the result is the audio, embedded or as a `download_url` link.

  • `delete_media_on_completion` is safe on every poll: Venice deletes its stored copy only once the audio has been returned. The MCP tool ignores it for a `download_url` result, so download that file first, then call `venice_music_complete`.
  • A failed job is refunded and returns its error here. Stop polling it; only a `429` or `503` is worth retrying after a backoff.

Workflow: voiceover

1. Write the script. Short sentences read better; keep each call to a paragraph or two. 2. Call `venice_voice_clone` with `action: "list"` to see the voices each TTS model offers. Pick the model and a voice that suits the brief. 3. Call `venice_tts` with `input`, `model` and `voice`. Optional: `speed`, `response_format` (`mp3`, `wav`, `opus`, `aac`, `flac`, `pcm`). Some models understand inline tags such as `[whispers]`; check the model's documentation before relying on them. 4. To speak in a specific voice, clone it first with `venice_voice_clone` (`action: "create"`, `sample_url` pointing at a public audio file), then pass the returned `vv_...` handle as `voice` with the same `model`. Only clone a voice with its owner's permission.

Save files

The MCP tools return audio inline. To save files, call the REST endpoints from a shell with the user's key in `VENICE_API_KEY`:

# Narration: the response body is the audio file
code=$(curl -sS https://api.venice.ai/api/v1/audio/speech \
  -H "Authorization: Bearer $VENICE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"tts-kokoro","voice":"af_sky","input":"Welcome to the launch."}' \
  --output voiceover.mp3 -w '%{http_code}')
[ "$code" = 200 ] || { echo "speech failed ($code):"; cat voiceover.mp3; rm -f voiceover.mp3; }

# Music: only a 200 with an audio/ content type is the finished track
result=$(curl -sS https://api.venice.ai/api/v1
Read more
@veniceai
Ships withvenice

Agent Skills for the Venice API. Skills are self-contained folders of instructions (one SKILL.md each) that an LLM agent loads on demand to work correctly against a specific surface area of the API.

Stars on GitHub

Momentum

stars in total
170
Star history of veniceai/skills on GitHub, a chart by star-history.com

Other skills on venice.

venice-api-keys

venice-api-keys

Manage Venice API keys. Covers GET/POST/PATCH/DELETE /api_keys, GET /api_keys/{id}, GET /api_keys/rate_limits, GET…

@veniceai@veniceaiInstall Skill
venice-api-overview

venice-api-overview

High-level map of the Venice AI API - base URL, which auth mode each endpoint accepts (API key, x402 wallet, or none), endpoint…

@veniceai@veniceaiInstall Skill
venice-audio-music

venice-audio-music

Async music, sound-effect and long-form voice generation via Venice. Covers the /audio/quote + /audio/queue + /audio/retrieve +…

@veniceai@veniceaiInstall Skill
venice-audio-speech

venice-audio-speech

Generate speech from text via POST /audio/speech, and clone a voice via POST /audio/voices. Covers TTS models (Kokoro, Qwen 3,…

@veniceai@veniceaiInstall Skill
venice-audio-transcription

venice-audio-transcrip…

Transcribe audio files to text via POST /audio/transcriptions. Covers supported models (Parakeet, Whisper, Wizper, Scribe, xAI…

@veniceai@veniceaiInstall Skill
venice-audio-voice-changer

venice-audio-voice-cha…

Async speech-to-speech voice conversion via Venice — re-record a source recording in a different voice while keeping delivery and…

@veniceai@veniceaiInstall Skill

More skills from other plugins.

gstack-openclaw-ceo-review

gstack-openclaw-ceo-re…

Use when asked to review a plan, challenge a proposal, run a CEO review, poke holes in an approach, think bigger about scope, or…

gstack2w138k
@garrytan@garrytanInstall Skill
book-to-skill

book-to-skill

Converts books and documents (PDF, EPUB, DOCX, HTML, Markdown, plain text, RTF, MOBI/AZW with Calibre) into structured agent…

@virgiliojr94@virgiliojr94Install Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

@titanwings@titanwingsInstall Skill

Questions about venice-create-audio.

Which coding agents can use venice-create-audio?
venice-create-audio installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.