← Back to Skills Marketplace
840
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install windows-tts-wsl2
Description
在 Windows 11 上"直接发声"的 TTS(从 WSL2/TUI 调用 powershell.exe + System.Speech)。适用于用户说"说出来/读出来/语音播报/用TTS",或反馈"没声音/tts 生成的 mp3 是空的/播不出来",以及需要中文语音但 OpenClaw 内置 tts 不可用时。
Usage Guidance
This skill is coherent and will play speech through Windows as advertised, but it currently treats the text you ask it to speak as a PowerShell double‑quoted string and does not neutralize PowerShell variable or subexpression syntax. That means a crafted message (e.g., containing $env:..., $(...), etc.) could cause PowerShell to evaluate code on your Windows host. Before installing/use: (1) Only run this skill in trusted environments and avoid feeding untrusted text to it. (2) Prefer a patched version of say.sh that safely passes the text to PowerShell (for example: use single-quoted here-strings or -EncodedCommand, or otherwise escape/encode $ and $( ) so no interpolation happens). (3) If you want to proceed comfortably, ask the maintainer to fix the script to treat text as a literal string (e.g., use $s.Speak(@'... '@) or use powershell -EncodedCommand with base64), and add an explicit OS requirement for WSL/Windows in the metadata.
Capability Analysis
Type: OpenClaw Skill
Name: windows-tts-wsl2
Version: 1.1.1
The skill bundle is classified as suspicious due to a critical shell injection vulnerability in `scripts/say.sh`. The script constructs a PowerShell command using user-provided input for `--voice`, `--rate`, `--volume`, and the main text, but the input sanitization (using `sed 's/"/`"/g'`) is insufficient. This allows an attacker to inject arbitrary PowerShell commands by including characters like semicolons (`;`) in the input, potentially leading to remote code execution on the Windows host via WSL2.
Capability Assessment
Purpose & Capability
Name, description, SKILL.md and the two scripts all consistently implement 'call Windows System.Speech from WSL' to play audio on the Windows default device. The functionality and required actions are proportional to the stated purpose.
Instruction Scope
The runtime instructions and scripts execute powershell.exe on the Windows host (expected for this skill). However, user-provided TEXT is embedded into a PowerShell double‑quoted string (\$s.Speak("$TEXT_ESC");) without escaping PowerShell variable/subexpression syntax ($, $(), ${}, etc.). That allows an input containing $var or $(...) to be interpreted by PowerShell and run arbitrary code on Windows. The SKILL.md mentions escaping $ to avoid bash expansion (a different issue) but does not warn about or mitigate PowerShell interpolation risk.
Install Mechanism
No install spec or external downloads; the skill is instruction + small scripts only. That is low-risk from install/source code perspective.
Credentials
The skill declares no env/credentials (correct). It implicitly requires a WSL environment with access to powershell.exe (i.e., Windows host), which the SKILL.md documents, but the registry metadata does not list an OS restriction—minor mismatch to be aware of.
Persistence & Privilege
always:false and no persistent installation or cross-skill config changes. The skill runs commands at invocation only; autonomous invocation remains platform default and is not by itself a new risk here.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install windows-tts-wsl2 - After installation, invoke the skill by name or use
/windows-tts-wsl2 - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.1.1
Fix say.sh to be standalone (remove dependency on deleted saycn.sh); keep voice/rate/volume support
v1.1.0
Remove saycn.sh, unify to say.sh only
v1.0.0
Initial release: speak Chinese via Windows System.Speech from WSL2
Metadata
Frequently Asked Questions
What is Windows TTS (WSL2)?
在 Windows 11 上"直接发声"的 TTS(从 WSL2/TUI 调用 powershell.exe + System.Speech)。适用于用户说"说出来/读出来/语音播报/用TTS",或反馈"没声音/tts 生成的 mp3 是空的/播不出来",以及需要中文语音但 OpenClaw 内置 tts 不可用时。 It is an AI Agent Skill for Claude Code / OpenClaw, with 840 downloads so far.
How do I install Windows TTS (WSL2)?
Run "/install windows-tts-wsl2" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Windows TTS (WSL2) free?
Yes, Windows TTS (WSL2) is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Windows TTS (WSL2) support?
Windows TTS (WSL2) is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Windows TTS (WSL2)?
It is built and maintained by 547895019 (@547895019); the current version is v1.1.1.
More Skills