# Send TTS AutoPlay with Wake Word to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
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.
```
### Upgrade existing

```text
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.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "tts-autoplay",
    "name": "TTS AutoPlay with Wake Word",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/WangZjhz/tts-autoplay",
    "canonicalUrl": "https://clawhub.ai/WangZjhz/tts-autoplay",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/tts-autoplay",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tts-autoplay",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "examples/config-example.json",
      "README.md",
      "SKILL.md",
      "WAKE-WORD-DESIGN.md",
      "WAKE-WORD-SUMMARY.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/tts-autoplay"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/tts-autoplay",
    "downloadUrl": "https://openagent3.xyz/downloads/tts-autoplay",
    "agentUrl": "https://openagent3.xyz/skills/tts-autoplay/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tts-autoplay/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tts-autoplay/agent.md"
  }
}
```
## Documentation

### 🔊 TTS AutoPlay Skill v2.0 - with Wake Word Detection

Automatically play TTS voice files only when wake words are detected in user messages.

### What's New in v2.0

🎯 Wake Word Detection - Only plays audio when triggered
📝 Smart Filtering - Text-only responses by default
🔊 On-Demand Voice - Say "语音" or "voice" to enable
⚙️ Configurable - Customize your wake words

### Chinese

语音
念出来
读出来
播放语音
用语音
说出来
讲出来
念给我听

### English

voice
speak
read it
say it
read aloud

### 1. Configure TTS (Tagged Mode)

Edit ~/.openclaw/openclaw.json:

{
  "messages": {
    "tts": {
      "auto": "tagged",  // Changed from "always"
      "provider": "edge",
      "edge": {
        "enabled": true,
        "voice": "zh-CN-XiaoxiaoNeural",
        "lang": "zh-CN"
      }
    }
  }
}

### 2. Install & Start

# Install skill
clawhub install tts-autoplay
cd skills/tts-autoplay

# Install
powershell -ExecutionPolicy Bypass -File install.ps1

# Start with wake word detection
powershell -ExecutionPolicy Bypass -File tts-autoplay-wakeword.ps1

### 3. Test

Text-only (default):

你：今天天气怎么样？
AI: [文字] 今天杭州晴朗...

Voice (with wake word):

你：用语音告诉我天气
AI: [语音] 今天杭州晴朗...

### Mode 1: Tagged Mode (Recommended)

TTS only generates audio when [[tts]] tag is present.

Config:

{ "messages": { "tts": { "auto": "tagged" } } }

AI Behavior:

Detects wake words in user message
Adds [[tts]] tag to response
Voice is generated and played

### Mode 2: Always Mode (v1.0)

TTS always generates audio for every response.

Config:

{ "messages": { "tts": { "auto": "always" } } }

Script Behavior:

Script detects wake words in file path
Only plays audio if wake word detected
Skips playback for normal messages

### Change Wake Words

Edit tts-autoplay-wakeword.ps1:

$wakeWords = @(
    "语音",
    "念出来",
    "读出来",
    "你的自定义词"  # Add your own
)

### Change Detection Mode

Keyword mode (default):

# Matches if any wake word appears in filename
if ($fileName -match $word) { ... }

Exact mode:

# Only matches exact directory names
if ($file.Directory.Name -eq $word) { ... }

### Add Time-Based Control

# Disable voice at night
$hour = (Get-Date).Hour
if ($hour -lt 8 -or $hour -ge 23) {
    Write-Log "Night mode: Voice disabled"
    return
}

### File Structure

tts-autoplay/
├── SKILL.md                          # Skill metadata
├── README.md                         # This file
├── WAKE-WORD-DESIGN.md              # Wake word design doc
├── tts-autoplay.ps1                 # Basic auto-play (v1.0)
├── tts-autoplay-wakeword.ps1        # With wake word (v2.0)
├── install.ps1                      # Installation script
├── uninstall.ps1                    # Uninstallation script
├── start.bat                        # Windows launcher
└── examples/
    └── config-example.json          # Config examples

### Example 1: Weather Query

Without wake word:

User: 今天天气如何？
AI: [Text only] 今天杭州晴朗，气温 25 度。

With wake word:

User: 用语音告诉我天气
AI: [Voice] 今天杭州晴朗，气温 25 度。

### Example 2: News Reading

User: 念一下今天的新闻
AI: [Voice] 好的，今天的主要新闻有...

### Example 3: Story Time

User: 讲个故事给我听
AI: [Voice] 从前有座山...

### Voice Always Plays

Issue: Wake word detection not working

Solution:

Check script is tts-autoplay-wakeword.ps1 (not basic version)
Verify wake words in script
Check log file for detection messages

### Voice Never Plays

Issue: Wake words not detected

Solution:

Test with exact wake words from list
Check TTS config is tagged mode
Verify AI is adding [[tts]] tags

### Script Errors

Error: Execution Policy

Solution:

powershell -ExecutionPolicy Bypass -File "tts-autoplay-wakeword.ps1"

### Performance

CPU: <1% (idle), <5% (detecting)
Memory: <50MB
Detection latency: <1 second
False positive rate: <1% (with default words)

### Security & Privacy

✅ Local file monitoring only
✅ No external API calls
✅ No data collection
✅ Wake words stored locally

### Comparison

Featurev1.0 (Always)v2.0 (Wake Word)Voice on every message✅❌Wake word detection❌✅Text-only mode❌✅Configurable triggers❌✅Battery friendly❌✅Best forTesting/DemoDaily use

### ✅ Good for Wake Word Mode

Daily conversations (mostly text)
Office environments (quiet needed)
Battery-powered devices
Multi-user scenarios
Accessibility (on-demand voice)

### ✅ Good for Always Mode

Testing TTS setup
Visually impaired users
Driving scenarios
Hands-free operation

### Multi-Language Support

$wakeWords = @{
    'zh-CN' = @('语音', '念出来', '读出来')
    'en-US' = @('voice', 'speak', 'read it')
    'ja-JP' = @('音声', '読んで')
}

### Context-Aware Detection

# Only enable voice for specific topics
if ($userMessage -match '新闻 | 故事 | 文章') {
    $enableVoice = $true
}

### User Preferences

# Load user-specific wake words
$config = Get-Content "user-config.json" | ConvertFrom-Json
$wakeWords = $config.wakeWords

### License

MIT License

### Credits

Author: ZhaoZhao (爪爪)
Inspired by: OpenClaw community
TTS: Microsoft Edge TTS

### v2.0.0 (2026-02-27)

✅ Wake word detection
✅ Tagged mode support
✅ Configurable trigger words
✅ Smart filtering
✅ Improved logging

### v1.0.0 (2026-02-27)

✅ Initial release
✅ Basic auto-play
✅ File monitoring
✅ WMPlayer integration

Enjoy smart voice playback! 🎉

For detailed wake word design, see WAKE-WORD-DESIGN.md.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: WangZjhz
- Version: 2.0.1
## Source health
- Status: healthy
- Source download looks usable.
- Yavira can redirect you to the upstream package for this source.
- Health scope: source
- Reason: direct_download_ok
- Checked at: 2026-04-30T16:55:25.780Z
- Expires at: 2026-05-07T16:55:25.780Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/tts-autoplay)
- [Send to Agent page](https://openagent3.xyz/skills/tts-autoplay/agent)
- [JSON manifest](https://openagent3.xyz/skills/tts-autoplay/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/tts-autoplay/agent.md)
- [Download page](https://openagent3.xyz/downloads/tts-autoplay)