← ClaudeAtlas

voice-system-expertlisted

Use when working with Quetrex's voice interface, OpenAI Realtime API, WebRTC, or echo cancellation. Knows Quetrex's specific voice architecture decisions and patterns. CRITICAL - prevents breaking working voice system.
aiskillstore/marketplace · ★ 329 · AI & Automation · score 82
Install: claude install-skill aiskillstore/marketplace
# Quetrex Voice System Expert ## CRITICAL: Read This First Quetrex's voice system architecture is **extensively documented and battle-tested**. Before making ANY changes to voice-related code, you MUST read: 1. **ADR-001-VOICE-ECHO-CANCELLATION.md** (definitive architectural decision) 2. **docs/architecture/VOICE-SYSTEM.md** (technical implementation) 3. **docs/features/voice-interface.md** (user-facing features) **Location:** `src/lib/openai-realtime.ts` ## Core Architecture Decision ### ALWAYS-ON MICROPHONE + BROWSER AEC This is **Decision 4** from VOICE-SYSTEM.md and the definitive approach documented in ADR-001. ```typescript // ✅ CORRECT: Always-on microphone const mediaStream = await navigator.mediaDevices.getUserMedia({ audio: { echoCancellation: true, // CRITICAL - browser handles echo cancellation noiseSuppression: true, autoGainControl: true, }, }) // Microphone track stays ENABLED throughout conversation // Browser's native AEC prevents feedback loops // Server-side VAD (Voice Activity Detection) handles turn detection ``` ## How It Works ### Audio Pipeline ``` User speaks ↓ Microphone (always enabled, echoCancellation: true) ↓ WebRTC → OpenAI Realtime API ↓ Server-side VAD detects speech ↓ OpenAI processes and responds ↓ Audio response via WebRTC ↓ HTMLAudioElement playback (stays in browser pipeline) ↓ Browser AEC compares mic input + speaker output ↓ Echo automatically canceled (no feedback loop) ``` #