skills$openclaw/tts-whatsapp
hopyky3.0kโ˜…

by hopyky

tts-whatsapp โ€“ OpenClaw Skill

tts-whatsapp is an OpenClaw Skills integration for design workflows. Send high-quality text-to-speech voice messages on WhatsApp in 40+ languages with automatic delivery

3.0k stars5.1k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026design

Skill Snapshot

nametts-whatsapp
descriptionSend high-quality text-to-speech voice messages on WhatsApp in 40+ languages with automatic delivery OpenClaw Skills integration.
ownerhopyky
repositoryhopyky/tts-whatsapp
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @hopyky/tts-whatsapp
last updatedFeb 7, 2026

Maintainer

hopyky

hopyky

Maintains tts-whatsapp in the OpenClaw Skills directory.

View GitHub profile
File Explorer
6 files
.
_meta.json
276 B
CHANGELOG.md
1.9 KB
INSTALL.md
6.0 KB
LANGUAGES.md
7.0 KB
README.md
6.5 KB
SKILL.md
3.2 KB
SKILL.md

name: tts-whatsapp version: 1.0.0 description: Send high-quality text-to-speech voice messages on WhatsApp in 40+ languages with automatic delivery user-invocable: true disable-model-invocation: false tags:


๐ŸŽ™๏ธ TTS WhatsApp - Voice Messages in 40+ Languages

Send high-quality text-to-speech voice messages on WhatsApp with automatic delivery. Supports 40+ languages, personal messages, and group broadcasts.

โœจ Features

  • ๐ŸŽ™๏ธ High-quality TTS powered by Piper (40+ languages)
  • ๐ŸŽต Automatic conversion to OGG/Opus (WhatsApp format)
  • ๐Ÿ“ค Automatic sending via Clawdbot
  • ๐Ÿ‘ฅ Group support - Send to individuals or WhatsApp groups
  • ๐ŸŒ Multi-language - French, English, Spanish, German, and 40+ more
  • ๐Ÿงน Smart cleanup - Auto-delete files after successful send
  • โšก Fast - ~2-3s from command to delivery

๐Ÿ“ฆ Prerequisites

  1. Piper TTS: pip3 install --user piper-tts
  2. FFmpeg: brew install ffmpeg (macOS) or apt install ffmpeg (Linux)
  3. Voice models: Download from Hugging Face
    • Place in ~/.clawdbot/skills/piper-tts/models/
    • Example: fr_FR-siwis-medium.onnx

๐Ÿš€ Quick Start

Basic usage

tts-whatsapp "Hello, this is a test" --target "+15555550123"

Send to WhatsApp group

tts-whatsapp "Hello everyone" --target "120363257357161211@g.us"

Change language

tts-whatsapp "Hola mundo" --lang es_ES --voice carlfm --target "+34..."

Different quality levels

tts-whatsapp "High quality" --quality high --target "+1..."

๐ŸŒ Supported Languages

  • ๐Ÿ‡ซ๐Ÿ‡ท French (fr_FR): siwis, upmc, tom
  • ๐Ÿ‡ฌ๐Ÿ‡ง English GB (en_GB): alan, alba
  • ๐Ÿ‡บ๐Ÿ‡ธ English US (en_US): lessac, amy, joe
  • ๐Ÿ‡ช๐Ÿ‡ธ Spanish (es_ES, es_MX): carlfm, davefx
  • ๐Ÿ‡ฉ๐Ÿ‡ช German (de_DE): thorsten, eva_k
  • ๐Ÿ‡ฎ๐Ÿ‡น Italian (it_IT): riccardo
  • ๐Ÿ‡ต๐Ÿ‡น Portuguese (pt_BR, pt_PT): faber
  • ๐Ÿ‡ณ๐Ÿ‡ฑ Dutch (nl_NL): mls, rdh
  • ๐Ÿ‡ท๐Ÿ‡บ Russian (ru_RU): dmitri, irina
  • And 30+ more!

Full voice list โ†’

๐Ÿ”ง Configuration

Configure in ~/.clawdbot/clawdbot.json:

