join.mjs joins the target voice channel over the proven DAVE handshake and stays connected, mapping SPEAKING->ssrc and tallying incoming RTP (foundation for M2 audio decrypt). README records GPU=on, shared OAuth brain, natural-but-<=1s TTS, Discord-voice STT input, and the M1..M6 milestones. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>