Agent Skills

text-to-speech

Convert text to natural speech with Inworld TTS, ElevenLabs, DIA TTS, Kokoro, Chatterbox, and more via inference.sh CLI. Models: Inworld TTS-2 (100+ languages, emotion steering), Inworld TTS 1.5 (ultra-low latency), ElevenLabs (premium, 22+ voices, 32 languages), DIA TTS (conversational), Kokoro TTS, Chatterbox, Higgs Audio, VibeVoice (podcasts). Capabilities: text-to-speech, voice cloning, multi-speaker dialogue, podcast generation, expressive speech, emotion/delivery steering, character voices

Install

npx skills add https://github.com/inference-sh/skills --skill text-to-speech
SKILL.md

Install the belt CLI skill: npx skills add belt-sh/cli

Text-to-Speech

Convert text to natural speech via inference.sh CLI.

Text-to-Speech

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Generate speech
belt app run falai/kokoro-tts --input '{"prompt": "Hello, welcome to our product demo."}'

Available Models

Model App ID Best For
Inworld TTS-2 inworld/text-to-speech-2 100+ languages, emotion steering with [brackets], delivery modes
Inworld TTS 1.5 Max inworld/text-to-speech-1-5-max Low latency (<200ms), 15 languages
Inworld TTS 1.5 Mini inworld/text-to-speech-1-5-mini Ultra-low latency (~120ms), 15 languages
ElevenLabs TTS elevenlabs/tts Premium quality, 22+ voices, 32 languages
DIA TTS infsh/dia-tts Conversational, expressive
Kokoro TTS falai/kokoro-tts Fast, natural
Chatterbox infsh/chatterbox General purpose
Higgs Audio infsh/higgs-audio Emotional control
VibeVoice infsh/vibevoice Podcasts, long-form

Browse All Audio Apps

belt app list --category audio

Examples

Basic Text-to-Speech

belt app run falai/kokoro-tts --input '{"prompt": "Welcome to our tutorial."}'

Inworld TTS-2 — Emotion Steering

Inworld TTS-2 supports natural-language steering with [brackets] — control emotion, volume, speed, and non-verbals inline with text:

belt app run inworld/text-to-speech-2 --input '{
  "text": "I have some [exciting] news to share with you! [pause] We just hit one million users. [laugh]",
  "voice_id": "Sarah",
  "delivery_mode": "CREATIVE"
}'

Delivery modes: STABLE (consistent), BALANCED (natural, default), CREATIVE (expressive).

Built-in voices (271+ across 15 languages): Sarah, Alex, Ashley, Dennis, Hana, Blake, Luna, Clive, and many more. Browse all voices in the Inworld TTS Playground or list programmatically via GET https://api.inworld.ai/voices/v1/voices.

Inworld TTS 1.5 — Low Latency

For real-time applications where speed matters:

# Max quality at low latency (<200ms)
belt app run inworld/text-to-speech-1-5-max --input '{
  "text": "Welcome back! How can I help you today?",
  "voice_id": "Ashley"
}'

# Ultra-low latency (~120ms) for conversational AI
belt app run inworld/text-to-speech-1-5-mini --input '{
  "text": "Sure, let me look that up for you.",
  "voice_id": "Dennis"
}'

Conversational TTS with DIA

belt app sample infsh/dia-tts --save input.json

# Edit input.json:
# {
#   "text": "Hey! How are you doing today? I'm really excited to share this with you.",
#   "voice": "conversational"
# }

belt app run infsh/dia-tts --input input.json

Long-form Audio (Podcasts)

belt app sample infsh/vibevoice --save input.json

# Edit input.json with your podcast script
belt app run infsh/vibevoice --input input.json

Expressive Speech with Higgs

belt app sample infsh/higgs-audio --save input.json

# {
#   "text": "This is absolutely incredible!",
#   "emotion": "excited"
# }

belt app run infsh/higgs-audio --input input.json

