Token导航 LogoToken导航

Agent Skill · 效率

doubao-tts-http(豆宝 tts http)

doubao-tts-http 用于补充效率相关能力,适合在 OpenClaw 中需要让 Agent 承接效率相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

doubao-tts-http 是效率类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为接触敏感数据;许可证为 MIT-0,第三方扫描有提醒项,按安装量在效率类的 21,003 个 Skill 里排第 11,998。

总安装 4,327周安装 248GitHub Stars 公开资料未说明下载 1,799核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.0

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:doubao-tts-http(豆宝 tts http)
来源仓库:https://github.com/shandingdonren/doubao-tts-http
安装命令:
openclaw skills install doubao-tts-http
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install doubao-tts-http

这个 Skill 是做什么的

效率类 Skill 把重复的整理、汇总、转换工作交给助手完成,减少手工复制粘贴。

豆包文字转语音服务,基于火山引擎 TTS 技术实现自然发音。适用于有声读物制作、语音播报系统和无障碍辅助场景。支持多种音色选择和语速调节,适配不同应用场景需求。使用前需配置 API 密钥并关注配额使用情况。doubao-tts-http 属于效率类 Skill,可作为该场景下的辅助能力补充。

音频文件版权归属遵循服务提供商条款,商用前请确认授权范围。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install doubao-tts-http;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

doubao-tts-http 怎么安装?

在终端执行 openclaw skills install doubao-tts-http。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

doubao-tts-http 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

doubao-tts-http 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

doubao-tts-http 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

doubao-tts-http 用的人多吗?

公开数据是累计安装 4,327 次,近一周安装 248 次,下载 1,799 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

doubao-tts-http 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理效率类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

效率类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
github

GitHub 代码协作 · OpenClaw

7,632,918545需要联网MIT-0通过
nano-pdf

Nano PDF 文档 · OpenClaw

4,249,476231需要联网MIT-0通过
auto-updater

自动更新程序 · OpenClaw

2,964,063386操作浏览器MIT-0通过
video-frames

视频帧 · OpenClaw

2,621,304112需要联网MIT-0通过
gemini

Gemini 助手 · OpenClaw

2,547,39648需要联网MIT-0有提醒
doubao-tts-http

豆宝 tts http · 本页

4,327—接触敏感数据MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
doubao-tts
description
豆包 TTS 文字转语音(火山引擎)
triggers
["朗读", "转语音", "TTS", "语音合成", "读出来", "用声音读", "播放这段"]

豆包 TTS 技能

用火山引擎豆包 TTS 把文字转成语音,支持多种音色、情感、语速调节。


配置步骤

1. 申请火山引擎凭证

  1. 访问 https://www.volcengine.com/
  2. 注册/登录账号
  3. 进入控制台 → 语音技术 → 语音合成
  4. 创建应用,获取以下信息:

- AppID - Access Token - Cluster(集群 ID)

2. 创建配置文件

创建 ~/.openclaw/doubao-tts-config.json:

{
  "appid": "你的 AppID",
  "access_token": "你的 Access Token",
  "cluster": "你的 Cluster ID",
  "voice_type": "BV700_streaming",
  "emotion": "pleased"
}

配置说明

字段必填说明示例
appid是火山引擎 AppID1234567890
access_token是访问令牌xxxxx
cluster是集群 IDvolcano_tts
voice_type否默认音色BV700_streaming
emotion否默认情感pleased

音色推荐

常用音色

音色名称voice_type特点
灿灿BV700_streaming22 种情感,最全能(默认)
擎苍BV701_streaming旁白模式,适合读文章
通用女声BV001_streaming日常对话
通用男声BV002_streaming基础男声
甜美小源BV405_streaming智能助手风格
知性女声BV009_streaming专业严肃

情感/风格

情感值说明
愉悦pleased默认,友好语气
开心happy欢快
悲伤sad低沉
客服customer_service专业客服
讲故事storytelling叙述风格
安慰鼓励comfort温暖安慰

使用方式

基础用法

朗读 "今天天气不错"
帮我把这段话转成语音:你好,欢迎使用豆包 TTS
用声音读出来:欢迎回家

指定音色

用男声读 "你好"
用灿灿的声音读这段文字
换一个女声读

自动情感判断(推荐)

技能会自动根据内容选择情感,无需手动指定:

