All skills
openai avatar

/speech

@33a75a7 official
by openaiopenai/skills28k stars
1,891

Use when the user asks for text-to-speech narration or voiceover, accessibility reads, audio prompts, or batch speech generation via the OpenAI Audio API; run the bundled CLI (`scripts/text_to_speech.py`) with built-in voices and require `OPENAI_API_KEY` for live calls. Custom voice creation is out of scope.

Use this Skill: https://skilld.dev/gh/openai/skills/speech

This session only. Nothing lands on disk.

referencesvoice-directions.md

≈539 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Voice directions

Template

Use only the lines you need. Keep directions concise and aligned to the input text.

Voice Affect: <overall character and texture>
Tone: <attitude, formality, warmth>
Pacing: <slow, steady, brisk>
Emotion: <key emotions to convey>
Pronunciation: <words to enunciate or emphasize>
Pauses: <where to insert brief pauses>
Emphasis: <key phrases to stress>
Delivery: <cadence or rhythm notes>

Best practices

  • Keep 4 to 8 short lines. Avoid conflicting instructions.
  • Prefer concrete guidance over adjectives alone.
  • Do not rewrite the input text in the instructions; only guide delivery.
  • If you need a language or accent, write the input text in that language.
  • Repeat critical constraints (for example: "slow and steady") when iterating.

Examples (short)

Calm support

Voice Affect: Calm and composed, reassuring.
Tone: Sincere and empathetic.
Pacing: Steady and moderate.
Emotion: Warmth and genuine care.
Pronunciation: Clear, with emphasis on key reassurances.
Pauses: Brief pauses after apologies and before requests.

Dramatic narrator

Voice Affect: Low and suspenseful.
Tone: Serious and mysterious.
Pacing: Slow and deliberate.
Emotion: Restrained intensity.
Emphasis: Highlight sensory details and cliffhanger lines.
Pauses: Add pauses after suspenseful moments.

Fitness instructor

Voice Affect: High energy and upbeat.
Tone: Motivational and encouraging.
Pacing: Fast and dynamic.
Emotion: Enthusiasm and momentum.
Emphasis: Stress action verbs and countdowns.

Serene guide

Voice Affect: Soft and soothing.
Tone: Calm and reassuring.
Pacing: Slow and unhurried.
Emotion: Peaceful warmth.
Pauses: Gentle pauses after breathing cues.

Robot agent

Voice Affect: Monotone and mechanical.
Tone: Neutral and formal.
Pacing: Even and controlled.
Emotion: None; strictly informational.
Pronunciation: Precise and consistent.

Old-time announcer

Voice Affect: Refined and theatrical.
Tone: Formal and welcoming.
Pacing: Steady with a classic cadence.
Emotion: Warm enthusiasm.
Pronunciation: Crisp enunciation with vintage flair.

Source: SKILL.md on GitHub

1 warning16d5 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    This skill enables text-to-speech generation using the OpenAI Audio API through a bundled Python script. It supports both single and batch audio synthesis tasks, requiring an API key for execution. The skill is documented with clear usage instructions and security considerations regarding environment configuration.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: LOW · No issues

  • Runlayer7mo

    9/14 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 33a75a7. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 months ago.

Activeupdated 8 months ago
  • API
  • text-to-speech
  • openai
  • audio
  • accessibility
  • voiceover
  • tts
  • batch-processing

README badge

README badge for openai/skills/speech

Generates spoken audio from text using the OpenAI Audio API, supporting single clips or batch jobs via a bundled Python CLI. Includes built-in voices (cedar, marin) and instruction templates for narration, demo voiceovers, IVR prompts, and accessibility reads; requires OPENAI_API_KEY and limits input to 4096 characters per request.

Generated from the current SKILL.md.

What models and voices does this skill support?
The skill defaults to gpt-4o-mini-tts-2025-12-15 and built-in OpenAI voices (cedar and marin are the defaults). Custom voice creation is out of scope. Other models can be used but instructions are only supported on GPT-4o mini TTS, not tts-1 or tts-1-hd.
Do I need an API key to use this skill?
Yes. You must set OPENAI_API_KEY as an environment variable before making any live API call. The skill will guide you through creating a key in the OpenAI platform UI if needed.
What are the input limits and rate limits?
Text input is capped at 4096 characters per request (longer text must be split into chunks). The skill enforces a 50 requests/minute rate limit.
Can I generate speech in batch?
Yes. For multiple lines or files, the skill supports batch mode by writing a temporary JSONL file, running it once, then cleaning up. Single clips use the single-clip workflow.
Where are output files saved?
Final outputs are written to output/speech/ by default. Intermediate batch files are created in tmp/speech/ and deleted after processing.

Generated from the current SKILL.md. These answers refresh after source changes.