diff --git a/bridge/aria_bridge.py b/bridge/aria_bridge.py
index 72d7110..377d2ec 100644
--- a/bridge/aria_bridge.py
+++ b/bridge/aria_bridge.py
@@ -295,10 +295,17 @@ def clean_text_for_tts(text: str) -> str:
if not text:
return ""
- # ... wenn vorhanden → nur das nehmen
+ # ... wenn vorhanden → nur diesen Inhalt lesen. ABER: ein
+ # LEERES darf die Sprachausgabe nicht verstummen lassen.
+ # Claude haengt reflexartig manchmal ein leeres Tag an (v.a. bei Spotify-
+ # Antworten) — frueher wurde daraus text="" → gar keine TTS (Playlist-Wechsel
+ # 'Prodigy' stumm, 'Fliegen' gesprochen, rein je nachdem ob Claude Inhalt ins
+ # Tag schrieb). Leeres/whitespace-Tag → ignorieren und den normalen Text lesen.
voice_match = _re_tts.search(r'([\s\S]*?)', text, _re_tts.IGNORECASE)
- if voice_match:
+ if voice_match and voice_match.group(1).strip():
text = voice_match.group(1)
+ else:
+ text = _re_tts.sub(r'[\s\S]*?', ' ', text, flags=_re_tts.IGNORECASE)
t = text