内容特征自动情感示例
夸奖、好事、成功happy(开心)"太棒了""搞定了"
道歉、失误、遗憾sad(悲伤)"对不起""弄错了"
安慰、陪伴、鼓励pleased(愉悦)"别难过""我陪着你"
惊讶、意外surprise(惊讶)"哇""真的吗"
特别悲伤tear(哭腔)"呜呜""哭了"
日常对话pleased(愉悦)默认友好语气

注意:灿灿 (BV700_streaming) 支持的情感有限,以上已做适配。

# 自动判断,无需指定情感
朗读 "吴,今天天气不错"  → 自动用 pleased
朗读 "太棒了,完成了!"  → 自动用 happy
朗读 "吴对不起,我弄错了" → 自动用 sorry

调节参数

朗读 --speed 1.2 "加快语速"
朗读 --volume 0.8 "降低音量"
朗读 --pitch 1.1 "提高音调"

保存文件

朗读 --save ~/Desktop/output.mp3 "保存到这里"

核心逻辑

1. 读取配置

config_file="$HOME/.openclaw/doubao-tts-config.json"

if [ ! -f "$config_file" ]; then
    echo "❌ 配置文件不存在,请先创建 $config_file"
    echo "参考:https://www.volcengine.com/docs/6561/97465"
    return 1
fi

appid=$(cat "$config_file" | jq -r '.appid')
access_token=$(cat "$config_file" | jq -r '.access_token')
cluster=$(cat "$config_file" | jq -r '.cluster')
voice_type=$(cat "$config_file" | jq -r '.voice_type // "BV700_streaming"')
emotion=$(cat "$config_file" | jq -r '.emotion // "pleased"')

2. 自动情感判断

