Skip to content

Per-agent TTS voice configuration #20451

Description

@johnkmcleod9

Feature Request

Is your feature request related to a problem?
When running multiple agents (e.g., Saphira, Smaug, Sol), they all share the same TTS voice since messages.tts is global. It would be great to give each agent a distinct voice to match their persona.

Describe the solution you'd like
Add optional TTS settings per agent in agents.list[]:

{
  "id": "smaug",
  "name": "Smaug",
  "tts": {
    "voiceId": "deep-voice-id-here"
  }
}

Agent-level settings would override the global messages.tts config. Only voiceId might be needed, inheriting provider, apiKey, etc. from the global config.

Use case

  • Saphira: Professional female voice
  • Smaug (CFO): Deeper, authoritative voice
  • Sol (Wellness): Calm, soothing voice

Additional context
Currently using ElevenLabs with Telegram. Multiple agents already have separate Telegram bot accounts, so per-agent voice would complete the persona separation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    staleMarked as stale due to inactivity

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions