Build on the supported package contract
Use @absolutejs/voice-assemblyai through its supported public entry points.
@absolutejs/voice-assemblyaiv0.0.19-beta.127betaVoice & MediaAssemblyAI speech-to-text adapter for @absolutejs/voice
bun add @absolutejs/voice-assemblyaiAssemblyAI speech-to-text adapter for @absolutejs/voice.
The adapter accepts 16kHz mono pcm_s16le audio from core and sends it to AssemblyAI's official streaming WebSocket API.
streaming Turn with end_of_turn=false -> partial
streaming Turn with end_of_turn=true -> final
streaming Turn with end_of_turn=true -> normalized endOfTurn
websocket errors -> normalized error
websocket close -> normalized close
AssemblyAI's streaming output is immutable, so the adapter treats in-progress turns as partial updates and the terminal turn message as the final transcript for that turn.
Supported options include:
apiKey
speechModel
formatTurns
keytermsPrompt
endOfTurnConfidenceThreshold
minEndOfTurnSilenceWhenConfident
maxTurnSilence
token
Set ASSEMBLYAI_API_KEY in your runtime environment, or pass the key explicitly in the adapter config.
AssemblyAI references used for this adapter design:
https://www.assemblyai.com/docs/speech-to-text/streaming
https://www.assemblyai.com/docs/streaming/universal-streaming
https://www.assemblyai.com/docs/universal-streaming/turn-detection
Outcomes
Use @absolutejs/voice-assemblyai through its supported public entry points.
Hardening checklist
Follow in order
Working example for Setup.
import { assemblyai } from "@absolutejs/voice-assemblyai";
const stt = assemblyai({
apiKey: process.env.ASSEMBLYAI_API_KEY!,
speechModel: "universal-streaming-english",
formatTurns: true,
});Supported entry points declared by this package manifest.
Package entry point declared in package.json.
Scripts declared by this package manifest.