vetta media generate renders: an image comes back at once as files; a video is a media job you read back with vetta media show. A recurring on-screen persona is a character, trained once and rendered as with --character. vetta media models is how you learn a legal --model, for generate or to pin with vetta agent tools.
vetta media edit submits a Mira edit (POST /v1/media/edits) and vetta media edit with --wait follows GET /v1/media/edits/{id}. vetta media clip <url> turns a long video into short, scored, captioned clips as a job you poll with vetta media clip show. vetta media models is how you learn a legal --model to pin with vetta agent tools, and what a session’s generate_image / generate_video will accept. vetta media stock searches the stock photo library for a licensed photo, free. vetta media transcribe, vetta media speak, vetta media sound-effect, vetta media music and vetta media converse are the audio routes from the terminal.
There is no fixed list of models. The catalogue is read from the provider on every call, so a model published today is callable today — and a model that never existed can never be offered.
Commands
generate
queued; vetta media show it until it is completed, then vetta file download the result.files[0].file_id. Or add --wait and the command polls for you, printing the finished job and exiting 0 on completed, 1 on failed:
The CLI sends the required
Idempotency-Key for you; re-running the same command renders again.
mesh
A textured GLB from a description or from one to four photos of the same object — a media job like a video. From a description it can also be rigged with an idle animation. For a part with real dimensions, build it instead:vetta computer build-3d.
Each job is priced for the exact options it used, and only when it completes; a failed job is free. See 3D assets.
show
error: { code, message } and cost_micro_usd: 0 — a job that fails is not billed.
list
models
Models come back in the order
generate and generate_image pick their default from: the platform’s own first, then cheapest-first where a price is published. A video defaults to the first of the platform’s video defaults the catalogue publishes — black-forest-labs/flux-3-max, minimax/hailuo-3, bytedance/seedance-2.5, then alibaba/wan-3.0/text-to-video; if the catalogue publishes none of them, you are asked to name one.
No price is on the reply. A generation is billed what it cost once it finishes — nothing is held or checked beforehand, from the CLI, the API or a session; the debit lands once, when the render does. Training a character is the exception: the balance must cover it first.
--kind stt, --kind tts and --kind s2s list the audio models the same way: the managed alias for that direction first, then pinned models cheapest-first where a price is published.
stock
Show
photographer, linked to attribution_url, wherever you use the photo — that credit is what the licence asks for. To keep the bytes as a fil_, import url through vetta file. A deploy with no stock photo library configured answers feature_not_configured.
clip
The URL must be public
http(s); a private or loopback host is refused. The job is billed what it actually cost once it finishes, and a submit is refused when the organization’s balance is empty.
clip show
status is completed, result.clips lists each clip’s file_id, title, start_seconds, end_seconds, duration_seconds and virality scores (0–100), and cost_micro_usd is settled. Fetch a clip’s bytes with vetta file.
clips
Only jobs submitted with
vetta media clip or the API are listed; what an agent’s clip_video tool cuts inside a session lands in that session as files.
skills
build takes one to three public reel links and queues a skill build; every round that comes back ready is saved as the next version of one org skill. revise runs the next round from your feedback. get reads a build and moves it forward; list does not. With --wait, the command follows the newest round until it is ready and prints the build with skill_ref (slug@version), or exits 1 when the round fails.
transcribe
http(s) URL or a fil_ id is sent as-is. Prints the transcription job — usually already completed with result.text and result.segments; a long recording the provider queues prints processing, to be re-read with vetta media transcription.
transcription
speak
model, cost_micro_usd, and the stored file. The bytes are one vetta file download away:
edit
POST /v1/media/edits. --video is a library video or a public URL. --reference repeats, up to four pictures. --mode is scene, outfit_or_object or person_swap. --wait polls GET /v1/media/edits/{id} until the edit finishes.
sound-effect
file, its duration_seconds and cost_micro_usd. Add --loop for seamless ambience. The bytes are one vetta file download away:
music
file, its duration_seconds and cost_micro_usd. Add --instrumental for a track with no vocals. The bytes are one vetta file download away:
converse
fil_ only; a fil_ id is sent as-is. Prints the same speech generation speak does:
Pinning a model on an agent
vetta agent tools: