# Speak

> Speak a response aloud using Kokoro TTS. Use when the user asks you to say something out loud or wants voice output.

- Skill: `cerico/speak` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add cerico/speak`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cerico/speak/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: cerico (https://skillmd.com/u/cerico)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cerico/speak

---


# Speak

Speak text aloud using the local Kokoro TTS service on port 8880.

## When to Use

- User says "speak", "say that", "read that aloud", "tell me out loud"
- User asks for voice/audio output

## Instructions

1. Compose a natural spoken version of your response. Strip markdown, code blocks, bullet points - write it as you'd say it conversationally. Keep it concise.
2. Type the response normally so the user has it in the terminal.
3. Run the speak script via Bash:
   ```bash
   /usr/local/bin/speak "Your spoken text here"
   ```

That's it. The speak script handles JSON encoding via jq, calls Kokoro, and plays the audio.

IMPORTANT:
- NEVER run speak in the background (no run_in_background). Background task completions trigger phantom commands due to a Claude Code bug. Always run in foreground.
- Use double quotes around the text argument
- Escape any double quotes inside the text with backslash
- For long responses (500+ words), split into multiple speak calls
- The permission pattern `Bash(/usr/local/bin/speak *)` auto-approves these calls
- Works in both normal mode and plan mode (no Write tool needed)
- When speaking and your next action needs permission, speak what you are about to do before the tool call so the user knows to check the screen
- When using AskUserQuestion or any tool that requires user permission/input, speak "Response required" before the tool call so the user knows to check the screen even when away from the terminal

## Voice Options

ALWAYS uses `af_sky` (configured in the speak script).

## Troubleshooting

If Kokoro isn't running, fall back to macOS `say`:
```bash
say -v Samantha "spoken text here"
```