# 根据内容自动选择情感
auto_select_emotion() {
    local text="$1"
    local text_lower=$(echo "$text" | tr '[:upper:]' '[:lower:]')
    
    # 开心/成功场景
    if echo "$text_lower" | grep -qE "(太棒了 | 太好了 | 成功了 | 搞定 | 完成 | 厉害 | 优秀 | 棒|赞|赢|好开心|好兴奋)"; then
        echo "happy"
        return
    fi
    
    # 道歉/失误场景
    if echo "$text_lower" | grep -qE "(对不起 | 抱歉 | 弄错了 | 失误 | 遗憾 | 不好意思 | 我的错)"; then
        echo "sorry"
        return
    fi
    
    # 安慰/陪伴场景
    if echo "$text_lower" | grep -qE "(别难过 | 别伤心 | 我陪着你 | 有我在 | 没事的 | 会好的 | 加油 | 相信你)"; then
        echo "comfort"
        return
    fi
    
    # 讲故事/长文场景(超过 100 字或明显叙述)
    if [ ${#text} -gt 100 ] || echo "$text_lower" | grep -qE "(从前 | 故事 | 很久以前 | 话说)"; then
        echo "storytelling"
        return
    fi
    
    # 正式工作场景
    if echo "$text_lower" | grep -qE "(汇报 | 总结 | 数据 | 统计 | 分析 | 报告 | 清单 | 流程)"; then
        echo "professional"
        return
    fi
    
    # 默认愉悦
    echo "pleased"
}

emotion=$(auto_select_emotion "$text")

3. 构建请求

# 生成唯一请求 ID
reqid=$(uuidgen 2>/dev/null || echo "tts-$(date +%s)-$$")

# 默认参数
speed_ratio=${speed_ratio:-1.0}
volume_ratio=${volume_ratio:-1.0}
pitch_ratio=${pitch_ratio:-1.0}

# 构建 JSON(包含情感参数)
json_payload=$(cat <<EOF
{
  "app": {
    "appid": "$appid",
    "token": "access_token",
    "cluster": "$cluster"
  },
  "user": {
    "uid": "388808087185088"
  },
  "audio": {
    "voice_type": "$voice_type",
    "encoding": "mp3",
    "speed_ratio": $speed_ratio,
    "volume_ratio": $volume_ratio,
    "pitch_ratio": $pitch_ratio,
    "emotion": "$emotion"
  },
  "request": {
    "reqid": "$reqid",
    "text": "$text",
    "text_type": "plain",
    "operation": "query",
    "with_frontend": 1,
    "frontend_type": "unitTson"
  }
}
EOF
)

4. 发送请求

api_url="https://openspeech.bytedance.com/api/v1/tts"

response=$(curl -s -X POST "$api_url" \
  -H "Authorization: Bearer;$access_token" \
  -H "Content-Type: application/json" \
  -d "$json_payload")

# 检查错误
error_code=$(echo "$response" | jq -r '.code // 0')
if [ "$error_code" != "0" ] && [ "$error_code" != "null" ]; then
    error_msg=$(echo "$response" | jq -r '.message // "未知错误"')
    echo "❌ TTS 请求失败:$error_msg"
    return 1
fi

5. 处理响应

# 提取 base64 音频数据
audio_base64=$(echo "$response" | jq -r '.data')

if [ -z "$audio_base64" ] || [ "$audio_base64" = "null" ]; then
    echo "❌ 未获取到音频数据"
    return 1
fi

# 解码保存
output_file="${save_path:-/tmp/doubao_tts_$(date +%s).mp3}"
echo "$audio_base64" | base64 -d > "$output_file"

echo "✅ 语音生成成功:$output_file"

6. 播放音频

# Mac
if command -v afplay &> /dev/null; then
    afplay "$output_file"
# Linux
elif command -v paplay &> /dev/null; then
    paplay "$output_file"
# Windows
elif command -v powershell &> /dev/null; then
    powershell -c "(New-Object Media.SoundPlayer '$output_file').PlaySync()"
else
    echo "⚠️ 未找到播放器,音频已保存:$output_file"
fi

错误处理

错误原因解决方案
配置文件不存在未创建 config.json按步骤创建配置文件
401 UnauthorizedToken 过期或错误重新获取 Access Token
403 ForbiddenAppID 无权限检查应用配置
400 Bad Request参数错误检查 voice_type 是否有效
网络超时网络问题检查网络连接
无音频数据API 返回异常查看完整响应内容

完整示例脚本

#!/bin/bash
# doubao-tts.sh - 豆包 TTS 命令行工具

set -e

config_file="$HOME/.openclaw/doubao-tts-config.json"
text="$1"
save_path="$2"

# 检查配置
if [ ! -f "$config_file" ]; then
    echo "❌ 配置文件不存在:$config_file"
    exit 1
fi

# 读取配置
appid=$(cat "$config_file" | jq -r '.appid')
access_token=$(cat "$config_file" | jq -r '.access_token')
cluster=$(cat "$config_file" | jq -r '.cluster')
voice_type=$(cat "$config_file" | jq -r '.voice_type // "BV700_streaming"')

# 生成请求
reqid=$(uuidgen 2>/dev/null || echo "tts-$(date +%s)-$$")
json_payload=$(cat <<EOF
{
  "app": {"appid": "$appid", "token": "access_token", "cluster": "$cluster"},
  "user": {"uid": "388808087185088"},
  "audio": {"voice_type": "$voice_type", "encoding": "mp3"},
  "request": {"reqid": "$reqid", "text": "$text", "text_type": "plain", "operation": "query", "with_frontend": 1}
}
EOF
)

# 发送请求
response=$(curl -s -X POST "https://openspeech.bytedance.com/api/v1/tts" \
  -H "Authorization: Bearer;$access_token" \
  -H "Content-Type: application/json" \
  -d "$json_payload")

# 处理响应
audio_base64=$(echo "$response" | jq -r '.data')
if [ -z "$audio_base64" ]; then
    echo "❌ 请求失败:$response"
    exit 1
fi

output_file="${save_path:-/tmp/doubao_tts_$$.mp3}"
echo "$audio_base64" | base64 -d > "$output_file"
echo "✅ 生成成功:$output_file"

# 播放
afplay "$output_file" 2>/dev/null || echo "请手动播放:$output_file"

相关文件

  • 配置文件:~/.openclaw/doubao-tts-config.json
  • 输出目录:/tmp/doubao_tts_*.mp3 或用户指定路径
  • 官方文档:https://www.volcengine.com/docs/6561/97465

注意事项

  1. Token 有效期 — Access Token 可能过期,定期更新
  2. 计费 — 火山引擎 TTS 有免费额度,超出后按量计费
  3. 文本长度 — 单次请求建议不超过 500 字,长文本分段处理
  4. 并发限制 — 避免短时间内大量请求

平台分布

OpenClaw

98.6%
按下载量换算1,774

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills