Prerequisites
Smithers ships with voice support built in. You need:- An OpenAI API key (or another AI SDK-supported provider)
smithers-orchestratorversion 0.12.8 or later
Install
No extra packages. Theai and @ai-sdk/openai dependencies are already included.
Create a Voice Provider
The simplest provider wraps AI SDK models for batch TTS and STT:Add Voice to a Workflow
Wrap tasks with the<Voice> component:
Use Composite Voice
Mix different providers for input and output:Use Realtime Voice
For low-latency bidirectional audio, use the OpenAI Realtime provider:Voice with Effect.ts
Use the Effect service layer for typed voice operations:Supported Providers
Any provider supported by the Vercel AI SDK works withcreateAiSdkVoice:
| Provider | TTS | STT |
|---|---|---|
| OpenAI | openai.speech("tts-1") | openai.transcription("whisper-1") |
| ElevenLabs | elevenlabs.speech(...) | elevenlabs.transcription(...) |
| Deepgram | — | deepgram.transcription("nova-3") |
google.speech(...) | google.transcription(...) |
createOpenAIRealtimeVoice directly.