用途:sag 是一款基于 ElevenLabs 的文本转语音(TTS)命令行工具,提供类似 macOS say 命令的操作体验,并支持本地播放生成的音频。
主要能力与用法:需配置 API 密钥,优先使用 ELEVENLABS_API_KEY,CLI 也支持 SAG_API_KEY。基本用法为 sag "Hello there",可用 sag speak -v "Roger" "Hello" 指定声音,用 sag voices 列出可用声音,sag prompting 查看针对不同模型的提示技巧。生成音频文件示例:sag -v Clawd -o /tmp/voice-reply.mp3 "Your message here"。
模型:默认 eleven_v3(富有表现力),稳定版 eleven_multilingual_v2,快速版 eleven_flash_v2_5。
发音与表达规则:可先尝试重新拼写(如 key-note)、加连字符、调整大小写;数字、单位、URL 用 --normalize auto(若影响人名可设为 off);用 --lang en|de|fr|... 引导规范化。v3 不支持 SSML <break>,改用 [pause]、[short pause]、[long pause];v2/v2.5 支持 SSML <break time="1.5s" />,sag 未暴露 <phoneme>。v3 音频标签需放在行首,如 [whispers]、[shouts]、[sings]、[laughs]、[starts laughing]、[sighs]、[exhales]、[sarcastic]、[curious]、[excited]、[crying]、[mischievously]。
声音默认值:可通过 ELEVENLABS_VOICE_ID 或 SAG_VOICE_ID 设置;长时间输出前建议确认声音与说话人。
聊天语音回复:当被要求语音回复时,可生成音频文件并在回复中包含 MEDIA:/tmp/voice-reply.mp3。Clawd 默认声音为 lj2rcrvANS3gaWWnczSX(或直接用 -v Clawd)。
限制:必须提供 ElevenLabs API 密钥;v3 不支持 SSML break 且不暴露 phoneme;其他平台支持与价格信息暂未提供。