voice

A setup and diagnostic guide for giving an agent a speaking voice and transcribing audio into text. Text-to-speech reads written text aloud, while transcription turns spoken audio into written words.

In plain words
What is it for?
Use it to check voice status, set up a voice service, run a speaking test, or diagnose audio transcription and text-to-speech setup.
Why use it?
It helps check whether voice services are configured and troubleshoot missing audio backends. Voice is optional and disabled by default.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/crisandrews/clawcode/voice
Any agent
npx skills add crisandrews/ClawCode --skill voice
Clone the repo
git clone --depth 1 https://github.com/crisandrews/ClawCode

Made for: Claude Code, Codex.

Per session 66 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,344 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00066 $0.01344
Opus 5 $0.00033 $0.00672
Sonnet 5 $0.00013 $0.00269
Haiku 4.5 $0.00007 $0.00134

Measured 2d ago against content hash 5e1dd0d62451, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

voice scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/voice/SKILL.md · 85 lines

How it starts

The opening of the file, as written. The whole thing — 85 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Voice — TTS and transcription

Set up and test the agent's voice backends. Voice is OPTIONAL — off by default. See docs/voice.md for the full reference including channel-plugin precedence.

Dispatch

User says Action
/agent:voice (no arg) or /agent:voice status Call voice_status and print the card
/agent:voice setup Guided setup (see flow below)
/agent:voice test Call voice_speak({ text: "Hola, soy <name>. Esta es una prueba.", ... }) using the user's language, report the path

The agent invokes voice_speak / voice_transcribe directly when it needs to produce or consume audio during regular conversation. This skill is only for setup and diagnostics.

Setup flow

  1. Call voice_status({ format: "json" }) to see current state.
  2. If no TTS backend is available, suggest in order of preference:
    • sag (recommended): "Run brew install steipete/tap/sag. It's a small wrapper around ElevenLabs with good voice-prompting conventions."
    • OpenAI TTS: "Set export OPENAI_API_KEY=... in your shell rc (~/.zshrc or ~/.bashrc). Then restart the agent."
    • macOS say: "Built in on macOS. Sounds robotic but zero setup. No action needed — will be used as fallback."
  3. If sag is installed but ELEVENLABS_API_KEY is missing, instruct: "Get a key from https://elevenlabs.io. Add export ELEVENLABS_API_KEY=sk_... to your shell rc. Restart the agent."
  4. If the user also wants STT, same logic: recommend whisper-cli (brew install whisper-cpp, offline, free) or OpenAI Whisper API (same OPENAI_API_KEY).
  5. Enable voice in config:
    • Tell the user: "I'll set voice.enabled: true in your config. Run agent_config(action='set', key='voice.enabled', value='true') or edit agent-config.json directly."
    • (You MAY call agent_config for them after they confirm.)
  6. If the sag skill is in an OpenClaw workspace (~/.openclaw/workspace*/skills/sag/), offer: "I see you have the sag skill in an OpenClaw workspace. Want me to install it into this agent? Run /agent:skill install <that path>."
  7. Mention WhatsApp precedence if the WhatsApp plugin is configured:
    • If voice_status reports whatsapp.audioEnabled: true"Your WhatsApp plugin already transcribes voice notes locally. For inbound WhatsApp audio you don't need voice_transcribe. Setting this up is for WebChat uploads, iMessage audio, outbound voice notes, etc."
    • If false"Your WhatsApp plugin doesn't transcribe by default. Either turn that on with /whatsapp:configure audio (local Whisper, free), or use our voice_transcribe per message."

Read the full file on GitHub · 85 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 85 lines · 66 tokens per session scan A 5e1dd0d62451

Subscribe to this mod's changes

voice is a skill published in the GitHub repository crisandrews/ClawCode (62 stars, last pushed 2d ago), licensed MIT. It adds 66 tokens to every session and 1,344 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

paper-illustration

Generate publication-quality AI illustrations for academic papers using Gemini image generation. Creates architecture diagrams, method illustrations with Claude-supervised iterative refinement loop. Use when user says "生成图表", "画架构图", "AI绘图", "paper illustration", "generate diagram", or needs visual figures for papers.

wanshuiyin/Auto-claude-code-research-in-sleep · 67 tokens

paper-illustration-image2

Generate publication-quality academic illustrations through a local Codex app-server bridge that uses Codex native image generation. This is a separate experimental alternative to paper-illustration, intended for Claude Code users who want a GPT-image-style renderer without modifying the original skill.

wanshuiyin/Auto-claude-code-research-in-sleep · 59 tokens

paper-poster-html

DEFAULT poster pipeline — build an academic conference poster (ICML/NeurIPS/ICLR/CVPR/...) as a single HTML/CSS file with measurement-driven hard gates, real paper figures, a two-hue design-token system, and print-ready PDF via headless Chromium. Use when the user says "做海报", "poster", "conference poster", "paper…

wanshuiyin/Auto-claude-code-research-in-sleep · 107 tokens

pixel-art

Generate pixel art SVG illustrations for READMEs, docs, or slides. Use when user says "画像素图", "pixel art", "make an SVG illustration", "README hero image", or wants a cute visual.

wanshuiyin/Auto-claude-code-research-in-sleep · 48 tokens

figure

Hybrid figure pipeline (Nano Banana raster + rembg background removal + TikZ vector assembly). Includes a TikZ template library covering quantum circuits (quantikz), Feynman diagrams (tikz-feynman), circuits (circuitikz), molecules (chemfig), 2D/3D plots (pgfplots), energy-level diagrams, phase-space trajectories…

Muuuun/luxas · 104 tokens

spotify

Control Spotify playback — play, pause, skip, search, and queue tracks. Use when: user asks to play music, search for songs, control playback, or manage Spotify queue. NOT for: downloading music, non-Spotify services (Apple Music, YouTube Music), or audio file playback.

ericwang915/PythonClaw · 62 tokens