openclaw - 💡(How to fix) Fix Feature request: per-agent TTS voice configuration [1 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#70429Fetched 2026-04-23 07:24:54
View on GitHub
Comments
0
Participants
1
Timeline
0
Reactions
0
Participants

Currently, messages.tts is a global config that applies to all agents (bots) equally. There is no way to assign a different TTS voice to individual agents/bot accounts.

Root Cause

Currently, messages.tts is a global config that applies to all agents (bots) equally. There is no way to assign a different TTS voice to individual agents/bot accounts.

Fix Action

Fix / Workaround

Current Workaround

Code Example

{
  channels: {
    telegram: {
      accounts: {
        iris: {
          tts: {
            providers: {
              openai: { voice: "shimmer" }
            }
          }
        },
        hermes: {
          tts: {
            providers: {
              openai: { voice: "onyx" }
            }
          }
        }
      }
    }
  }
}

---

{
  agents: {
    list: [
      {
        id: "iris",
        tts: {
          providers: {
            openai: { voice: "shimmer" }
          }
        }
      }
    ]
  }
}
RAW_BUFFERClick to expand / collapse

Summary

Currently, messages.tts is a global config that applies to all agents (bots) equally. There is no way to assign a different TTS voice to individual agents/bot accounts.

Use Case

When running multiple bots on the same OpenClaw instance (e.g. Hermes, Iris, Argus — each a separate Telegram bot account), it would be useful to give each bot its own distinct voice so users can immediately recognize which agent is speaking.

Proposed Config Shape

{
  channels: {
    telegram: {
      accounts: {
        iris: {
          tts: {
            providers: {
              openai: { voice: "shimmer" }
            }
          }
        },
        hermes: {
          tts: {
            providers: {
              openai: { voice: "onyx" }
            }
          }
        }
      }
    }
  }
}

Or alternatively at the agent level:

{
  agents: {
    list: [
      {
        id: "iris",
        tts: {
          providers: {
            openai: { voice: "shimmer" }
          }
        }
      }
    ]
  }
}

Current Workaround

None — all bots share the same voice from messages.tts.providers.openai.voice.

Environment

  • OpenClaw version: 2026.4.21
  • Channel: Telegram (multiple bot accounts)

extent analysis

TL;DR

To assign different TTS voices to individual agents/bot accounts, modify the configuration to include agent-specific TTS settings, either at the channel or agent level.

Guidance

  • Introduce agent-specific TTS configuration, as proposed in the channels or agents configuration shapes, to allow distinct voices for each bot account.
  • Update the messages.tts configuration to reference the agent-specific TTS settings, ensuring that each bot account uses its assigned voice.
  • Verify the configuration change by testing each bot account's TTS output to confirm that the correct voice is being used.
  • Consider implementing a fallback or default voice setting for cases where an agent-specific voice is not defined.

Example

{
  "agents": {
    "list": [
      {
        "id": "iris",
        "tts": {
          "providers": {
            "openai": { "voice": "shimmer" }
          }
        }
      },
      {
        "id": "hermes",
        "tts": {
          "providers": {
            "openai": { "voice": "onyx" }
          }
        }
      }
    ]
  }
}

Notes

The proposed configuration changes assume that the OpenClaw instance is capable of handling agent-specific TTS settings. If this is not the case, additional development or modifications to the OpenClaw codebase may be necessary.

Recommendation

Apply a workaround by introducing agent-specific TTS configuration, as this allows for distinct voices for each bot account without requiring a version upgrade. This approach provides a flexible solution for managing multiple bot accounts with unique voices.

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