Skip to content

Node.js

Examples:

Terminal window
bun run examples/node-openrouter/index.ts
# optional: export OPENROUTER_API_KEY=...
import { createVoiceSession, createMockASR, createMockTTS } from '@ottervoice/core';
import { createNodeRuntime } from '@ottervoice/runtime-node';
import { createOpenRouterLLM } from '@ottervoice/provider-openrouter';
const runtime = createNodeRuntime();
const session = createVoiceSession({
mode: 'half_duplex',
runtime,
providers: {
asr: createMockASR({ transcripts: ['Say hello'] }),
llm: createOpenRouterLLM({
apiKey: process.env.OPENROUTER_API_KEY!,
model: 'openai/gpt-4o-mini',
}),
tts: createMockTTS(),
},
});
await session.start();

Servers may use apiKey directly. Browsers and apps must use the token broker.