Curated summary: CHANGELOG.md
- feat(api): add ElevenLabs and Cartesia compatible websocket TTS for voice agents by @remsky in #576
- feat(api): add OpenAI Realtime compatible TTS on /v1/realtime, Speech endpoint fields on all websockets by @remsky in #584
- fix(docker): preload jemalloc in the CPU image to reduce + keep memory flat by @YaannnTech in #595
- feat(api): optional API keys for the API routes by @davidcoulson in #568
- fix(api): map OpenAI voices marin, cedar, verse and ballad by @remsky in #578
- fix(api): reject a download_format that differs from response_format by @davidcoulson in #570
- fix(api): only check download_format when a download link is requested by @Alvi-Rahman in #585
- fix: return a short silence for input with nothing to speak (#579) by @Kiddo4993 in #580
- fix(api): send websocket silence once per context, keep empty input with alias rate a 400 by @remsky in #590
- ci(test): apt install on runners skip ffmpeg and cmake by @remsky in #592
- fix(docker): bake Kokoro weights from the Hub as primary with config GET comparison, keep old method as fallback by @remsky in #596
- docs(skills): add downstream consumer check skill with helper script by @remsky in #583
- build(deps): bump the actions group with 3 updates by @dependabot[bot] in #581
- ci(test): fail a stalled apt install after 5 minutes by @remsky in #591
New Contributors
- @Alvi-Rahman made their first contribution in #585
- @Kiddo4993 made their first contribution in #580
Full Changelog: v0.9.2...v0.10.0