openclaw - 💡(How to fix) Fix [Feature]: Control app option to auto-play assistant TTS audio [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#73898Fetched 2026-04-29 06:13:35
View on GitHub
Comments
2
Participants
2
Timeline
4
Reactions
0
Timeline (top)
commented ×2cross-referenced ×1labeled ×1

Add a Control app / Control UI setting to automatically play assistant TTS audio attachments when they are generated.

Root Cause

  • Auto-play assistant TTS audio
  • Possibly scoped per device/session
  • Default off, because autoplay with sound can be surprising
  • Once enabled by explicit user interaction, automatically play new assistant TTS audio attachments when they arrive
RAW_BUFFERClick to expand / collapse

Summary

Add a Control app / Control UI setting to automatically play assistant TTS audio attachments when they are generated.

Problem to solve

When messages.tts.auto is set to always, OpenClaw correctly generates MP3 audio for assistant replies, but in the Control app the audio appears as an embedded player that must be manually played.

Current behavior:

  • Assistant text reply appears
  • TTS MP3 attachment/player appears
  • Player initially may show 0 length/no controls while loading
  • Audio works after loading, but the user must press play manually

This makes “assistant voice” feel like a manual attachment workflow rather than a conversational spoken assistant experience.

Proposed solution

Add a Control app / Control UI setting such as:

  • Auto-play assistant TTS audio
  • Possibly scoped per device/session
  • Default off, because autoplay with sound can be surprising
  • Once enabled by explicit user interaction, automatically play new assistant TTS audio attachments when they arrive

Suggested behavior:

  1. User enables auto-play in the Control app/UI.
  2. Browser/app satisfies autoplay requirements through that user gesture.
  3. Future assistant TTS audio attachments play automatically when ready.
  4. If autoplay is blocked by the platform, show a small “Tap to enable voice playback” prompt.

It would also be helpful if the audio player handles loading state more gracefully instead of briefly showing 0 length/no controls.

Alternatives considered

  • Manually pressing play on every generated TTS attachment works, but it defeats the purpose of messages.tts.auto = always.
  • Using tagged TTS reduces clutter, but does not solve the spoken-assistant use case.
  • Platform-level autoplay hacks should be avoided; this should be explicit user opt-in.

Impact

Affected users/systems/channels:

  • Control app / Control UI users using messages.tts.auto = always
  • Users trying to interact with OpenClaw as a spoken assistant

Severity:

  • Annoying / UX friction, not data loss

Frequency:

  • Every assistant reply with TTS enabled

Consequence:

  • Extra manual click per response
  • Voice mode feels like an attachment preview instead of live assistant speech

Evidence/examples

Observed in the OpenClaw Control app:

  • TTS generated successfully using Microsoft provider / Edge TTS
  • MP3 attachment appeared in the UI
  • The embedded player initially showed 0 length/no volume controls while loading
  • Audio played correctly once manually started
  • Assistant voice was not heard automatically unless the user pressed play

Related config:

{
  "messages": {
    "tts": {
      "auto": "always",
      "provider": "microsoft"
    }
  }
}

### Additional information

This should remain opt-in to respect browser/app autoplay restrictions and user expectations around unexpected sound.

extent analysis

TL;DR

Implement an "Auto-play assistant TTS audio" setting in the Control app/UI to automatically play TTS audio attachments when generated.

Guidance

  • Add a new setting to the Control app/UI to enable auto-play of assistant TTS audio attachments, defaulting to off to respect user expectations and browser/app autoplay restrictions.
  • When the setting is enabled, use the user's gesture to satisfy autoplay requirements and play future TTS audio attachments automatically when ready.
  • Handle loading state more gracefully in the audio player to avoid briefly showing 0 length/no controls.
  • Consider showing a "Tap to enable voice playback" prompt if autoplay is blocked by the platform.

Example

No code snippet is provided as it is not explicitly supported by the issue, but the proposed solution suggests adding a new setting to the Control app/UI, such as:

{
  "settings": {
    "autoPlayTtsAudio": false
  }
}

Notes

This solution respects browser/app autoplay restrictions and user expectations around unexpected sound, and provides a more conversational spoken assistant experience.

Recommendation

Apply workaround: Implement the "Auto-play assistant TTS audio" setting to provide a more seamless user experience, while respecting user expectations and browser/app restrictions.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Feature]: Control app option to auto-play assistant TTS audio [2 comments, 2 participants]