mcpField
V
VoiceServer

VoiceServer

github.com/danielmiesslerCloud & DevOps19.6k108 installsUpdated 1d ago
Repository

About VoiceServer

VoiceServer is a Claude skill for voice notifications using ElevenLabs TTS. It supports agent-specific voice IDs, prosody guidance, and local service management.

Key features

  1. 01Send voice and text notices before actions
  2. 02Configure voice IDs by agent
  3. 03Guide prosody with markers and formatting
  4. 04Start, stop, and inspect the service

Use cases

  1. 01Notify users before a skill runs
  2. 02Choose a notification voice for an agent
  3. 03Check or restart the VoiceServer service

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/danielmiessler/lifeos --skill voiceserver

After installing, type/voiceserverin Claude Code to confirm it loaded.

Bundled filesWorkflows/Status.mdTools/VoiceServerManager.ts

Details

From the project README

Customization

Before executing, check for user customizations at: ~/.claude/skills/CORE/USER/SKILLCUSTOMIZATIONS/VoiceServer/

If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.

🚨 MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)

You MUST send this notification BEFORE doing anything else when this skill is invoked.

  1. Send voice notification:

    curl -s -X POST http://localhost:8888/notify \
      -H "Content-Type: application/json" \
      -d '{"message": "Running the WORKFLOWNAME workflow in the VoiceServer skill to ACTION"}' \
      > /dev/null 2>&1 &
    
  2. Output text notification:

    Running the **WorkflowName** workflow in the **VoiceServer** skill to ACTION...
    

This is not optional. Execute this curl command immediately upon skill invocation.

VoiceServer Skill

Domain: Voice notification system using ElevenLabs TTS with prosody guidance.

Algorithm: ~/.claude/skills/CORE/SYSTEM/THEALGORITHM.md


Phase Overrides

OBSERVE
  • Key sources: Operation type (status/notify/manage), message content, voice selection
  • Critical: Voice relies on 🎯 COMPLETED: line - without it, user won't hear response
THINK
  • Voice selection: Match agent to voice ID (see routing table below)
  • Prosody: Emotional markers + markdown emphasis = natural speech
  • Anti-patterns: Missing COMPLETED line, no prosody, wrong voice for agent
BUILD
CriterionPASSFAIL
COMPLETEDLine present with messageMissing line
ProsodyEmotional markers appliedFlat/robotic
VoiceCorrect agent voiceWrong voice
EXECUTE
  • Notify: curl -X POST http://localhost:8888/notify -H "Content-Type: application/json" -d '{"message":"...", "voice_id":"..."}'
  • Manage: ~/.claude/VoiceServer/{start,stop,status,restart}.sh
  • Workflow: Workflows/Status.md

Domain Knowledge

Voice Routing:

AgentVoice IDStyle
kai${KAI_VOICE_ID}Configure your primary voice
engineer${ENGINEER_VOICE_ID}Configure engineering voice
pentester${PENTESTER_VOICE_ID}Configure pentester voice
architect${ARCHITECT_VOICE_ID}Configure architect voice

Configure voice IDs in your environment or ~/.claude/VoiceServer/voices.json

Prosody Quick Reference:

  • Emotional: [💥 excited] [✨ success] [⚠️ caution] [🚨 urgent]
  • Emphasis: **bold** for key words, ... for pause, -- for break

Infrastructure: Server at ~/.claude/VoiceServer/, Port 8888, Config voices.json

Comments

Markdown supported