MINARA

Voice

Talk to Minara and hear it answer — in the web terminal and across messaging platforms, with replies spoken sentence-by-sentence as they stream.

Minara supports voice on every chat surface. In the web terminal you can dictate a message with the microphone button and have replies read aloud as they stream in (the first sentence is audible in under a second). On messaging platforms, send a voice note and the agent transcribes it, answers in text, and (when enabled) replies with a voice note of its own.

Setup

Voice uses a pluggable speech service. Set one of:

  • ELEVENLABS_API_KEY — preferred when present (lowest latency synthesis, Scribe transcription).
  • OPENAI_API_KEY — fallback, and the only provider able to mint OGG/Opus voice notes (Telegram, Lark, WhatsApp render those as native voice bubbles).

Turn on voice replies for messaging platforms with MESSAGING_VOICE_REPLY=1 and inbound transcription with MESSAGING_INBOUND_TRANSCRIBE=1. Voice turns persist into chat history: the original recording on your message, the exact spoken audio on the reply.

Platform support

PlatformReceive voiceSend voice repliesNotes
Web terminalYesYesMic button + streamed read-aloud on every chat surface
TelegramYesYesNative voice notes (OGG/Opus)
DiscordYesYesAudio attachment
SlackYesYesAudio file upload
WhatsAppYesYesCloud API audio type; Opus renders as a voice note
Lark / FeishuYesYesOpus uploads render as voice bubbles
MatrixYesYesMSC3245 voice messages
MattermostYesYes (audio file)Inline player client-side
BlueBubbles (iMessage)YesYes (audio file)
Google ChatNoYes (audio file)Inbound download needs service-account media scope (planned)
WeChat OAYesYesUses WeChat's built-in transcript when enabled; AMR fallback needs ffmpeg
WeComYesYesAMR both ways — requires ffmpeg (VOICE_FFMPEG_PATH)
LINEYesText onlySending audio needs a public media URL (planned)
SignalNoYes (audio file)Inbound voice via signal-cli attachment store (planned)
Email / GmailNoYes (mp3 attachment)No inbound message channel
Microsoft TeamsNoText onlyFile sends require the consent-card flow (planned)
DingTalkNoText onlyRobot webhook API has no media upload (planned)
QQNoText onlyVoice uses the Silk codec, which standard ffmpeg can't encode

Platforms marked "planned" still answer voice notes with text replies wherever inbound voice reaches the agent.

On this page