介绍 Breeze CLI:把语音 AI 装进终端

Breeze CLI 把 Breeze 的语音生成能力带进终端:几秒钟听到一个声音,一条命令即可转成 Developer API 请求,并为 AI agent 提供原生 JSON 接口来生成音频和带旁白的视频。

Introducing Breeze CLI terminal poster

每个语音 AI 产品都有一个漂亮的网页 demo。但真正拿语音做产品的工作——把旁白接进 onboarding 流程、给游戏生成对话、让应用开口说话——并不发生在浏览器里,而是发生在终端、编辑器、CI 流水线,以及越来越多地发生在 AI agent 的工具调用循环里。Breeze CLI 从这个现实出发:把 Breeze 的语音生成带到开发者本来就在的地方,并且把「多快能听到声音」当作最重要的指标。

快速上手

30 秒听到第一个声音

评估一个语音 API 最快的方式是先听到它。这篇文章里的每条命令都只有一行——复制、运行、接着往下读。先安装:

curl -fsSL https://breezeblue.ai/cli/install.sh | sh

确认已就位:

breeze version

登录一次。CLI 会打开浏览器,你确认授权后,一把设备专属的 key 会以严格的文件权限写入本机。你从头到尾不用手动复制 API key,服务端也只保存 key 的哈希:

breeze login

现在让它开口:

breeze tts "Hello from Breeze"

第一个字节到达的瞬间音频就开始播放——直接流向扬声器,终端里还有一条实时声波。注意那些你没做的事:没有选模型、没有翻音色目录、没有读快速上手文档。不指定音色时,Breeze 会替你挑一个不错的——因为最初 30 秒里唯一重要的问题是「我喜欢听到的这个声音吗」。


探索音色

不离开终端,找到对的声音

默认音色不是你脑子里那个的时候,翻一翻音色库:

breeze voice list

像做 A/B 测试一样试音:同一句话、不同声音、立刻对比。用列表里的 voice ID 重跑:

breeze tts "This is the voice of our onboarding narrator" --voice voc_xeh3w54cqvnp

喜欢的那条留下来:

breeze tts "This is the voice of our onboarding narrator" -o narrator.wav

音色面上的其余一切——用一段文字描述来设计新声音、克隆、试听、生成历史、异步任务——都只隔一个子命令。CLI 是 Breeze Developer API 的完整客户端,不是套在某个角落功能外面的 demo 壳。


进入生产

从随手一条命令到生产请求

原型阶段最糟糕的时刻,是发现好玩的工具和真正的 API 是两个世界。Breeze CLI 从结构上填平了这个断层:每条命令都对应公开的 /v1 Developer API——和 Python、TypeScript SDK 背后是同一套。当某一条听起来对了,让 CLI 把请求交出来:

breeze curl tts "This is the voice of our onboarding narrator" --voice voc_xeh3w54cqvnp --format mp3 -o narrator.mp3

breeze curl 会打印一条可复现的 cURL 请求,对应你刚才做的事,真实 key 已换成占位符——放进脚本、PR,或者同事的聊天窗口都安全。翻译成 SDK 调用,或者原样上线。从探索到生产,语义完全不变,因为从头到尾就是同一套 API。


Agent 原生

AI agent 是一等用户

越来越多时候,敲下 CLI 命令的「开发者」是一个 AI agent。我们把这当成设计约束,而不是噱头。给任何命令加上 --agent,Breeze CLI 就变成一个规矩的工具调用:JSON 结果写 stdout,JSON 错误信封写 stderr,没有交互提示、没有 spinner、不会突然出声:

breeze voice list --agent

你刚才交互式跑过的合成,也变成一个安静、产出文件的调用:

breeze tts "Hello from Breeze" --voice voc_xeh3w54cqvnp -o hello.wav --agent

失败是可分支的,不是靠解析文案猜的:认证失败、credits 不足、超时、网络错误各自对应稳定的退出码,脚本用逻辑恢复——重新登录、充值、重试——而不是对着人类文案写正则。agent 也不必靠试错学习命令面,CLI 一次调用就能自我描述:

breeze capabilities --agent

面向编码 agent 还有更进一步的方式:一组精选 skills,教 Claude Code、Codex 或 Cursor 推荐的 Breeze 工作流。安装完全显式 opt-in,且从不接触你的 API key:

breeze skills install --target codex

codex 换成 claude cursor 也一样。如果连 CLI 都是 agent 替你装的,一行命令两件事一起装好:

curl -fsSL https://breezeblue.ai/cli/install.sh | sh -s -- --with-skills codex

Video Lab

带旁白的视频,在你自己的机器上渲染

语音很少单独出场。CLI 内置的 Video Lab 能把一个 HTML composition 渲染成带 Breeze TTS 旁白的 MP4——而且整条流水线都为 agent 驾驶而设计,每一步都输出 JSON 报告。初始化项目:

breeze video init --project demo --template authored --agent

在花费渲染时间之前先校验——这也是 agent 逐帧发现视觉问题的地方:文字溢出、元素出框、字幕不可读:

breeze video validate --project demo --agent

然后渲染成片,旁白一并生成:

breeze video render --project demo --agent

你的 composition、素材和成片不会离开本机。整条流水线里唯一的网络请求,就是旁白本身。


工艺

信任也是一种功能

会被接进脚本的工具,必须在正确的地方足够无聊。数据走 stdout、状态走 stderr,管道行为永远正确。凭据放在权限锁死的本地文件里,输出里的 key 永远只显示打码后的形态。Profile 机制让一台机器上的 staging 与 production——或者两个账号——干净隔离。breeze update 只在你要求时更新二进制和运行时:绝不在脚本中途、绝不在 CI 里、绝不背着你动手。


上手

现在开始

从一个空终端到听见声音,只隔三行:

curl -fsSL https://breezeblue.ai/cli/install.sh | sh
breeze login
breeze tts "Hello from Breeze"

完整文档——快速上手、命令参考、脚本指南和排障——在 docs.breezeblue.ai/cli。期待听到你用它做出的东西。