home / skills / leegonzales / aiskills / claude-speak

claude-speak skill

/ClaudeSpeak/claude-speak

This skill vocalizes text aloud using high-quality AI voice synthesis with configurable voices and speeds.

npx playbooks add skill leegonzales/aiskills --skill claude-speak

Review the files below or copy the command above to add this skill to your agents.

Files (3)
SKILL.md
2.3 KB
---
name: claude-speak
description: Speak text aloud using high-quality AI voice synthesis (Kokoro TTS on Apple Silicon). Use when user asks to vocalize, narrate, or speak text out loud.
---

# Claude Speak

Vocalize text using high-quality text-to-speech. British male voice (bm_george) by default.

## When to Use

Invoke when user:
- Asks to "say this out loud" or "speak this"
- Wants narration or audio feedback
- Uses `/speak` command
- Requests vocalization of content

## Core Command

```bash
~/Projects/claude-speak/.venv/bin/claude-speak-client "Text to speak"
```

**That's it.** The daemon runs in background via launchd - instant response.

**TIP:** For longer text, append `&` to run fire-and-forget (see "Long Text" section below).

## Options

```bash
# Different voice
~/Projects/claude-speak/.venv/bin/claude-speak-client -v af_heart "Warm female voice"

# Adjust speed (default 1.0)
~/Projects/claude-speak/.venv/bin/claude-speak-client -s 1.2 "Speaking faster"

# Quiet mode (suppress errors)
~/Projects/claude-speak/.venv/bin/claude-speak-client -q "Silent on success"

# Custom timeout (default: 300s / 5 min)
~/Projects/claude-speak/.venv/bin/claude-speak-client -t 600 "Very long text..."
```

## Long Text (3+ sentences)

For longer content, use **fire-and-forget mode** with shell backgrounding:

```bash
~/Projects/claude-speak/.venv/bin/claude-speak-client "Your longer text here..." &
```

The trailing `&` runs the command in the background at the shell level, so Claude Code doesn't track it as a task. The audio plays while the conversation continues—no timeout errors or false "failed" notifications.

**Why this works:** Claude Code's `run_in_background` still monitors the task and may report timeout failures even when audio completes successfully. Shell backgrounding (`&`) avoids this entirely.

## Available Voices

| Voice | Description |
|-------|-------------|
| `bm_george` | British male, distinguished (DEFAULT) |
| `af_heart` | American female, warm |
| `am_adam` | American male, deep |
| `bf_emma` | British female, elegant |

## Troubleshooting

If "Daemon not running" error:
```bash
~/Projects/claude-speak/.venv/bin/claude-speak-daemon start
```

## Best Practices

- For short text (1-2 sentences): run normally
- For longer text (paragraphs): use `&` fire-and-forget
- Check daemon status if issues arise

Overview

This skill speaks text aloud using high-quality AI voice synthesis (Kokoro TTS on Apple Silicon). It defaults to a British male voice and runs a background daemon for near-instant playback. Use it to narrate, give audio feedback, or vocalize any text input.

How this skill works

The client sends text to a local daemon which synthesizes speech with Kokoro TTS and plays audio immediately. Short utterances run interactively; longer text can be backgrounded at the shell level to avoid timeouts. Options let you change voice, adjust speed, silence success messages, and set a custom timeout.

When to use it

  • User asks to “say this out loud” or “speak this”
  • Need narration for UI feedback, demonstrations, or accessibility
  • Want to convert a message, paragraph, or script into spoken audio
  • Use a slash command or quick client invocation to vocalize text
  • Testing or prototyping voice UX on Apple Silicon

Best practices

  • Run short text (1–2 sentences) normally for instant feedback
  • For longer passages or multi-paragraph narration, append & to run fire-and-forget
  • Select an appropriate voice from the available presets for tone and clarity
  • Adjust playback speed for pacing-sensitive material (e.g., instructions)
  • If audio fails to play, check that the background daemon is running

Example use cases

  • Read notifications or short status messages aloud during demos
  • Narrate onboarding text, tutorials, or help content for accessibility testing
  • Deliver voiceovers for short videos or screen recordings
  • Provide spoken confirmations for interactive scripts or tooling
  • Prototype different voice personas by switching presets and speed

FAQ

What do I do if I see a “Daemon not running” error?

Start the local daemon using the provided start command; once the daemon is running, the client will synthesize and play audio immediately.

How do I speak long text without timeouts?

Run the client command with a trailing & at the shell prompt to fire-and-forget. That avoids monitored timeouts while audio plays in the background.