Caricamento in corso...
Caricamento in corso...
Last synced: Today, 22:00
Technical reference for the OpenClaw framework. Real-time synchronization with the official documentation engine.
Use this file to discover all available pages before exploring further.
The Google plugin provides access to Gemini models through Google AI Studio, plus image generation, media understanding (image/audio/video), text-to-speech, and web search via Gemini Grounding.
googleGEMINI_API_KEYGOOGLE_API_KEYagents.defaults.agentRuntime.id: "google-gemini-cli"google/*Choose your preferred auth method and follow the setup steps.
text<Steps> <Step title="Run onboarding"> ```bash} openclaw onboard --auth-choice gemini-api-key ``` Or pass the key directly: ```bash} openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY" ``` </Step> <Step title="Set a default model"> ```json5} { agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, }, } ``` </Step> <Step title="Verify the model is available"> ```bash} openclaw models list --provider google ``` </Step> </Steps> <Tip> The environment variables `GEMINI_API_KEY` and `GOOGLE_API_KEY` are both accepted. Use whichever you already have configured. </Tip>
text<Warning> The `google-gemini-cli` provider is an unofficial integration. Some users report account restrictions when using OAuth this way. Use at your own risk. </Warning> <Steps> <Step title="Install the Gemini CLI"> The local `gemini` command must be available on `PATH`. ```bash} # Homebrew brew install gemini-cli # or npm npm install -g @google/gemini-cli ``` OpenClaw supports both Homebrew installs and global npm installs, including common Windows/npm layouts. </Step> <Step title="Log in via OAuth"> ```bash} openclaw models auth login --provider google-gemini-cli --set-default ``` </Step> <Step title="Verify the model is available"> ```bash} openclaw models list --provider google ``` </Step> </Steps> * Default model: `google/gemini-3.1-pro-preview` * Runtime: `google-gemini-cli` * Alias: `gemini-cli` Gemini 3.1 Pro's Gemini API model id is `gemini-3.1-pro-preview`. OpenClaw accepts the shorter `google/gemini-3.1-pro` as a convenience alias and normalizes it before provider calls. **Environment variables:** * `OPENCLAW_GEMINI_OAUTH_CLIENT_ID` * `OPENCLAW_GEMINI_OAUTH_CLIENT_SECRET` (Or the `GEMINI_CLI_*` variants.) <Note> If Gemini CLI OAuth requests fail after login, set `GOOGLE_CLOUD_PROJECT` or `GOOGLE_CLOUD_PROJECT_ID` on the gateway host and retry. </Note> <Note> If login fails before the browser flow starts, make sure the local `gemini` command is installed and on `PATH`. </Note> `google-gemini-cli/*` model refs are legacy compatibility aliases. New configs should use `google/*` model refs plus the `google-gemini-cli` runtime when they want local Gemini CLI execution.
| Capability | Supported |
|---|---|
| Chat completions | Yes |
| Image generation | Yes |
| Music generation | Yes |
| Text-to-speech | Yes |
| Realtime voice | Yes (Google Live API) |
| Image understanding | Yes |
| Audio transcription | Yes |
| Video understanding | Yes |
| Web search (Grounding) | Yes |
| Thinking/reasoning | Yes (Gemini 2.5+ / Gemini 3+) |
| Gemma 4 models | Yes |
/think adaptivethinkingLevelthinkingBudget: -1Gemma 4 models (for example
gemma-4-26b-a4b-itthinkingBudgetthinkingLeveloffMINIMALThe bundled
googlegoogle/gemini-3.1-flash-image-previewgoogle/gemini-3-pro-image-previewsizeaspectRatioresolutionTo use Google as the default image provider:
json5{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, }, }
The bundled
googlevideo_generategoogle/veo-3.1-fast-generate-previewaspectRatioresolutionaudioTo use Google as the default video provider:
json5{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, }, }
The bundled
googlemusic_generategoogle/lyria-3-clip-previewgoogle/lyria-3-pro-previewlyricsinstrumentalmp3wavgoogle/lyria-3-pro-previewaction: "status"To use Google as the default music provider:
json5{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, }, }
The bundled
googlegemini-3.1-flash-tts-previewKoremessages.tts.providers.google.apiKeymodels.providers.google.apiKeyGEMINI_API_KEYGOOGLE_API_KEYffmpegTo use Google as the default TTS provider:
json5{ 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 uses natural-language prompting for style control. Set
audioProfilespeakerNameGemini API TTS also accepts expressive square-bracket audio tags in the text, such as
[whispers][laughs][[tts:text]]...[[/tts:text]]textHere is the clean reply text. [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]
The bundled
google| Setting | Config path | Default |
|---|---|---|
| Model | text plugins.entries.voice-call.config.realtime.providers.google.model | text gemini-2.5-flash-native-audio-preview-12-2025 |
| Voice | text ...google.voice | text Kore |
| Temperature | text ...google.temperature | (unset) |
| VAD start sensitivity | text ...google.startSensitivity | (unset) |
| VAD end sensitivity | text ...google.endSensitivity | (unset) |
| Silence duration | text ...google.silenceDurationMs | (unset) |
| Activity handling | text ...google.activityHandling | Google default, text start-of-activity-interrupts |
| Turn coverage | text ...google.turnCoverage | Google default, text only-activity |
| Disable auto VAD | text ...google.automaticActivityDetectionDisabled | text false |
| API key | text ...google.apiKey | Falls back to text models.providers.google.apiKeytext GEMINI_API_KEYtext GOOGLE_API_KEY |
Example Voice Call realtime config:
json5{ 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", }, }, }, }, }, }, }, }
For maintainer live verification, run
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.tssetupComplete© 2024 TaskFlow Mirror
Powered by TaskFlow Sync Engine