Use Cases

  • Voiceovers: Product demos, explainer videos
  • Audiobooks: Convert text to spoken word
  • Podcasts: Generate podcast episodes
  • Accessibility: Make content accessible
  • IVR: Phone system voice prompts
  • Video Narration: Add narration to videos
  • Gaming / NPCs: Character voices with emotion steering (Inworld TTS-2)
  • Conversational AI: Ultra-low latency responses (Inworld TTS 1.5 Mini)
  • Avatar / UGC Videos: Generate speech for talking head avatars

Combine with Video

The easiest way to create a talking head video is P-Video-Avatar with built-in TTS — no separate audio step:

belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "Your script here",
  "voice": "Zephyr (Female)"
}'

For models without built-in TTS (OmniHuman, PixVerse), generate speech first:

# 1. Generate speech with Inworld TTS-2 (emotion steering)
belt app run inworld/text-to-speech-2 --input '{
  "text": "[friendly] Your script here. [excited] This is the best part!",
  "voice_id": "Sarah",
  "delivery_mode": "CREATIVE"
}' > speech.json

# 2. Use the audio URL with OmniHuman for avatar video
belt app run bytedance/omnihuman-1-5 --input '{
  "image": "https://portrait.jpg",
  "audio": "<audio-url-from-step-1>"
}'

Related Skills

# ElevenLabs TTS (premium, 22+ voices)
npx skills add inference-sh/skills@elevenlabs-tts

# ElevenLabs dialogue (multi-speaker)
npx skills add inference-sh/skills@elevenlabs-dialogue

# Full platform skill (all apps)
npx skills add inference-sh/skills@infsh-cli

# AI avatars (combine TTS with talking heads)
npx skills add inference-sh/skills@ai-avatar-video

# AI music generation
npx skills add inference-sh/skills@ai-music-generation

# Speech-to-text (transcription)
npx skills add inference-sh/skills@speech-to-text

# Video generation
npx skills add inference-sh/skills@ai-video-generation

Browse all apps: belt app list

Documentation

Related skills

video-editgenmedia-labs715KEdit existing video on RunComfy — this skill is a smart router that matches the user's intent to the right edit model in the RunComfy catalog. Picks Wan 2.7 Edit-Video (general restyle / background swap / packaging swap, identity + motion preservation), Kling 2.6 Pro Motion Control (transfer precise motion from a reference video to a target character), or Lucy Edit Restyle (lightweight identity-stable restyle / outfit swap). Bundles each model's documented prompting patterns so the skill gets shai-video-generationgenmedia-labs714KGenerate AI videos on RunComfy via the `runcomfy` CLI — a smart router across the full video-model catalog: HappyHorse 1.0 (Arena #1, native in-pass audio), Wan-AI Wan 2-7 (open weights, audio-driven lip-sync), ByteDance Seedance v2 / 1-5 / 1-0 (multi-modal cinematic), Kling 3.0 / 2-6, Google Veo 3-1, MiniMax Hailuo 2-3, ByteDance Dreamina 3-0. Covers text-to-video (t2v), image-to-video (i2v), and Veo's video-extend endpoint. The skill picks the right model for the user's intent (Arena-#1 qualitai-musicgenmedia-labs714KGenerate AI music on RunComfy via the `runcomfy` CLI — a smart router across the music-model catalog. Routes to ElevenLabs AI Music Generation (premium 44.1 kHz stereo vocal tracks, 5 s–5 min, $0.0083/s) and ACE Step / ACE Step 1.5 (StepFun-AI open-weights, tag-driven composition, multilingual lyrics, $0.0002–0.0003/s, ~27× cheaper), plus ACE Step audio-inpaint (regenerate a time range inside an existing track) and ACE Step audio-outpaint (extend a track before or after). Picks the right model fimage-to-videogenmedia-labs713KAnimate any still image on RunComfy — this skill is a smart router that matches the user's intent to the right i2v model in the RunComfy catalog. Picks HappyHorse 1.0 I2V (Arena #1, native audio, identity preservation) for general animations, Wan 2.7 with `audio_url` for custom-voiceover lip-sync, or Seedance 2.0 Pro for multi-modal animation from image + reference video + reference audio. Bundles each model's documented prompting patterns so the caller gets sharper output without burning iterat

Search skills and MCP servers

Fuzzy search across 23,137 skills and servers