Agent skill
voice-mode
Activates voice conversation mode using Pocket TTS Docker container. Use when user says "voice mode", "let's talk", "talk to me", "speak your responses", or wants Claude to respond with spoken audio. Speaks all responses through TTS and plays via speakers.
Install this agent skill to your Project
npx add-skill https://github.com/antoniocascais/claude-code-toolkit/tree/main/skills/voice-mode
SKILL.md
Voice Mode
Voice conversation mode where all responses are spoken aloud via Pocket TTS.
Setup
The tts.sh script lives in this skill's scripts/ directory. Resolve it relative to this SKILL.md:
SKILL_DIR="<absolute path to this skill's directory>"
TTS="${SKILL_DIR}/scripts/tts.sh"
Use ${TTS} for all commands below.
Activation
On activation, ALWAYS run these steps in order before anything else:
-
Check the TTS container is running:
bash${TTS} ensureIf this fails (exit code 1), tell the user the container is down and stop. Do NOT attempt to start it.
-
Confirm voice mode is active by speaking:
bash${TTS} play "Voice mode activated. I'm listening." -v eponine
Response Rules
While voice mode is active:
-
ALWAYS speak every response using tts.sh:
bash${TTS} play "<response text>" -v eponine -
Prefer concise responses — aim for 1-3 sentences when used standalone. When combined with another skill, match the response length that skill requires.
-
Write naturally for speech — avoid markdown, bullet points, code blocks, URLs. Write as you'd speak in conversation.
-
Also output text — print a brief text version so the conversation is readable in the terminal.
-
Handle STT input gracefully — user input arrives as
[STT]...[/STT]tags from their whisper script. The transcription may be imperfect. Infer intent from context rather than asking for clarification on every garbled word. -
Split long responses — if you need to say more than ~2 sentences, make multiple tts.sh calls so audio starts playing sooner.
Voice Selection
Default voice: eponine
If the user provided an argument (e.g., /voice-mode jean), use that voice instead.
Available: alba, marius, javert, jean, fantine, cosette, eponine, azelma
Deactivation
Voice mode ends when the user says "stop voice mode", "text mode", or "stop talking". Confirm with a final spoken message: "Voice mode off. Back to text."
Configuration
All configurable via environment variables:
POCKET_TTS_PORT— server port (default: 18731)POCKET_TTS_VOICE— default voice (default: eponine)POCKET_TTS_SPEED— playback speed (default: 1.2)
Dependencies
- Docker with pocket-tts container running (
docker compose up -dfrom the pocket-tts repo) - mpv (audio playback)
- curl
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
test-quality
Guides strong, effective unit test generation using proven testing techniques. Use when writing unit tests, reviewing test quality, improving existing tests, generating test cases, checking test coverage strength, or when tests exist but may be weak. Triggers on: unit test, test quality, test coverage, write tests, improve tests, review tests, test strength, mutation testing, boundary testing.
skill-forge
Creates new Claude Code skills with proper structure and best practices. Use when user wants to create a skill, update an existing skill, add a new command, scaffold a workflow, define skill hooks, or asks "how do I make a skill".
workflow-review
Reviews Claude Code sessions and proposes workflow improvements. Use when: (1) /workflow-review command, (2) "review my workflow", "how can I improve", (3) after long sessions when nudged, (4) start of session with pending review. Analyzes tool usage patterns, CLAUDE.md configuration, and compares against CC best practices. Proposes: CLAUDE.md updates, new skills, underused CC features. Saves session summaries to .claude/workflow-reviews/ for cross-session continuity.
git-commit
Plans and executes git commits with optional TICKET_ID prefix. Analyzes staged changes, proposes optimal commit structure (single or multiple), generates descriptive messages with technical context, and executes after user approval. Use when committing code changes, creating atomic commits, or splitting large changesets.
clarice
Conducts realistic mock interviews with detailed feedback and scoring. Use for interview prep, behavioral questions, technical interviews, STAR practice, system design interviews, or interview coaching.
pr-review
Reviews code changes before merging. Use when reviewing PRs, checking staged changes, reviewing diffs, code review, merge readiness check, or validating changes before commit/push.
Didn't find tool you were looking for?