文本转语音代理工具和 Gateway RPC
Agent 工具¶
tts 工具可将文本转换为语音,并返回音频附件用于回复投递。在飞书、Matrix、Telegram 和 WhatsApp 上,音频会以语音消息而非文件附件的形式投递。当 ffmpeg 可用时,飞书和 WhatsApp 可在此路径上对非 Opus 的 TTS 输出进行转码。
WhatsApp 通过 Baileys 将音频作为 PTT 语音备注(audio 且 ptt: true)发送,并将可见文本单独于 PTT 音频发送,因为客户端在语音备注上渲染标题的行为并不一致。
该工具接受可选的 channel 和 timeoutMs 字段;timeoutMs 是每次调用的 provider 请求超时时间(毫秒)。每次调用的值会覆盖 tts.timeoutMs;已配置的 TTS 超时时间会覆盖任何插件编写的 provider 默认值。
工具配置文件(Tool profiles)¶
tts 不属于 minimal、coding 或 messaging
工具配置文件。除非你显式授予权限,否则这些配置文件上的 Agent 无法调用它:
full 配置文件和未设置配置文件时都会包含 tts,无需额外配置。其他允许/拒绝层仍可将其移除。
工具配置文件不影响自动 TTS:即使 Agent 无法调用 tts 工具,tts.auto 仍会朗读回复。
Gateway RPC¶
| 方法 | 用途 |
|---|---|
tts.status |
读取当前 TTS 状态及最近一次尝试。 |
tts.enable |
将本地自动偏好设置为 always。 |
tts.disable |
将本地自动偏好设置为 off。 |
tts.convert |
一次性文本 → 音频转换。 |
tts.setProvider |
设置本地 provider 偏好。 |
tts.personas |
列出已配置的 personas 及当前启用的。 |
tts.setPersona |
设置本地 persona 偏好。 |
tts.providers |
列出已配置的 providers 及其状态。 |
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw