April 10, 2026

Guillermo Weinmann

speak

A text-to-speech plugin for Claude Code. Reads responses aloud using native TTS engines. No extra tokens — pure client-side TTS.

Demo

Prerequisites

Most developers already have these.


  GIT is required to clone the plugin repository
  Node.js 18+ is required to run plugin hooks

Install

Simple.

claude plugin marketplace add https://alphabetware.com/marketplace.json
claude plugin install speak
Or from source:
gh repo clone alphabet/speak ~/speak
claude --plugin-dir ~/speak

Usage

Type /speak to verify the plugin is loaded.

/speak on              # enable TTS
/speak off             # disable TTS
/speak set voice Ava   # change voice (fuzzy match)
/speak set speed 1.5   # adjust speed (0.1-3.0)
/speak set sentences 2 # sentences per response (1-10)
/speak terse           # strip markdown before speaking
/speak voices          # list available voices

Platform Support

PlatformEngineInstall
macOSsay (native)Built-in
Linuxespeak (native)apt install espeak
WindowsSAPI (native)Built-in via PowerShell

How It Works

A Stop hook fires after each Claude response. Text is cleaned, truncated to N sentences, and spoken via the native TTS engine. Previous speech is cut off. No extra tokens consumed.

Swap the engine at lib/engine.mjs.

Troubleshooting

No sound on macOS — Run say "test" in Terminal. Check ~/.speak/config.json has "enabled": true.

No sound on Linuxapt install espeak, then espeak "test".

Voice/speed/speak voices to list, /speak set voice <name> to change.

Reset — Delete ~/.speak/config.json. Logs at ~/.speak/speak.log.

License

MIT. Calls platform TTS binaries — no voice assets redistributed.