@kuralle-agents/livekit-plugin-transport-ws
v0.6.0
Published
WebSocket transport adapter for LiveKit Agents. Run voice and text agents over plain WebSocket without a LiveKit server.
Downloads
231
Readme
@kuralle-agents/livekit-plugin-transport-ws
WebSocket transport server and adapter for Kuralle voice sessions.
Install
npm install @kuralle-agents/livekit-plugin-transport-wsPeer dependency:
npm install @kuralle-agents/livekit-pluginWhat it does
Provides a WebSocket-based transport layer that browser and server clients connect to for real-time voice sessions with Kuralle agents.
WebSocketAgentServer— WebSocket server that accepts connections and manages per-session lifecycle; pass it acreateKuralleSessionfactory viaonConnection.WebSocketTransportAdapter— adapts a WebSocket connection to the transport contract expected by@kuralle-agents/livekit-pluginsessions.WebSocketAudioInput/WebSocketAudioOutput/WebSocketTextOutput— I/O stream implementations for the WebSocket path.bridgeWebSocketToRealtimeTransport/bridgeLiveKitSessionToWebSocket— bridge utilities for connecting a WebSocket to provider-native realtime transports.- Protocol types (
ConfigureMessage,AgentTextMessage,UserTranscriptionMessage, etc.) andparseClientMessage/serializeServerMessagefor custom WebSocket handling. createWsNativeAudioTransport— factory for native audio transport use cases.
Usage
import { WebSocketAgentServer } from '@kuralle-agents/livekit-plugin-transport-ws';
import { createKuralleSession } from '@kuralle-agents/livekit-plugin';
import { GeminiLiveSTT, GeminiLiveTTS } from '@kuralle-agents/livekit-plugin/gemini';
const server = new WebSocketAgentServer({ port: 8080 });
server.onConnection(async (transport) => {
const session = createKuralleSession({
runtime: myRuntime,
stt: new GeminiLiveSTT(),
tts: new GeminiLiveTTS(),
greeting: 'Hello, how can I help?',
});
await server.startSession(transport, session);
});
await server.listen();Related
@kuralle-agents/livekit-plugin— voice session orchestrator@kuralle-agents/livekit-plugin-transport-http— HTTP/SSE transport alternative@kuralle-agents/voice-protocol— wire protocol types shared across transports
