Google (Gemini)
Google 插件通过 Google AI Studio 提供对 Gemini 模型的访问,此外还提供图像生成、媒体理解(图像/音频/视频)、文本转语音以及通过 Gemini Grounding 进行的网页搜索。
- 提供商:
google - 认证:
GEMINI_API_KEY或GOOGLE_API_KEY - API:Google Gemini API
- 运行时选项:提供商/模型
agentRuntime.id: "google-gemini-cli"CLIOAuth 复用 Gemini CLI OAuth,同时保持模型引用为google/*规范形式。
选择您首选的身份验证方法并按照设置步骤操作。
最适用于: 通过 Google AI Studio 进行标准 Gemini API 访问。
运行新手引导
Terminal window openclaw onboard --auth-choice gemini-api-key或者直接传入密钥:
Terminal window openclaw onboard --non-interactive \--mode local \--auth-choice gemini-api-key \--gemini-api-key "$GEMINI_API_KEY"设置默认模型
{agents: {defaults: {model: { primary: "google/gemini-3.1-pro-preview" },},},}验证模型可用
Terminal window openclaw models list --provider google
最适用于: 通过 PKCE OAuth 复用现有的 Gemini CLI 登录,而不是使用单独的 API 密钥。
CLI安装 Gemini CLI
本地
gemini命令必须在PATH上可用。Terminal window # Homebrewbrew install gemini-cli# or npmnpm install -g @google/gemini-cli```OpenClawnpmWindowsnpmOpenClaw 支持 Homebrew 安装和全局 npm 安装,包括常见的 Windows/npm 布局。OAuth通过 OAuth 登录
Terminal window openclaw models auth login --provider google-gemini-cli --set-default验证模型是否可用
Terminal window openclaw models list --provider google
- 默认模型:
google/gemini-3.1-pro-preview - 运行时:
google-gemini-cli - 别名:
gemini-cliAPI
Gemini 3.1 Pro 的 Gemini API 模型 ID 是 gemini-3.1-pro-previewOpenClaw。OpenClaw 接受较短的 google/gemini-3.1-pro 作为便利别名,并在提供商调用之前对其进行规范化。
环境变量:
OPENCLAW_GEMINI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET
(或 GEMINI_CLI_*CLIOAuth 变体。)
google-gemini-cli/* 模型引用是旧版兼容性别名。当需要进行本地 Gemini CLI
执行时,新配置应使用 google/* 模型引用加上 google-gemini-cliCLI
运行时。
| 功能 | 支持 |
|---|---|
| 聊天补全 | 是 |
| 图像生成 | 是 |
| 音乐生成 | 是 |
| 文本转语音 | 是 |
| 实时语音 | 是 (Google Live API) |
| 图像理解 | 是 |
| 音频转录 | 是 |
| 视频理解 | 是 |
| 网络搜索 (Grounding) | 是 |
| 思考/推理 | 是 (Gemini 2.5+ / Gemini 3+) |
| Gemma 4 模型 | 是 |
内置的 gemini 网络搜索提供商使用 Gemini Google Search 接地功能。
在 plugins.entries.google.config.webSearch 下配置专用搜索密钥,
或者在 GEMINI_API_KEY 后让其重用 models.providers.google.apiKey:
{ plugins: { entries: { google: { config: { webSearch: { apiKey: "AIza...", // optional if GEMINI_API_KEY or models.providers.google.apiKey is set baseUrl: "https://generativelanguage.googleapis.com/v1beta", // falls back to models.providers.google.baseUrl model: "gemini-2.5-flash", }, }, }, }, },}凭据优先级依次为 webSearch.apiKey、GEMINI_API_KEY,然后是 models.providers.google.apiKey。webSearch.baseUrl 是可选的,专为运营商代理或兼容的 Gemini API 端点而存在;如果省略,Gemini 网络搜索将重用 models.providers.google.baseUrl。有关提供商特定的工具行为,请参阅 Gemini search。
内置的 google 图像生成提供商默认使用
google/gemini-3.1-flash-image-preview。
- 也支持
google/gemini-3-pro-image-preview - 生成:每个请求最多生成 4 张图像
- 编辑模式:已启用,最多 5 张输入图像
- 几何控件:
size、aspectRatio和resolution
要将 Google 用作默认图像提供商:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, },}捆绑的 google 插件还通过共享 video_generate 工具注册了视频生成功能。
- 默认视频模型:
google/veo-3.1-fast-generate-preview - 模式:文本生成视频、图像生成视频以及单视频参考流
- 支持
aspectRatio(16:9,9:16) 和resolution(720P,1080P); Veo 目前不支持音频输出 - 支持的持续时间:4、6 或 8 秒(其他值会自动调整为最接近的允许值)
要将 Google 用作默认视频提供商:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}内置的 google 插件还通过共享的 music_generate 工具注册了音乐生成功能。
- 默认音乐模型:
google/lyria-3-clip-preview - 同时支持
google/lyria-3-pro-preview - 提示控制:
lyrics和instrumental - 输出格式:默认为
mp3,加上google/lyria-3-pro-preview上的wav - 参考输入:最多 10 张图像
- 基于会话的运行通过共享任务/状态流程分离,包括
action: "status"
要将 Google 用作默认音乐提供商:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}捆绑的 googleAPI 语音提供商使用 Gemini API TTS 路径,并带有
gemini-3.1-flash-tts-preview。
- 默认语音:
Kore - Auth:
messages.tts.providers.google.apiKey、models.providers.google.apiKey、GEMINI_API_KEY或GOOGLE_API_KEY - 输出:常规 TTS 附件为 WAV,语音备忘录目标为 Opus,Talk/电话为 PCM
- 语音备忘录输出:Google PCM 被封装为 WAV,并通过
ffmpeg转码为 48 kHz Opus 格式
Google 的批量 Gemini TTS 路径会在完成的 generateContent 响应中返回生成的音频。为了获得最低延迟的语音对话,请使用由 Gemini Live API 支持的 Google 实时语音提供商,而不是批量 TTS。
要将 Google 用作默认 TTS 提供商:
{ messages: { tts: { auto: "always", provider: "google", providers: { google: { model: "gemini-3.1-flash-tts-preview", voiceName: "Kore", audioProfile: "Speak professionally with a calm tone.", }, }, }, },}Gemini API TTS 使用自然语言提示进行风格控制。设置
audioProfile 可在口语文本前添加可重用的风格提示。当您的提示文本指代指定的说话人时,请设置
speakerName。
Gemini API TTS 还接受文本中的富表现力方括号音频标签,例如 [whispers] 或 [laughs]。若要在将标签发送给 TTS 的同时使其不在可见的聊天回复中显示,请将它们放在 [[tts:text]]...[[/tts:text]] 块中:
Here is the clean reply text.
[[tts:text]][whispers] Here is the spoken version.[[/tts:text]]内置的 google 插件注册了一个由 Gemini Live API 支持的实时语音提供商,适用于 Voice Call 和 Google Meet 等后端音频桥接。
| 设置 | 配置路径 | 默认值 |
|---|---|---|
| 模型 | plugins.entries.voice-call.config.realtime.providers.google.model | gemini-2.5-flash-native-audio-preview-12-2025 |
| 语音 | ...google.voice | Kore |
| Temperature | ...google.temperature | (未设置) |
| VAD 起始灵敏度 | ...google.startSensitivity | (未设置) |
| VAD 结束灵敏度 | ...google.endSensitivity | (未设置) |
| 静音持续时间 | ...google.silenceDurationMs | (未设置) |
| 活动处理 | ...google.activityHandling | Google 默认,start-of-activity-interrupts |
| 轮次覆盖 | ...google.turnCoverage | Google 默认,only-activity |
| 禁用自动 VAD | ...google.automaticActivityDetectionDisabled | false |
| 会话恢复 | ...google.sessionResumption | true |
| 上下文压缩 | ...google.contextWindowCompression | true |
| API key | ...google.apiKey | 回退到 models.providers.google.apiKey、GEMINI_API_KEY 或 GOOGLE_API_KEY |
语音通话实时配置示例:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-2.5-flash-native-audio-preview-12-2025", voice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "only-activity", }, }, }, }, }, }, },}若要进行维护者实时验证,请运行
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts。
该冒烟测试也覆盖 OpenAI 后端/WebRTC 路径;Google 端会生成与 Control UI Talk 使用的相同的受限 Live API 令牌形状,打开浏览器 WebSocket 端点,发送初始设置负载,并等待
setupComplete。
Direct Gemini cache reuse
对于直接的 Gemini API 运行 (api: "google-generative-ai"),OpenClaw 会将配置的 cachedContent 句柄传递给 Gemini 请求。
- 使用
cachedContent或旧的cached_content配置特定于 OpenClaw 或全局的参数 - 如果两者都存在,
cachedContent优先 - 示例值:
cachedContents/prebuilt-context - Gemini 缓存命中使用情况被从上游
cachedContentTokenCount规范化为 OpenClawcacheRead
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Gemini CLI JSON 使用说明
当使用 google-gemini-cli OAuth 提供商时,OpenClaw 会按以下方式规范化
CLI JSON 输出:
- 回复文本来自 CLI JSON
response字段。 - 当 CLI 留空
usage时,使用情况会回退到stats。 stats.cached被规范化为 OpenClawcacheRead。- 如果缺少
stats.input,OpenClaw 会从stats.input_tokens - stats.cached推导输入令牌。
Environment and daemon setup
如果 Gateway(网关) 作为守护进程运行,请确保 GEMINI_API_KEY
对该进程可用(例如,在 ~/.openclaw/.env 中或通过
env.shellEnv)。
选择提供商、模型引用和故障转移行为。
共享图像工具参数和提供商选择。
共享视频工具参数和提供商选择。
共享音乐工具参数和提供商选择。