skill-openai-tts-tool
CLI tool for OpenAI text-to-speech synthesis
What this skill does
# When to use - When you need to convert text to speech using OpenAI's TTS API - When you need to list available voices and models - When you need to check API configuration # OpenAI TTS Tool Skill ## Purpose A comprehensive CLI utility for text-to-speech synthesis using OpenAI's advanced TTS models. Supports multiple voices, languages, and output formats with professional-grade audio quality. ## When to Use This Skill **Use this skill when:** - Converting text documents to audio for accessibility - Creating voice-overs for presentations or videos - Generating speech samples for testing or development - Batch processing multiple text inputs to audio - Needing high-quality TTS with natural-sounding voices **Do NOT use this skill for:** - Real-time streaming TTS (this tool processes complete text) - Voice cloning or custom voice creation - Speech recognition or transcription - Audio editing or post-processing ## CLI Tool: openai-tts-tool A modern Python CLI tool for accessing OpenAI's Text-to-Speech API with comprehensive features including multiple voice models, configurable output formats, and extensive customization options. ### Installation ```bash # Clone repository git clone https://github.com/dnvriend/openai-tts-tool.git cd openai-tts-tool # Install with mise mise use -g [email protected] uv sync uv tool install . # Or run locally uv run openai-tts-tool --help ``` ### Prerequisites - Python 3.14+ installed - OpenAI API key (set as OPENAI_API_KEY environment variable) - `mise` for Python version management (recommended) - `uv` package manager for modern Python dependency management ### Quick Start ```bash # Basic text-to-speech conversion openai-tts-tool synthesize "Hello, world!" # Check API configuration openai-tts-tool info # List available voices openai-tts-tool list-voices ``` ## Progressive Disclosure <details> <summary><strong>๐ Core Commands (Click to expand)</strong></summary> ### synthesize - Convert Text to Speech The primary command for converting text input into high-quality audio files using OpenAI's TTS models. **Usage:** ```bash openai-tts-tool synthesize TEXT [OPTIONS] ``` **Arguments:** - `TEXT`: The text content to convert to speech (required). Can be a single word, sentence, or full paragraph. **Options:** - `--voice VOICE` / `-V VOICE`: Select voice model (default: alloy) - Available voices: alloy, echo, fable, onyx, nova, shimmer - `--model MODEL` / `-m MODEL`: Choose TTS model (default: tts-1) - `tts-1`: Standard quality, lower latency - `tts-1-hd`: Higher quality, slightly higher cost - `--output FILE` / `-o FILE`: Output audio file path (default: output.mp3) - Supports: .mp3, .wav, .ogg, .flac formats - `--speed SPEED` / `-s SPEED`: Speech playback speed (default: 1.0) - Range: 0.25 (very slow) to 4.0 (very fast) - Recommended: 0.8-1.2 for natural speech **Examples:** ```bash # Basic usage with default settings openai-tts-tool synthesize "Welcome to our presentation" # Use specific voice and output file openai-tts-tool synthesize "Chapter 1: Introduction" \ --voice nova \ --output chapter1.mp3 # High-quality model with slower speech openai-tts-tool synthesize "Important safety information" \ --model tts-1-hd \ --speed 0.8 \ --voice onyx # Multiple sentences for narration openai-tts-tool synthesize "In today's lecture, we will explore the fascinating world of artificial intelligence and its impact on modern society." \ --voice shimmer \ --output narration.mp3 # Batch processing (loop in shell) for text in "Hello" "Goodbye" "Thank you"; do openai-tts-tool synthesize "$text" --output "${text}.mp3" done ``` **Output:** Generates an audio file in the specified format containing the synthesized speech. The file quality and characteristics depend on the selected model and voice options. --- ### list-voices - Display Available Voices List all available OpenAI TTS voice models with their characteristics and language support. **Usage:** ```bash openai-tts-tool list-voices [OPTIONS] ``` **Options:** - `--format FORMAT` / `-f FORMAT`: Output display format - `table`: Human-readable table format (default) - `json`: Machine-readable JSON format for scripting **Examples:** ```bash # Show voices in table format openai-tts-tool list-voices # Export voice information to JSON openai-tts-tool list-voices --format json > voices.json # Filter for English voices using jq openai-tts-tool list-voices --format json | \ jq '.[] | select(.language | startswith("en"))' # Get voice descriptions only openai-tts-tool list-voices --format json | \ jq -r '.[] | "\(.name): \(.description)"' ``` **Output:** Returns a list of available voices including: - Voice name (alloy, echo, fable, onyx, nova, shimmer) - Description of voice characteristics - Supported languages and accents - Recommended use cases --- ### list-models - Display Available TTS Models Show all available OpenAI TTS models with their specifications and capabilities. **Usage:** ```bash openai-tts-tool list-models [OPTIONS] ``` **Options:** - `--format FORMAT` / `-f FORMAT`: Output display format - `table`: Human-readable table format (default) - `json`: Machine-readable JSON format for scripting **Examples:** ```bash # Show models in table format openai-tts-tool list-models # Export model information to JSON openai-tts-tool list-models --format json > models.json # Compare model capabilities openai-tts-tool list-models --format json | \ jq '.[] | {name: .name, quality: .quality, latency: .latency}' # Get HD model information only openai-tts-tool list-models --format json | \ jq '.[] | select(.name | contains("hd"))' ``` **Output:** Returns available TTS models including: - Model identifier (tts-1, tts-1-hd) - Audio quality characteristics - Latency and performance information - Cost differences and use case recommendations --- ### info - System Configuration and Status Display current configuration, API key status, and system information. **Usage:** ```bash openai-tts-tool info [OPTIONS] ``` **Options:** - `--format FORMAT` / `-f FORMAT`: Output display format - `table`: Human-readable table format (default) - `json`: Machine-readable JSON format for scripting **Examples:** ```bash # Show basic system information openai-tts-tool info # Check API key status for automation openai-tts-tool info --format json | jq '.api_key.status' # Verify configuration before batch processing if openai-tts-tool info --format json | jq -e '.api_key.valid'; then echo "API key valid, starting batch processing..." else echo "API key invalid, please check configuration" fi # Get version information openai-tts-tool info --format json | jq '.version' ``` **Output:** Returns system configuration including: - API key validation status - Tool version information - Supported output formats - Network connectivity status - Rate limiting information --- ### completion - Shell Auto-Completion Generate shell completion scripts to enable tab completion for bash, zsh, and fish shells. **Usage:** ```bash openai-tts-tool completion SHELL ``` **Arguments:** - `SHELL`: Target shell type (required) - `bash`: Generate bash completion script - `zsh`: Generate zsh completion script - `fish`: Generate fish completion script **Examples:** ```bash # Generate bash completion and eval immediately eval "$(openai-tts-tool completion bash)" # Save completion to permanent file openai-tts-tool completion zsh > ~/.oh-my-zsh/completions/_openai-tts-tool # Install fish completion openai-tts-tool completion fish > ~/.config/fish/completions/openai-tts-tool.fish # Add to bashrc for permanent installation echo 'eval "$(openai-tts-tool completion bash)"' >> ~/.bashrc # Test completion generation openai-tts-tool completion bash | head -10 ``` **Output:** Returns a shell-specific completion script that provides: - Command and subcommand completion - Option flag completion - Argument suggestions where applicable - Help text display
Related in Image & Video
watch
IncludedWatch a video (URL or local path). Downloads with yt-dlp, extracts auto-scaled frames with ffmpeg, pulls the transcript from captions (or Whisper API fallback), and hands the result to Claude so it can answer questions about what's in the video.
physical-ai-defect-image-generation
IncludedUse when the user wants to orchestrate defect image generation, run associated setup, or handle outputs on OSMO. The Day 0 path handles cold-start with USD-to-ROI, image-edit augmentation, and AnomalyGen to create initial PCBA datasets. The Day 1 path performs inference and labeling on real images. This skill helps with first-time asset setup, creation of finetuning checkpoints, and configuring deployment. Trigger keywords: defect image generation, dig workflow, dig pipeline, defect image detection workflow, aoi pipeline, aoi anomalygen, usd2roi anomalygen, day 0 pcba, day 1 pcba, day 1 real-photo alignment, day 1 manual roi, metal surface anomaly, glass defect, anomalygen finetune, setup_pcb, setup_metal, setup_glass, setup_pretrained, dig setup, dig datasets, dig pretrained checkpoint, dig image-edit endpoint.
accelint-react-best-practices
IncludedReact performance optimization and best practices. ALWAYS use this skill when working with any React code - writing components, hooks, JSX; refactoring; optimizing re-renders, memoization, state management; reviewing for performance; fixing hydration mismatches; debugging infinite re-renders, stale closures, input focus loss, animations restarting; preventing remounting; implementing transitions, lazy initialization, effect dependencies. Even simple React tasks benefit from these patterns. Covers React 19+ (useEffectEvent, Activity, ref props). Triggers - useEffect, useState, useMemo, useCallback, memo, inline components, nested components, components inside components, re-render, performance, hydration, SSR, Next.js, useDeferredValue, combined hooks.
elevenlabs-agents
IncludedBuild conversational AI voice agents with ElevenLabs Platform using React, JavaScript, React Native, or Swift SDKs. Configure agents, tools (client/server/MCP), RAG knowledge bases, multi-voice, and Scribe real-time STT. Use when: building voice chat interfaces, implementing AI phone agents with Twilio, configuring agent workflows or tools, adding RAG knowledge bases, testing with CLI "agents as code", or troubleshooting deprecated @11labs packages, Android audio cutoff, CSP violations, dynamic variables, or WebRTC config. Keywords: ElevenLabs Agents, ElevenLabs voice agents, AI voice agents, conversational AI, @elevenlabs/react, @elevenlabs/client, @elevenlabs/react-native, @elevenlabs/elevenlabs-js, @elevenlabs/agents-cli, elevenlabs SDK, voice AI, TTS, text-to-speech, ASR, speech recognition, turn-taking model, WebRTC voice, WebSocket voice, ElevenLabs conversation, agent system prompt, agent tools, agent knowledge base, RAG voice agents, multi-voice agents, pronunciation dictionary, voice speed control, elevenlabs scribe, @11labs deprecated, Android audio cutoff, CSP violation elevenlabs, dynamic variables elevenlabs, case-sensitive tool names, webhook authentication
humanizer
IncludedHumanize AI-generated text by detecting and removing patterns typical of LLM output. Rewrites text to sound natural, specific, and human. Uses 28 pattern detectors, 560+ AI vocabulary terms across 3 tiers, and statistical analysis (burstiness, type-token ratio, readability) for comprehensive detection. Use when asked to humanize text, de-AI writing, make content sound more natural/human, review writing for AI patterns, score text for AI detection, or improve AI-generated drafts. Covers content, language, style, communication, and filler categories.
generating-mermaid-diagrams
IncludedSalesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, OAuth flows, ERDs, integration sequences, or Agentforce structure. TRIGGER when: user says "diagram", "visualize", "ERD", or asks for sequence diagrams, flowcharts, class diagrams, or architecture visualizations in Mermaid. DO NOT TRIGGER when: user wants PNG/SVG image output (use generating-visual-diagrams), or asks about non-Salesforce systems.