Interface VoiceNodeConfig

Configuration for a voice pipeline node. All fields except mode are optional and default from agent.config.json voice section.

interface VoiceNodeConfig {
    mode: "conversation" | "listen-only" | "speak-only";
    stt?: string;
    tts?: string;
    voice?: string;
    endpointing?: "heuristic" | "semantic" | "acoustic";
    bargeIn?: "disabled" | "hard-cut" | "soft-fade";
    diarization?: boolean;
    language?: string;
    maxTurns?: number;
    exitOn?: "manual" | "silence-timeout" | "keyword" | "hangup" | "turns-exhausted";
    exitKeywords?: string[];
}

Properties

mode: "conversation" | "listen-only" | "speak-only"

Voice session mode

stt?: string

STT provider override

tts?: string

TTS provider override

voice?: string

TTS voice override

endpointing?: "heuristic" | "semantic" | "acoustic"

Endpointing mode

bargeIn?: "disabled" | "hard-cut" | "soft-fade"

Barge-in mode

diarization?: boolean

Enable diarization

language?: string

Language (BCP-47)

maxTurns?: number

Max turns before node completes (0 = unlimited)

exitOn?: "manual" | "silence-timeout" | "keyword" | "hangup" | "turns-exhausted"

Exit condition

exitKeywords?: string[]

Keywords that trigger completion (when exitOn: 'keyword')