name: text-to-voice-local description: Local text-to-voice generation for OpenClaw workspaces using a canonical txt-to-mp3 pipeline. Use when the user wants to turn any prepared text into voice, asks to set up or reuse a local text-to-speech workflow, wants one canonical output mp3 path, wants a reusable wrapper for Telegram voice delivery, or wants to replicate the same text-to-voice setup on another OpenClaw instance.
Use the bundled scripts to create one stable local text-to-voice path.
Produce voice from any text file with: - one canonical input text path, - one canonical output mp3 path, - one high-level wrapper for routine use, - low-level scripts for debugging only.
Default input text:
- tmp/text-to-voice-input.txt
Canonical output:
- tmp/voice-mode-latest.mp3
State directory:
- skills/text-to-voice-local/state/
State pointer:
- skills/text-to-voice-local/state/last-output.txt
For normal use, run:
- scripts/text_to_voice.sh voice <text-file> [voice] [max_direct_chars]
Useful helpers:
- scripts/text_to_voice.sh status
- scripts/text_to_voice.sh voices
status now also checks runtime dependencies and prints install hints when something is missing.
Examples:
scripts/text_to_voice.sh text
scripts/text_to_voice.sh voice ./tmp/text-to-voice-input.txt
scripts/text_to_voice.sh voice ./tmp/text.txt ru-RU-SvetlanaNeural 280
scripts/text_to_voice.shscripts/tts_from_file.shscripts/tts_from_file_chunked.shscripts/voice_reply.shscripts/voice_reply_latest.shstate/text-to-voice.jsonscripts/edge_tts.jsEnsure these dependencies exist on the target machine:
- node
- ffmpeg
- node-edge-tts
The skill checks these at runtime and, if something is missing, prints suggested install commands instead of failing silently.
Verify:
node -v
ffmpeg -version
node -e "require('node-edge-tts'); console.log('node-edge-tts ok')"
If node-edge-tts is missing:
npm i -g node-edge-tts本技能來自小蔥技能站7w4.net。
tmp/ exists.Minimal setup:
chmod +x skills/text-to-voice-local/scripts/*.sh
mkdir -p tmp
skills/text-to-voice-local/scripts/text_to_voice.sh voice ./tmp/text-to-voice-input.txt
If the result is sent as Telegram voice, send only the canonical file:
- ./tmp/voice-mode-latest.mp3
Prefer sending text and voice as separate messages.
Progress printed by shell scripts is useful in terminal diagnostics, but chat-side live progress editing depends on OpenClaw preview streaming, not shell stdout alone.
Use low-level scripts only for debugging or careful manual control. Default to the high-level wrapper unless there is a reason not to.
這是一款質量較好的本地語音合成工具,能把文字轉成語音。它最大的優點是使用簡單、依賴檢查到位、安裝遷移文件詳細,遇到問題會主動提示解決方法。進度條功能讓等待過程不那麼無聊。不足之處是進度條實際上是假的等待動畫,另外依賴微軟線上語音服務,在某些網路環境下可能不穩定。總體來說,這是一個成熟可用的語音工具,適合需要頻繁製作語音內容的使用者。