Skip to content

fix: centralize voice config — remove hardcoded ElevenLabs IDs#1019

Open
qozle wants to merge 1 commit intodanielmiessler:mainfrom
qozle:fix/centralize-voice-config
Open

fix: centralize voice config — remove hardcoded ElevenLabs IDs#1019
qozle wants to merge 1 commit intodanielmiessler:mainfrom
qozle:fix/centralize-voice-config

Conversation

@qozle
Copy link
Copy Markdown

@qozle qozle commented Apr 1, 2026

Summary

  • Removes all hardcoded voice_id parameters from curl commands and agent frontmatter across v4.0.2 and v4.0.3
  • VoiceServer already has 3-tier resolution (caller voice_settings > voice_id lookup > settings.json voices.main). The hardcoded IDs were bypassing this chain, causing 402 errors for free-tier users
  • Sets settings.json default voice to bIHbv24MWmeRgasZH58o (confirmed free-tier) so voice works out of the box
  • Net result: 48 fewer hardcoded voice IDs, centralized in one config location

Why this instead of find-and-replace (PR #1018):
The previous approach replaced 8 broken IDs with 1 working ID across 46 files — same architecture, different value. This PR removes the scattered IDs entirely and lets VoiceServer's existing fallback chain handle resolution. Users configure voice once in settings.json; all curls and agents inherit it.

52 files changed, 110 insertions, 158 deletions (net -48 lines — removing config, not adding it)

Closes #925

Test plan

  • Fresh install v4.0.3 with free-tier ElevenLabs key — voice notifications should succeed (200, not 402)
  • Verify no hardcoded paid-tier IDs remain: grep -rn 'fTtv3eikoepIosk8dTZ5\|muZKMsIDGYtIkjjiUS82' Releases/v4.0.{2,3}/
  • Paid users can still override voice in settings.json → daidentity.voices.main.voiceId
  • Curl commands without voice_id correctly fall back to VoiceServer default

🤖 Generated with Claude Code

…faults

VoiceServer already resolves voice via settings.json (voices.main fallback).
Hardcoded voice_id in curl commands bypassed this, causing 402 errors for
free-tier ElevenLabs users. Fix: remove voice_id from all curls and agent
frontmatter so VoiceServer's 3-tier resolution handles it. Set settings.json
default to a confirmed free-tier voice ID for out-of-box functionality.

Closes danielmiessler#925

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

v4.0.3 hard-codes voice_ids not available in Free tier creating voice notification failures

1 participant