Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Local text-to-speech using Piper voices via sherpa-onnx. 100% offline, no API keys required. Use when user asks for a voice reply, audio response, spoken answer, or wants to hear something read aloud. Supports multiple languages including German (thorsten) and English (ryan) voices. Outputs Telegram-compatible voice notes with [[audio_as_voice]] tag.
Local text-to-speech using Piper voices via sherpa-onnx. 100% offline, no API keys required. Use when user asks for a voice reply, audio response, spoken answer, or wants to hear something read aloud. Supports multiple languages including German (thorsten) and English (ryan) voices. Outputs Telegram-compatible voice notes with [[audio_as_voice]] tag.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Generate voice audio replies using local Piper TTS via sherpa-onnx. Completely offline, no cloud APIs needed.
100% Local - No internet connection required after setup No API Keys - Free to use, no accounts needed Multi-language - German and English voices included Telegram Ready - Outputs voice notes that display as bubbles Auto-detect Language - Automatically selects voice based on text
sherpa-onnx runtime installed Piper voice models downloaded ffmpeg for audio conversion
cd scripts sudo ./install.sh
1. Install sherpa-onnx sudo mkdir -p /opt/sherpa-onnx cd /opt/sherpa-onnx curl -L -o sherpa.tar.bz2 "https://github.com/k2-fsa/sherpa-onnx/releases/download/v1.12.23/sherpa-onnx-v1.12.23-linux-x64-shared.tar.bz2" sudo tar -xjf sherpa.tar.bz2 --strip-components=1 rm sherpa.tar.bz2 2. Download Voice Models sudo mkdir -p /opt/piper-voices cd /opt/piper-voices # German - thorsten (medium quality, natural male voice) curl -L -o thorsten.tar.bz2 "https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-piper-de_DE-thorsten-medium.tar.bz2" sudo tar -xjf thorsten.tar.bz2 && rm thorsten.tar.bz2 # English - ryan (high quality, clear US male voice) curl -L -o ryan.tar.bz2 "https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-piper-en_US-ryan-high.tar.bz2" sudo tar -xjf ryan.tar.bz2 && rm ryan.tar.bz2 3. Install ffmpeg sudo apt install -y ffmpeg 4. Set Environment Variables Add to your OpenClaw service or shell: export SHERPA_ONNX_DIR="/opt/sherpa-onnx" export PIPER_VOICES_DIR="/opt/piper-voices"
{baseDir}/bin/voice-reply "Text to speak" [language]
ParameterDescriptionDefaulttextThe text to convert to speech(required)languagede for German, en for Englishauto-detect
# German (explicit) {baseDir}/bin/voice-reply "Hallo, ich bin dein Assistent!" de # English (explicit) {baseDir}/bin/voice-reply "Hello, I am your assistant!" en # Auto-detect (detects German from umlauts and common words) {baseDir}/bin/voice-reply "Guten Tag, wie geht es dir?" # Auto-detect (defaults to English) {baseDir}/bin/voice-reply "The weather is nice today."
The script outputs two lines that OpenClaw processes for Telegram: [[audio_as_voice]] MEDIA:/tmp/voice-reply-output.ogg [[audio_as_voice]] - Tag that tells Telegram to display as voice bubble MEDIA:path - Path to the generated OGG Opus audio file
LanguageVoiceQualityDescriptionGerman (de)thorstenmediumNatural male voice, clear pronunciationEnglish (en)ryanhighClear US male voice, professional tone
Browse available Piper voices at: https://rhasspy.github.io/piper-samples/ https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models Download and extract to $PIPER_VOICES_DIR, then modify the script to include the new voice.
Ensure SHERPA_ONNX_DIR is set and contains bin/sherpa-onnx-offline-tts.
Check that voice model files exist: *.onnx, tokens.txt, espeak-ng-data/
Ensure the output includes [[audio_as_voice]] tag on its own line before the MEDIA: line.
sherpa-onnx - Offline speech processing Piper - Fast local TTS voices Thorsten Voice - German voice dataset
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.