Telegram Voice Messaging Recovery
v1.1.0Complete offline voice system with high-quality Lessac TTS and faster-whisper speech recognition. Provides natural voice conversations without internet. Use...
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The README/SKILL.md and scripts consistently implement a local helper runtime for faster-whisper (STT) and edge-tts (TTS) and the config changes described align with restoring OpenClaw's Microsoft provider. However the skill repeatedly claims 'offline' operation and 'no Azure API key required' while relying on edge-tts (which calls Microsoft-hosted TTS endpoints) and faster-whisper model downloads from HuggingFace. That is a substantive mismatch: the implementation expects network access and external downloads, so the 'complete offline' claim is false/misleading.
Instruction Scope
SKILL.md instructs the agent to run scripts/install.sh which: check for python3/pip3/ffmpeg, run apt-get if missing, create a venv, pip install packages, write files into ~/.openclaw/tts (many code paths hardcode /root/.openclaw/tts). The runtime instructions do not read unrelated secrets or exfiltrate data, but they do perform system package installs and write into root-scoped paths if executed as root. They also insert a venv site-packages path into sys.path at runtime, which affects import resolution.
Install Mechanism
There is no registry 'install' spec, but the included install.sh will create a Python virtualenv and pip-install packages (faster-whisper, edge-tts, soundfile) and uses apt-get to install system packages. No external arbitrary archive downloads are used in the installer (no untrusted URLs), but faster-whisper will itself download model files from HuggingFace at runtime which requires network and large disk usage.
Credentials
The skill does not declare or request credentials. It reads optional env vars (OPENCLAW_EDGE_TTS_VOICE, RATE, PITCH, VOLUME) which are appropriate for customizing TTS. No unrelated secrets or credentials are requested. However many paths in code are hardcoded to /root/.openclaw/tts and the venv Python path (.../venv/lib/python3.11/site-packages), which assumes root and Python 3.11 and may be inappropriate on other systems.
Persistence & Privilege
The skill does not request always:true and does not autonomously rewrite other skills; it installs persistent files into the OpenClaw runtime directory (~/.openclaw/tts). That persistent presence is expected for a helper runtime, but the use of absolute root paths (e.g., /root/.openclaw/tts) and system package installs via apt-get mean the installer will need elevated privileges on many systems and could affect system state outside the user's home directory.
What to consider before installing
This package mostly does what it claims (installs a local faster-whisper wrapper and an edge-tts helper and suggests the OpenClaw config lines). Before installing: 1) Note the mismatch — it is not truly offline: edge-tts uses Microsoft-hosted endpoints and faster-whisper may download models from HuggingFace, so network access and bandwidth/storage are required. 2) Review install.sh — it may run apt-get (requires root) and pip install packages; consider running in a container or VM first. 3) Be aware of hardcoded /root/.openclaw/tts and Python-3.11 venv paths in the scripts; on non-root systems you may need to adjust INSTALL_DIR or edit scripts to avoid permission issues. 4) Back up your OpenClaw config before changing plugin settings and perform the manual gateway restart the skill recommends. 5) If you need truly offline TTS, this skill does not provide a fully local model-based TTS engine; verify whether network calls are acceptable in your environment. If you want, provide the exact runtime user account and OpenClaw install layout and I can point out which lines in the scripts you should edit to make paths and Python versions safe for your environment.Like a lobster shell, security has layers — review code before you run it.
latest
Telegram Voice Messaging Recovery
This skill exists to restore a known-good OpenClaw native voice messaging setup.
What it restores
- local
faster-whispertranscription helper in~/.openclaw/tts - local Python virtualenv with
faster-whisper,edge-tts, andsoundfile - helper scripts for local testing
- working OpenClaw config for native Telegram voice-note replies
- explicit bundled Microsoft speech plugin enablement
What it does not do
- It does not manually send Telegram voice messages itself.
- It does not replace OpenClaw native reply routing.
- It does not require a separate Azure TTS API key.
Known-good OpenClaw config
Keep the live routing in openclaw.json:
"messages": {
"ackReactionScope": "group-mentions",
"tts": {
"auto": "inbound",
"provider": "microsoft",
"providers": {
"microsoft": {
"voice": "en-IE-ConnorNeural",
"lang": "en-IE"
}
}
}
}
And explicitly enable the bundled Microsoft plugin:
"plugins": {
"entries": {
"microsoft": {
"enabled": true
}
}
}
Important note
edge is a legacy alias. Current OpenClaw normalizes that path to microsoft.
Required restart
After applying the config, do a real manual gateway restart.
A hot reload / SIGUSR1 is not enough if the Microsoft speech provider is stale or unregistered.
Files restored
transcribe-audiovoice_handler.pytts_edge_wrapper.pyvoice_integration.sh- Python virtualenv with the required packages
Install
cd /root/.openclaw/workspace/skills/lessac_offline_voice_system
./scripts/install.sh
Verify
- Test direct TTS.
- Send a short Telegram voice note.
- Confirm inbound transcription works.
- Confirm outbound reply comes back as audio.
Failure signature this skill is meant to fix
- inbound transcription works
- outbound TTS reply fails
- direct TTS reports:
microsoft: no provider registeredopenai: not configured
Comments
Loading comments...
