Node.js
Examples:
- Mock loop:
examples/node-cli - Live LLM:
examples/node-openrouter
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.