{
  "skills": {
    "entries": {
      "tts_whatsapp": {
        "enabled": true,
        "env": {
          "WHATSAPP_DEFAULT_TARGET": "+15555550123",
          "PIPER_DEFAULT_LANG": "en_US",
          "PIPER_DEFAULT_VOICE": "lessac",
          "PIPER_DEFAULT_QUALITY": "medium"
        }
      }
    }
  }
}

๐ŸŽ›๏ธ All Options

--target NUMBER       WhatsApp number or group ID
--message TEXT        Text message with audio
--lang LANGUAGE       Language (default: fr_FR)
--voice VOICE         Voice name (default: auto)
--quality QUALITY     x_low, low, medium, high
--speed SPEED         Playback speed (default: 1.0)
--no-send            Don't send automatically

๐Ÿ“Š Performance

~2.3s total for a 10-second message:

  • TTS generation: ~1s
  • Format conversion: ~0.2s
  • WhatsApp delivery: ~1s

๐Ÿ“š Full Documentation

See README.md for complete documentation, examples, and troubleshooting.

README.md

๐ŸŽ™๏ธ TTS WhatsApp - Text-to-Speech Voice Messages

Send voice messages on WhatsApp with high-quality text-to-speech in 40+ languages.

โœจ Features

  • ๐ŸŽ™๏ธ High-quality TTS powered by Piper (40+ languages)
  • ๐ŸŽต Automatic conversion to OGG/Opus (WhatsApp format)
  • ๐Ÿ“ค Automatic sending via Clawdbot
  • ๐Ÿ‘ฅ Group support - Send to individuals or WhatsApp groups
  • ๐ŸŒ Multi-language - French, English, Spanish, German, and 40+ more
  • ๐Ÿงน Smart cleanup - Auto-delete files after successful send
  • โšก Fast - ~2-3s from command to delivery

๐Ÿ“ฆ Prerequisites

  1. Piper TTS installed:

    pip3 install --user piper-tts
    
  2. FFmpeg installed:

    # macOS
    brew install ffmpeg
    
    # Linux
    apt install ffmpeg  # or yum, pacman, etc.
    
  3. Piper voice models downloaded:

    • Download from Hugging Face
    • Place in ~/.clawdbot/skills/piper-tts/models/
    • Default: fr_FR-siwis-medium.onnx

๐Ÿš€ Quick Start

Basic usage (with environment variables)

tts-whatsapp "Hello, this is a test message"

Specify recipient

tts-whatsapp "Hello" --target "+15555550123"

Send to a WhatsApp group

tts-whatsapp "Hello everyone" --target "120363257357161211@g.us"

Change language

# English
tts-whatsapp "Hello world" --lang en_US --voice lessac

# Spanish
tts-whatsapp "Hola mundo" --lang es_ES --voice carlfm

# German
tts-whatsapp "Guten Tag" --lang de_DE --voice thorsten

Adjust voice quality

tts-whatsapp "High quality audio" --quality high

Generate without sending

tts-whatsapp "Test" --no-send

๐Ÿ”ง Configuration

Environment Variables

Set these in ~/.clawdbot/clawdbot.json under the skill configuration:

{
  "skills": {
    "entries": {
      "tts_whatsapp": {
        "enabled": true,
        "env": {
          "PIPER_BIN_PATH": "/path/to/piper",
          "WHATSAPP_DEFAULT_TARGET": "+15555550123",
          "PIPER_DEFAULT_LANG": "en_US",
          "PIPER_DEFAULT_VOICE": "lessac",
          "PIPER_DEFAULT_QUALITY": "medium"
        }
      }
    }
  }
}

Available Environment Variables

VariableDescriptionDefault
PIPER_BIN_PATHPath to piper executable~/Library/Python/3.9/bin/piper
WHATSAPP_DEFAULT_TARGETDefault recipient phone number or group IDNone (required)
PIPER_DEFAULT_LANGDefault language codefr_FR
PIPER_DEFAULT_VOICEDefault voice namesiwis
PIPER_DEFAULT_QUALITYDefault quality levelmedium

๐ŸŒ Supported Languages

Piper supports 40+ languages. Here are some examples:

