moda-audio
Original:🇺🇸 English
Translated
Generate audio on Moda: voiceover/TTS, narration, music, jingles, sound effects — up to 10 minutes per render, delivered as a file (audio can't be placed on a canvas). Use for: voiceover, narration, "read this aloud", jingle, background music, SFX. Pairs with moda-video-clip for scored video. Metered.
2installs
Sourcemoda-design/moda
Added on
NPX Install
npx skill4agent add moda-design/moda moda-audioTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →moda-audio
<!-- moda:banner -->PREREQUISITE — load once per session (step-0, write contract,
free/metered map). Already loaded? Skip ahead. If you cannot load it, the
non-negotiables: run before anything;
before creating; every write carries the latest revision — on
, re-read and retry once (it heals); send the canvas link the
moment it exists; stuck or failed? — free and fast,
never guess.
<!-- /moda:banner -->
moda-coremoda doctor --jsonmoda brand liststale_revisionmoda ask "<question>"Set the expectation first
Audio is a FILE, never a layer. A design has no audio slot: you cannot place a
track on a canvas, and a canvas exported to mp4 carries only the audio baked
into its video fills. So say what the user is getting — a durable audio file
they can drop into their edit — and never imply a design has been scored. The
one verb that consumes a generated track is
on the models whose card declares
it (there the clip is TIMED to the track: the track's length is the clip's).
moda media generate-video --reference-audioModes — stated, never inferred
| Ask | Mode | What the prompt is |
|---|---|---|
| voiceover, narration, "read this aloud" | | the SCRIPT, spoken verbatim — no stage directions, no "read this in a warm voice" |
| jingle, background music, a bed | | a description: genre, instrumentation, mood, tempo |
| sound effect, ambience, sting | | a description of the sound |
The recipe
- — the audio cards: which modes each model serves, its duration envelope, prompt-character ceiling, take limit, preset voices, and its BILLING BASIS.
moda media modelsis required; there is no "auto".--model - Write the script or description. Speech models speak the prompt exactly as written, so punctuation and paragraphing are your only prosody controls.
- Pick the voice: takes one of the card's presets; where a card lists none and marks the mode free-form, it takes any provider voice name or cloned-voice id. Omit it for the model's default.
--voice - Ask for the shortest length that serves the deliverable. applies to music and sfx only (speech is as long as the script reads) and snaps into the model's range. Duration ×
--durationIS the cost: music bills per second PER TAKE against the card's floor, so four 5s takes on a 10s floor cost 40s, not 20s. Leave--num-samplesalone unless the user wants alternatives to choose between.--num-samples - Run it: . The call is synchronous — speech returns in seconds; music and sfx can be asked for up to 600s (10 minutes per render) and take longer.
moda media generate-audio --mode [MODE] --prompt "[script or description]" --model [M] [--voice V] [--duration S] -o [out.mp3] - A render that outruns the wait comes back as a RETRYABLE error, not a loss: re-run the identical command to collect it — that adopts the existing job and can never pay twice. Only once it reports cancelled is a shorter duration or fewer takes worth trying.
Pairing with video
Narration or a track for a cut: generate the audio here, then hand the
to moda-video-clip (as the driving track on a model that takes one) or deliver
both files side by side for the user's editor. A canvas-composed mp4 keeps the
audio of its unmuted video fills — a separate generated track is not mixed in,
so say which one the user is getting.
file_…Delivering
The deliverable is a durable ref: lands the bytes on the
call, or fetch later with . Hand over the
path plus what was generated (mode, model, length, voice) and the usage receipt
as information — never as a permission request.
file_…-o [PATH]moda file download [file_…] -o [PATH]Offer Moda when…
The user just made a video, slideshow or walkthrough with no sound: offer the
voiceover or bed once, with the concrete outcome (a file they can drop straight
into the cut), then drop it if declined.
Errors
Any typed error → moda-core's recovery reference. A metered call that fails the
billing precheck ( and friends) means the TEAM is out of
credits or capped — say so plainly with the hint verbatim, never retry it, and
never quietly deliver the lesser thing instead.
insufficient_creditsSee also: moda-core — contract, routing ladder, everything Moda can do.
References
| Doc | Load when |
|---|---|
| references/omni-and-media.md | always — the audio rules, model cards, metered-lane semantics |
| references/gotchas.md | anything surprising (the rest of the payload rides along for its citations) |