Vocalize — Documentation skill for Claude Code
CLI that turns text and markdown into speech via the ElevenLabs API, with a Claude Code Stop hook that reads Claude's responses aloud.
How to install Vocalize
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open matthager12-collab/vocalize and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Vocalize does
CLI that turns text and markdown into speech via the ElevenLabs API, with a Claude Code Stop hook that reads Claude's responses aloud.
Alternatives in Documentation
- PDF — Extract text, create PDFs, merge/split documents, and handle forms 94.1k ★
- Wiki — Bootstrap or check the claude-obsidian wiki vault 3.3k ★
- API Docs Generator — Generate comprehensive API documentation from code 2.6k ★
README
vocalize
[](https://github.com/matthager12-collab/vocalize/actions/workflows/ci.yml)
A command-line tool that turns text, markdown files, or piped stdin into natural-sounding speech using the [ElevenLabs](https://elevenlabs.io) API — plus a hook that wires it directly into [Claude Code](https://claude.com/claude-code), so Claude's responses get read aloud automatically in your terminal or IDE.
Quickstart
pipx install vocalize-cli
vocalize config
Walks you through your API key, a voice, and a speed, and saves it all.
vocalize speak "hello"
To set up just the key, skip the wizard and run `vocalize auth login` — it stores the key in your OS keychain.
Why this exists
Text-to-speech readers are good at *voices* and bad at *structure*. Point one at a markdown report and it reads a table cell-by-cell, left to right, with no sense of which row or column you're in — "Q1. 4.2 million. Q2. 5.1 million" instead of "for Q1, revenue is 4.2 million." Headings, bullet lists, and inline code fare the same way: read exactly as typed, syntax and all.
`vocalize` fixes the part of that problem that's actually fixable without a vision model: a preprocessing pass (`vocalize/preprocess.py`) rewrites markdown into short, declarative sentences *before* it ever reaches the TTS API — tables become "for X, Y is Z" sentences, bullets become "First, ... Second, ...", links keep their text and drop the URL, and fenced code blocks are replaced with a spoken placeholder instead of being read character by character. It's a text transform, so it's fully unit tested without any API key or network access (see `tests/test_preprocess.py`).
Install
pipx install vocalize-cli
(or `uvx --from vocalize-cli vocalize` for a one-off run without installing anything). The package is published on PyPI as `vocalize-cli`; the command it installs is still `voca
Related Skills
Retext PDF
EDITOR_KIM — a local PDF & Markdown editor with true PDF text editing and redaction, powered by PDFium (WASM)
API Doc
Reads backend route files and generates OpenAPI 3.0 YAML documentation, saved to docs/openapi.yaml. Supports E
Mumblr
Think out loud, get a prompt. Speech to markdown in the folder you start it from, with edits by voice through
Claude Code Fancy HTML Hook
Claude Code hook that auto-converts Markdown to fancy infographic HTML on Write/Edit (with confirmation dialog
Docs Drift
Use to catch documentation that has silently gone stale — it spawns ONE fresh sibling session via CCC that ext
Simplified Technical English
Write or rewrite software documentation (README, INSTALL, BUILD, CLI --help, man pages, API docs, code comment
Related Agents
Marketing Carousel Growth Engine
TikTok and Instagram photo-carousel specialist. Turns a product, page or idea into a 6-slide carousel with a s
Scope Ingest
Bounded subagent that turns raw source material (markdown files, plain-text files, pasted text) into a normali
Impl CLI Framework
Reviews implementation plans from a clap and CLI framework perspective. Use when evaluating argument parser de