- audio: switch VAD to webrtcvad with RMS gate + fallback to RMS - audio: honor FOLLOWUP_TIMEOUT — short silence wait after bot response - llm: retry with exponential backoff on network errors and 5xx - llm: VOICE_MAX_TOKENS env (default 300) instead of hardcoded 150 - tts: optional VAD-based barge-in (BARGE_IN_ENABLED, off by default) - tts: remove dead start_barge_in_listener / was_barge_in helpers - config: drop AGENT/LUSYA_AGENT — routing happens via session_key - modes: remove unused imports, pass FOLLOWUP_TIMEOUT to follow-up record() - docs: full rewrite of README and CLAUDE.md to match current architecture
50 lines
1.6 KiB
Plaintext
50 lines
1.6 KiB
Plaintext
# OpenClaw Gateway — Cosmo
|
|
# Роутинг к агенту идёт через COSMO_SESSION_KEY, отдельный AGENT не нужен.
|
|
GATEWAY_URL=http://192.168.31.103:18789
|
|
GATEWAY_TOKEN=your_openclaw_token_here
|
|
VOICE_MODEL=openai/gpt-5.4-mini
|
|
|
|
# OpenClaw Gateway — Люся
|
|
LUSYA_GATEWAY_URL=http://192.168.31.103:18790
|
|
LUSYA_GATEWAY_TOKEN=your_openclaw_token_here
|
|
LUSYA_VOICE_MODEL=openai/gpt-5.4-mini
|
|
|
|
# STT (Groq)
|
|
GROQ_API_KEY=your_groq_api_key_here
|
|
|
|
# Wake word (openwakeword .onnx модели, обучаются через training/step_4.py)
|
|
WAKE_WORD_COSMO=data/models/cosmo.onnx
|
|
WAKE_WORD_LUSYA=data/models/lusya.onnx
|
|
|
|
# Audio (на Pi: bluez_sink.XX_XX_XX_XX_XX_XX.a2dp_sink)
|
|
AUDIO_SINK=
|
|
|
|
# TTS (ElevenLabs)
|
|
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here
|
|
ELEVENLABS_MODEL=eleven_turbo_v2_5
|
|
COSMO_TTS_VOICE=your_cosmo_voice_id
|
|
LUSYA_TTS_VOICE=your_lusya_voice_id
|
|
|
|
# VAD
|
|
SILENCE_THRESHOLD=500
|
|
SILENCE_DURATION=1.5
|
|
MAX_DURATION=15
|
|
FOLLOWUP_TIMEOUT=8
|
|
VAD_AGGRESSIVENESS=2 # webrtcvad 0..3, больше = строже
|
|
|
|
# LLM
|
|
VOICE_MAX_TOKENS=300
|
|
LLM_RETRIES=3
|
|
|
|
# Barge-in (прерывание TTS голосом). Работает только при разнесённых мике/колонке
|
|
# или в наушниках — иначе собственный TTS будет триггерить прерывание.
|
|
BARGE_IN_ENABLED=false
|
|
BARGE_IN_THRESHOLD=1500 # RMS выше SILENCE_THRESHOLD
|
|
BARGE_IN_WARMUP=0.8 # сек пропуска в начале TTS
|
|
|
|
# Логирование
|
|
LOG_FILE=errors.log
|
|
|
|
COSMO_SESSION_KEY=agent:voice:voice:home
|
|
LUSYA_SESSION_KEY=agent:wife:voice:home
|