Providers
Google (Gemini)
De Google-Plugin biedt toegang tot Gemini-modellen via Google AI Studio, plus beeldgeneratie, mediabegrip (beeld/audio/video), tekst-naar-spraak en zoeken op het web via Gemini Grounding.
- Provider:
google - Authenticatie:
GEMINI_API_KEYofGOOGLE_API_KEY - API: Google Gemini API
- Runtime-optie:
agentRuntime.id: "google-gemini-cli"hergebruikt Gemini CLI OAuth en houdt modelverwijzingen canoniek alsgoogle/*.
Aan de slag
Kies de gewenste authenticatiemethode en volg de configuratiestappen.
API-sleutel
Het meest geschikt voor: standaardtoegang tot de Gemini API via Google AI Studio.
Een API-sleutel verkrijgen
Maak een gratis sleutel aan in Google AI Studio.
De onboarding uitvoeren
openclaw onboard --auth-choice gemini-api-keyOf geef de sleutel rechtstreeks door:
openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY"Een standaardmodel instellen
{ agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, },}Controleren of het model beschikbaar is
openclaw models list --provider googleMet een geconfigureerde API-sleutel vernieuwt OpenClaw de catalogus met
tekstmodellen van Google AI Studio via de Gemini models.list-API. Nieuw
uitgebrachte varianten van Gemini 3 Pro, Flash en Flash-Lite verschijnen
daardoor in openclaw models list --provider google zonder dat je op een nieuwe OpenClaw-versie
hoeft te wachten. Als detectie niet beschikbaar is, behoudt OpenClaw de
meegeleverde reservecatalogus.
Gemini CLI (OAuth)
Het meest geschikt voor: aanmelden met je Google-account via Gemini CLI OAuth in plaats van een afzonderlijke API-sleutel te gebruiken.
De Gemini CLI installeren
De lokale opdracht gemini moet beschikbaar zijn in PATH.
# Homebrewbrew install gemini-cli # of npmnpm install -g @google/gemini-cliOpenClaw ondersteunt zowel installaties via Homebrew als globale npm-installaties, waaronder gangbare Windows/npm-indelingen.
Aanmelden via OAuth
openclaw models auth login --provider google-gemini-cli --set-defaultControleren of het model beschikbaar is
openclaw models list --provider google- Standaardmodel:
google/gemini-3.1-pro-preview - Runtime:
google-gemini-cli - Alias:
gemini-cli
De Gemini API-model-id van Gemini 3.1 Pro is gemini-3.1-pro-preview. OpenClaw accepteert het kortere google/gemini-3.1-pro als handige alias en normaliseert deze vóór provideraanroepen.
Omgevingsvariabelen:
OPENCLAW_GEMINI_OAUTH_CLIENT_ID/GEMINI_CLI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET/GEMINI_CLI_OAUTH_CLIENT_SECRET
De automatische detectie tijdens de onboarding vermeldt een bestaande Gemini CLI-aanmelding, maar test deze nooit automatisch omdat Gemini CLI geen test zonder tools heeft. Kies Gemini CLI OAuth of een Gemini API-sleutel om door te gaan.
Modelverwijzingen met google-gemini-cli/* zijn verouderde
compatibiliteitsaliassen. Nieuwe configuraties moeten modelverwijzingen met
google/* plus de runtime google-gemini-cli gebruiken wanneer lokale
uitvoering via Gemini CLI gewenst is.
Mogelijkheden
| Mogelijkheid | Ondersteund |
|---|---|
| Chatvoltooiingen | Ja |
| Beeldgeneratie | Ja |
| Muziekgeneratie | Ja |
| Tekst-naar-spraak | Ja |
| Realtime spraak | Ja (Google Live API) |
| Beeldbegrip | Ja |
| Audiotranscriptie | Ja |
| Videobegrip | Ja |
| Zoeken op het web (Grounding) | Ja |
| Denken/redeneren | Ja (Gemini 2.5+ / Gemini 3+) |
| Gemma 4-modellen | Ja |
Zoeken op het web
De meegeleverde webzoekprovider gemini gebruikt Gemini Google Search Grounding.
Configureer een specifieke zoeksleutel onder plugins.entries.google.config.webSearch,
of laat deze models.providers.google.apiKey hergebruiken na GEMINI_API_KEY:
{ plugins: { entries: { google: { config: { webSearch: { apiKey: "AIza...", // optioneel als GEMINI_API_KEY of models.providers.google.apiKey is ingesteld baseUrl: "https://generativelanguage.googleapis.com/v1beta", // valt terug op models.providers.google.baseUrl model: "gemini-2.5-flash", }, }, }, }, },}De volgorde van prioriteit voor inloggegevens is eerst de specifieke
webSearch.apiKey, vervolgens GEMINI_API_KEY en daarna models.providers.google.apiKey.
webSearch.baseUrl is optioneel en bestaat voor operatorproxy's of compatibele
Gemini API-eindpunten; als deze wordt weggelaten, hergebruikt Gemini-webzoekfunctie
models.providers.google.baseUrl. Zie Zoeken met Gemini voor het
providerspecifieke gedrag van de tool.
Beeldgeneratie
De meegeleverde provider voor beeldgeneratie google gebruikt
standaard google/gemini-3.1-flash-image.
- Ondersteunt ook
google/gemini-3-pro-image - Genereren: maximaal 4 beelden per verzoek
- Bewerkingsmodus: ingeschakeld, maximaal 5 invoerbeelden
- Geometriebesturing:
size,aspectRatioenresolution
Google als standaardprovider voor beelden gebruiken:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image", }, }, },}Videogeneratie
De meegeleverde Plugin google registreert ook videogeneratie via de
gedeelde tool video_generate.
- Standaardvideomodel:
google/veo-3.1-fast-generate-preview - Modi: tekst-naar-video, beeld-naar-video en stromen met één video als referentie
- Ondersteunt
aspectRatio(16:9,9:16) enresolution(720P,1080P); audio-uitvoer wordt momenteel niet ondersteund door Veo - Ondersteunde tijdsduren: 4, 6 of 8 seconden (andere waarden worden afgerond naar de dichtstbijzijnde toegestane waarde)
Google als standaardprovider voor video gebruiken:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}Muziekgeneratie
De meegeleverde Plugin google registreert ook muziekgeneratie via de
gedeelde tool music_generate.
- Standaardmuziekmodel:
google/lyria-3-clip-preview - Ondersteunt ook
google/lyria-3-pro-preview - Promptbesturing:
lyricseninstrumental - Uitvoerformaat: standaard
mp3, pluswavopgoogle/lyria-3-pro-preview - Referentie-invoer: maximaal 10 beelden
- Uitvoeringen met een sessie worden losgekoppeld via de gedeelde taak-/statusstroom, waaronder
action: "status"
Google als standaardprovider voor muziek gebruiken:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}Tekst-naar-spraak
De meegeleverde spraakprovider google gebruikt het TTS-pad van de
Gemini API met gemini-3.1-flash-tts-preview.
- Standaardstem:
Kore - Authenticatie:
tts.providers.google.apiKey,models.providers.google.apiKey,GEMINI_API_KEYofGOOGLE_API_KEY - Uitvoer: WAV voor gewone TTS-bijlagen, Opus voor spraakberichtdoelen, PCM voor Talk/telefonie
- Uitvoer voor spraakberichten: Google PCM wordt verpakt als WAV en met
ffmpeggetranscodeerd naar 48 kHz Opus
Het batchpad voor Gemini TTS van Google retourneert de gegenereerde audio in het
voltooide antwoord generateContent. Gebruik voor gesproken gesprekken met de
laagste latentie de provider voor realtime spraak van Google, die wordt
aangedreven door de Gemini Live API, in plaats van batch-TTS.
Google als standaard-TTS-provider gebruiken:
{ tts: { auto: "always", provider: "google", providers: { google: { model: "gemini-3.1-flash-tts-preview", speakerVoice: "Kore", audioProfile: "Spreek professioneel met een rustige toon.", }, }, },}Gemini API TTS gebruikt prompts in natuurlijke taal voor stijlbesturing. Stel
audioProfile in om vóór de gesproken tekst een herbruikbare stijlprompt toe
te voegen. Stel speakerName in wanneer je prompttekst verwijst naar een
spreker met een naam.
Gemini API TTS accepteert in de tekst ook expressieve audiotags tussen vierkante
haken, zoals [whispers] of [laughs]. Plaats tags in een
[[tts:text]]...[[/tts:text]]-blok om ze buiten het zichtbare chatantwoord te houden en
tegelijkertijd naar TTS te verzenden:
Hier staat de gewone antwoordtekst. [[tts:text]][whispers] Hier staat de gesproken versie.[[/tts:text]]Realtime spraak
De meegeleverde Plugin google registreert een provider voor realtime
spraak, die wordt aangedreven door de Gemini Live API, voor audioverbindingen
aan de backend, zoals Voice Call en Google Meet.
| Instelling | Configuratiepad | Standaardwaarde |
|---|---|---|
| Model | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-3.1-flash-live-preview |
| Stem | ...google.voice |
Kore |
| Temperatuur | ...google.temperature |
(niet ingesteld) |
| VAD-startgevoeligheid | ...google.startSensitivity |
(niet ingesteld) |
| VAD-eindgevoeligheid | ...google.endSensitivity |
(niet ingesteld) |
| Stilteduur | ...google.silenceDurationMs |
(niet ingesteld) |
| Activiteitsafhandeling | ...google.activityHandling |
Google-standaardwaarde, start-of-activity-interrupts |
| Beurtdekking | ...google.turnCoverage |
Google-standaardwaarde, audio-activity-and-all-video |
| Automatische VAD uitschakelen | ...google.automaticActivityDetectionDisabled |
false |
| Sessie hervatten | ...google.sessionResumption |
true |
| Contextcompressie | ...google.contextWindowCompression |
true |
| API-sleutel | ...google.apiKey |
Valt terug op models.providers.google.apiKey, GEMINI_API_KEY of GOOGLE_API_KEY |
Voorbeeld van een realtimeconfiguratie voor Voice Call:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-3.1-flash-live-preview", speakerVoice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "audio-activity-and-all-video", }, }, }, }, }, }, },}Voer voor liveverificatie door beheerders
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts uit.
De smoketest omvat ook OpenAI-backend-/WebRTC-paden; het Google-gedeelte maakt dezelfde
beperkte Live API-tokenvorm aan die Control UI Talk gebruikt, opent het
WebSocket-eindpunt van de browser, verzendt de initiële installatiepayload plus een JPEG-frame en
verifieert een tekstrespons en een functierondreis voor describe_view.
Geavanceerde configuratie
Direct hergebruik van Gemini-cache
Voor rechtstreekse Gemini API-uitvoeringen (api: "google-generative-ai") geeft OpenClaw
een geconfigureerde cachedContent-handle door aan Gemini-aanvragen.
- Configureer parameters per model of globaal met
cachedContentof de verouderdecached_content - Parameters uit een specifiekere scope (modelniveau boven globaal) krijgen altijd voorrang.
Als beide sleutels binnen dezelfde scope zijn ingesteld, krijgt
cached_contentvoorrang. Gebruik slechts één sleutel per scope om verrassingen te voorkomen. - Voorbeeldwaarde:
cachedContents/prebuilt-context - Gemini-cachetreffergebruik wordt genormaliseerd naar OpenClaw
cacheReadvanuit upstreamcachedContentTokenCount
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Gebruiksopmerkingen voor Gemini CLI
Bij gebruik van de OAuth-provider google-gemini-cli gebruikt OpenClaw standaard
uitvoer van Gemini CLI stream-json en normaliseert het gebruik vanuit de uiteindelijke
stats-payload. Verouderde overschrijvingen voor --output-format json gebruiken nog steeds de
JSON-parser.
- Gestreamde antwoordtekst is afkomstig van assistentgebeurtenissen van
message. - Voor verouderde JSON-uitvoer is de antwoordtekst afkomstig uit het CLI JSON-veld
response. - Het gebruik valt terug op
statswanneer de CLIusageleeg laat. stats.cachedwordt genormaliseerd naar OpenClawcacheRead.- Als
stats.inputontbreekt, leidt OpenClaw invoertokens af uitstats.input_tokens - stats.cached.
Omgevings- en daemonconfiguratie
Als de Gateway als daemon (launchd/systemd) wordt uitgevoerd, zorg er dan voor dat GEMINI_API_KEY
beschikbaar is voor dat proces (bijvoorbeeld in ~/.openclaw/.env of via
env.shellEnv).
Gerelateerd
Providers, modelreferenties en failovergedrag kiezen.
Gedeelde parameters voor afbeeldingstools en providerselectie.
Gedeelde parameters voor videotools en providerselectie.
Gedeelde parameters voor muziektools en providerselectie.