SP soundboard-plugin
Claude Code Plugin

Soundboard , give Claude a voice.

Emotion-aware TTS, multi-speaker dialogue, code narration, and workflow notifications — all running locally via KokoroSharp.

Speak

/soundboard:speak Hello! I'm your coding assistant.

Narrate

/soundboard:narrate src/server.py

Notify

/soundboard:notify Build succeeded with 0 warnings

Features

Voice synthesis designed for developer workflows.

12 Curated Voices

Male, female, British, American — each with emotion-aware routing across 8 emotions (joy, anger, sadness, fear, surprise, urgency, calm, neutral).

Multi-Speaker Dialogue

Auto-casting, stage directions, and speed modifiers. Have Claude narrate conversations between characters.

Code Narration

/soundboard:narrate walks through source files with adaptive pacing. Smart chunking splits at sentence boundaries.

SSML-Lite

Fine-grained control with pauses, emphasis, pitch, and rate tags. Plus inline SFX like <ding> and <chime>.

Security-First

Path sandboxing, concurrency gate, WAV validation, structured errors, and secret redaction. No telemetry.

Inner Monologue

Ambient system with rate limiting and automatic redaction. Claude can think out loud while working.

Quick Start

Install

# Install the voice engine
cd voice-soundboard
pip install -e ".[kokoro]"

# Install the plugin
cd soundboard-plugin
pip install -e .

# Register with Claude Code
claude plugin add /path/to/soundboard-plugin

Try it

/soundboard:speak Hello! I'm your assistant.
/soundboard:narrate src/server.py
/soundboard:notify Build succeeded
/soundboard:voices
/soundboard:voice-status

Slash Commands

Command
What It Does
/soundboard:speak
General TTS with emotion detection and SSML support
/soundboard:narrate
Code walkthrough narration with adaptive pacing
/soundboard:notify
Spoken workflow notifications (build, test, deploy)
/soundboard:voices
List available voices and presets
/soundboard:voice-status
Engine health, backend info, enforced limits

Voice Library

12 curated voices with emotion routing.

Voice
ID
Style
Fenrir
am_fenrir
Powerful, authoritative (default)
Eric
am_eric
Energetic, urgent
Liam
am_liam
Warm, conversational
Onyx
am_onyx
Deep, steady
Aoede
af_aoede
Clear, expressive
Jessica
af_jessica
Professional, neutral
Sky
af_sky
Bright, friendly
Alice
bf_alice
British, composed
Emma
bf_emma
British, warm
Isabella
bf_isabella
British, refined
George
bm_george
British, formal
Lewis
bm_lewis
British, measured

Security

Runs entirely on your machine.

Property
Implementation
Input bounds
10,000 char max, clamped speed, chunk/line limits
Voice allowlist
12 pre-approved voices, unknown rejected
Path sandboxing
WAV output confined to {tempdir}/voice-soundboard/
Concurrency
Single synthesis at a time (semaphore gate)
Error safety
Structured JSON errors with trace IDs
Secret redaction
Paths, tokens, IPs stripped from logs