360 Secure SkillHub
360 安全技能中心

OpenClaw TTS Voice Switch

核心功能:修改~/.openclaw/openclaw.json的TTS参数,更换ElevenLabs语音,默认保留中文适配配置;支持语音名转voiceId,可列出可用语音/语言。典型场景:用户需更换OpenClaw网关内置TTS语音时。输入支持voiceId、语音名,可选语言码等参数;输出告知变更内容,提供验证命令。

nowloady
nowloady
热度 79.40
最近更新 2026-05-11 17:33:34
分类:自动化依赖:代码执行 / 读写文件 / 第三方 API应用场景:自动化脚本 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add openclaw-tts-voice-switch
Metadata
name
openclaw-tts-voice-switch
version
1.0.0
description
Switch OpenClaw ElevenLabs TTS voices by updating ~/.openclaw/openclaw.json, keeping Chinese-safe defaults, and restarting the gateway.
metadata
{"openclaw":{"emoji":"🔊","requires":{"bins":["bash","jq","openclaw"]}}}

OpenClaw TTS Voice Switch

Use this skill when you need to change the ElevenLabs voice used by OpenClaw Gateway built-in TTS.

Version scope:

  • Verified against OpenClaw v2026.3.13
  • Newer OpenClaw versions may change config keys, behavior, or restart flow, so this skill may not work without updates

Scope:

  • This skill only targets Gateway built-in TTS under messages.tts
  • It does not target other speech systems, external plugins, call-specific overrides, or unrelated TTS integrations

Read references/tts-parameters.md when you need parameter meanings, file paths, or language/model guidance.

Use scripts/list_voices.sh when you need the actual voices and languages available in the current ElevenLabs account.

It updates:

  • ~/.openclaw/openclaw.json
  • messages.tts.elevenlabs.voiceId

It keeps these defaults unless the user explicitly wants something else:

  • messages.tts.provider = "elevenlabs"
  • messages.tts.elevenlabs.modelId = "eleven_multilingual_v2"
  • messages.tts.elevenlabs.languageCode = "zh"

Workflow

  1. If the user asks which voices or languages are supported, run:
bash scripts/list_voices.sh
bash scripts/list_voices.sh zh
  1. Confirm the target voice name or voiceId.
  2. If only a voice name is given, resolve it to a voiceId from the script output.
  3. Run:
bash scripts/switch_tts_voice.sh "<voiceId>"
bash scripts/switch_tts_voice.sh "<voiceId>" "<languageCode>"
bash scripts/switch_tts_voice.sh "<voiceId>" "<languageCode>" "<modelId>"
bash scripts/switch_tts_voice.sh "<voiceId>" "<languageCode>" "<modelId>" "<apiKey>"
  1. Tell the user which file and parameter changed.
  2. Suggest a quick verification command:
/tts audio 今天天气不错,我们下午三点开会。

Supported Inputs

  • Direct voiceId
  • Existing known Chinese-capable ElevenLabs voiceId
  • Optional languageCode
  • Optional modelId
  • Optional apiKey

If the user only gives a voice name, resolve it to a voiceId first.