LanguageCodeExample Voices
๐Ÿ‡ซ๐Ÿ‡ท Frenchfr_FRsiwis, upmc, tom
๐Ÿ‡ฌ๐Ÿ‡ง English (GB)en_GBalan, alba, northern_english_male
๐Ÿ‡บ๐Ÿ‡ธ English (US)en_USlessac, libritts, amy, joe
๐Ÿ‡ช๐Ÿ‡ธ Spanishes_EScarlfm, davefx
๐Ÿ‡ฒ๐Ÿ‡ฝ Spanish (MX)es_MXclaude
๐Ÿ‡ฉ๐Ÿ‡ช Germande_DEthorsten, eva_k, karlsson
๐Ÿ‡ฎ๐Ÿ‡น Italianit_ITriccardo
๐Ÿ‡ต๐Ÿ‡น Portuguese (BR)pt_BRfaber
๐Ÿ‡ต๐Ÿ‡น Portuguese (PT)pt_PTtugรฃo
๐Ÿ‡ณ๐Ÿ‡ฑ Dutchnl_NLmls, rdh
๐Ÿ‡ท๐Ÿ‡บ Russianru_RUdmitri, irina
๐Ÿ‡จ๐Ÿ‡ณ Chinesezh_CNhuayan

Full list: Piper Voice Samples

๐ŸŽ›๏ธ All Options

tts-whatsapp "text to speak" [OPTIONS]

Options:
  --target NUMBER       WhatsApp number or group ID
                        Examples: +15555550123, 120363257357161211@g.us

  --message TEXT        Text message accompanying the audio

  --lang LANGUAGE       Language code (default: fr_FR)
                        Examples: en_US, es_ES, de_DE, it_IT

  --voice VOICE         Specific voice name (default: auto per language)
                        Examples: lessac, siwis, thorsten

  --quality QUALITY     Audio quality: x_low, low, medium, high
                        Default: medium

  --speed SPEED         Playback speed (default: 1.0)
                        Examples: 0.8 (slower), 1.2 (faster)

  --no-send            Generate audio file without sending

๐Ÿ“Š How It Works

  1. Text โ†’ Speech - Piper generates high-quality audio (~1s)
  2. Convert - FFmpeg converts to OGG/Opus format (~0.2s)
  3. Send - Clawdbot sends to WhatsApp (~1s)
  4. Cleanup - File deleted after successful send

Total time: ~2.3s for a 10-second message

๐Ÿ—‘๏ธ File Management

  • Auto-delete after send - Files removed after successful WhatsApp delivery
  • Auto-cleanup old files - Files older than 24h are deleted on next run
  • Keep on error - Files preserved if sending fails

๐Ÿ’ก Examples

Personal message

tts-whatsapp "Don't forget the meeting at 3pm" --target "+15555550123"

Group announcement

tts-whatsapp "Meeting in 5 minutes!" --target "120363257357161211@g.us"

With text caption

tts-whatsapp "Important update" --message "๐Ÿ“ข Please listen"

Different language and voice

tts-whatsapp "Guten Morgen" --lang de_DE --voice thorsten --target "+491234567890"

Slow speech for learning

tts-whatsapp "Practice your pronunciation" --speed 0.7 --lang en_US

High quality for music/podcast

tts-whatsapp "Welcome to my podcast" --quality high --lang en_US --voice lessac

๐Ÿ” Troubleshooting

Model not found error

ERROR: Modรจle introuvable: ~/.clawdbot/skills/piper-tts/models/en_US-lessac-medium.onnx

Solution: Download the model from Hugging Face

No default target error

โš ๏ธ  Erreur: Aucun destinataire dรฉfini

Solution: Either set WHATSAPP_DEFAULT_TARGET in your config or use --target

Clawdbot not found

Solution: Make sure Clawdbot is installed and in your PATH

๐Ÿ“„ License

MIT License - Feel free to use and modify

๐Ÿ™ Credits

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

Configuration

Configure in `~/.clawdbot/clawdbot.json`: ```json { "skills": { "entries": { "tts_whatsapp": { "enabled": true, "env": { "WHATSAPP_DEFAULT_TARGET": "+15555550123", "PIPER_DEFAULT_LANG": "en_US", "PIPER_DEFAULT_VOICE": "lessac", "PIPER_DEFAULT_QUALITY": "medium" } } } } } ```

FAQ

How do I install tts-whatsapp?

Run openclaw add @hopyky/tts-whatsapp in your terminal. This installs tts-whatsapp into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/hopyky/tts-whatsapp. Review commits and README documentation before installing.