Providers
Google (Gemini)
Das Google-Plugin bietet Zugriff auf Gemini-Modelle über Google AI Studio sowie Bildgenerierung, Medienverständnis (Bild/Audio/Video), Text-to-Speech und Websuche über Gemini Grounding.
- Provider:
google - Auth:
GEMINI_API_KEYoderGOOGLE_API_KEY - API: Google Gemini API
- Laufzeitoption: Provider/Modell
agentRuntime.id: "google-gemini-cli"verwendet Gemini CLI OAuth wieder, während Modellreferenzen kanonisch alsgoogle/*bleiben.
Erste Schritte
Wählen Sie Ihre bevorzugte Authentifizierungsmethode und folgen Sie den Einrichtungsschritten.
API-Schlüssel
Am besten geeignet für: standardmäßigen Gemini-API-Zugriff über Google AI Studio.
Onboarding ausführen
openclaw onboard --auth-choice gemini-api-keyOder übergeben Sie den Schlüssel direkt:
openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY"Ein Standardmodell festlegen
{ agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, },}Prüfen, ob das Modell verfügbar ist
openclaw models list --provider googleGemini CLI (OAuth)
Am besten geeignet für: die Wiederverwendung einer vorhandenen Gemini CLI-Anmeldung per PKCE OAuth statt eines separaten API-Schlüssels.
Gemini CLI installieren
Der lokale Befehl gemini muss auf PATH verfügbar sein.
# Homebrewbrew install gemini-cli # or npmnpm install -g @google/gemini-cliOpenClaw unterstützt sowohl Homebrew-Installationen als auch globale npm-Installationen, einschließlich gängiger Windows/npm-Layouts.
Per OAuth anmelden
openclaw models auth login --provider google-gemini-cli --set-defaultPrüfen, ob das Modell verfügbar ist
openclaw models list --provider google- Standardmodell:
google/gemini-3.1-pro-preview - Runtime:
google-gemini-cli - Alias:
gemini-cli
Die Gemini API-Modell-ID von Gemini 3.1 Pro ist gemini-3.1-pro-preview. OpenClaw akzeptiert das kürzere google/gemini-3.1-pro als komfortablen Alias und normalisiert es vor Provider-Aufrufen.
Umgebungsvariablen:
OPENCLAW_GEMINI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET
(Oder die Varianten GEMINI_CLI_*.)
Modellreferenzen google-gemini-cli/* sind Legacy-Kompatibilitätsaliase. Neue
Konfigurationen sollten Modellreferenzen google/* plus die Runtime google-gemini-cli
verwenden, wenn sie eine lokale Gemini CLI-Ausführung wünschen.
Funktionen
| Funktion | Unterstützt |
|---|---|
| Chat-Vervollständigungen | Ja |
| Bildgenerierung | Ja |
| Musikgenerierung | Ja |
| Text-to-Speech | Ja |
| Echtzeit-Sprache | Ja (Google Live API) |
| Bildverständnis | Ja |
| Audiotranskription | Ja |
| Videoverständnis | Ja |
| Websuche (Grounding) | Ja |
| Denken/Reasoning | Ja (Gemini 2.5+ / Gemini 3+) |
| Gemma 4-Modelle | Ja |
Websuche
Der gebündelte Websuche-Provider gemini verwendet Gemini Google Search Grounding.
Konfigurieren Sie einen dedizierten Suchschlüssel unter plugins.entries.google.config.webSearch,
oder lassen Sie ihn models.providers.google.apiKey nach GEMINI_API_KEY wiederverwenden:
{ 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", }, }, }, }, },}Die Anmeldedaten-Priorität ist dediziertes webSearch.apiKey, dann GEMINI_API_KEY,
dann models.providers.google.apiKey. webSearch.baseUrl ist optional und
existiert für Betreiber-Proxys oder kompatible Gemini API-Endpunkte; wenn es weggelassen wird,
verwendet die Gemini-Websuche models.providers.google.baseUrl wieder. Siehe
Gemini-Suche für das Provider-spezifische Tool-Verhalten.
Bildgenerierung
Der gebündelte Bildgenerierungs-Provider google verwendet standardmäßig
google/gemini-3.1-flash-image-preview.
- Unterstützt auch
google/gemini-3-pro-image-preview - Generieren: bis zu 4 Bilder pro Anfrage
- Bearbeitungsmodus: aktiviert, bis zu 5 Eingabebilder
- Geometriesteuerungen:
size,aspectRatioundresolution
So verwenden Sie Google als Standard-Bild-Provider:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, },}Videogenerierung
Das gebündelte google-Plugin registriert auch Videogenerierung über das gemeinsame
Tool video_generate.
- Standard-Videomodell:
google/veo-3.1-fast-generate-preview - Modi: Text-zu-Video, Bild-zu-Video und Einzelvideo-Referenzabläufe
- Unterstützt
aspectRatio(16:9,9:16) undresolution(720P,1080P); Audioausgabe wird von Veo derzeit nicht unterstützt - Unterstützte Dauern: 4, 6 oder 8 Sekunden (andere Werte rasten auf den nächstgelegenen zulässigen Wert ein)
So verwenden Sie Google als Standard-Video-Provider:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}Musikgenerierung
Das gebündelte google-Plugin registriert auch Musikgenerierung über das gemeinsame
Tool music_generate.
- Standard-Musikmodell:
google/lyria-3-clip-preview - Unterstützt auch
google/lyria-3-pro-preview - Prompt-Steuerungen:
lyricsundinstrumental - Ausgabeformat: standardmäßig
mp3, pluswavaufgoogle/lyria-3-pro-preview - Referenzeingaben: bis zu 10 Bilder
- Sitzungsbasierte Läufe werden über den gemeinsamen Task-/Statusablauf entkoppelt, einschließlich
action: "status"
So verwenden Sie Google als Standard-Musik-Provider:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}Text-to-Speech
Der gebündelte Speech-Provider google verwendet den Gemini API TTS-Pfad mit
gemini-3.1-flash-tts-preview.
- Standardstimme:
Kore - Auth:
messages.tts.providers.google.apiKey,models.providers.google.apiKey,GEMINI_API_KEYoderGOOGLE_API_KEY - Ausgabe: WAV für reguläre TTS-Anhänge, Opus für Sprachnotiz-Ziele, PCM für Talk/Telefonie
- Sprachnotiz-Ausgabe: Google PCM wird als WAV verpackt und mit
ffmpegin 48-kHz-Opus transkodiert
Googles Batch-Gemini-TTS-Pfad gibt generiertes Audio in der abgeschlossenen
generateContent-Antwort zurück. Für gesprochene Konversationen mit niedrigster Latenz verwenden Sie den
Google-Echtzeit-Sprach-Provider, der von der Gemini Live API unterstützt wird, statt Batch-
TTS.
So verwenden Sie Google als Standard-TTS-Provider:
{ messages: { tts: { auto: "always", provider: "google", providers: { google: { model: "gemini-3.1-flash-tts-preview", speakerVoice: "Kore", audioProfile: "Speak professionally with a calm tone.", }, }, }, },}Gemini API TTS verwendet natürlichsprachliches Prompting zur Stilsteuerung. Setzen Sie
audioProfile, um dem gesprochenen Text einen wiederverwendbaren Stil-Prompt voranzustellen. Setzen Sie
speakerName, wenn Ihr Prompt-Text auf einen benannten Sprecher verweist.
Gemini API TTS akzeptiert außerdem expressive Audio-Tags in eckigen Klammern im Text,
wie [whispers] oder [laughs]. Um Tags aus der sichtbaren Chat-Antwort
herauszuhalten und sie trotzdem an TTS zu senden, setzen Sie sie in einen [[tts:text]]...[[/tts:text]]-
Block:
Here is the clean reply text. [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]Echtzeit-Sprache
Das gebündelte google-Plugin registriert einen Echtzeit-Sprach-Provider, der von der
Gemini Live API für Backend-Audio-Bridges wie Voice Call und Google Meet unterstützt wird.
| Einstellung | Konfigurationspfad | Standardwert |
|---|---|---|
| Modell | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-2.5-flash-native-audio-preview-12-2025 |
| Stimme | ...google.voice |
Kore |
| Temperatur | ...google.temperature |
(nicht gesetzt) |
| VAD-Startempfindlichkeit | ...google.startSensitivity |
(nicht gesetzt) |
| VAD-Endempfindlichkeit | ...google.endSensitivity |
(nicht gesetzt) |
| Stilledauer | ...google.silenceDurationMs |
(nicht gesetzt) |
| Aktivitätsbehandlung | ...google.activityHandling |
Google-Standardwert, start-of-activity-interrupts |
| Turn-Abdeckung | ...google.turnCoverage |
Google-Standardwert, only-activity |
| Automatische VAD deaktivieren | ...google.automaticActivityDetectionDisabled |
false |
| Sitzungsfortsetzung | ...google.sessionResumption |
true |
| Kontextkomprimierung | ...google.contextWindowCompression |
true |
| API-Schlüssel | ...google.apiKey |
Fällt auf models.providers.google.apiKey, GEMINI_API_KEY oder GOOGLE_API_KEY zurück |
Beispiel für die Realtime-Konfiguration von Voice Call:
{ plugins: { entries: { "voice-call": { enabled: true, config: { realtime: { enabled: true, provider: "google", providers: { google: { model: "gemini-2.5-flash-native-audio-preview-12-2025", speakerVoice: "Kore", activityHandling: "start-of-activity-interrupts", turnCoverage: "only-activity", }, }, }, }, }, }, },}Für die Live-Verifizierung durch Maintainer führen Sie
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts aus.
Der Smoke-Test deckt auch OpenAI-Backend-/WebRTC-Pfade ab; der Google-Teil erstellt dieselbe
eingeschränkte Live-API-Token-Form, die von Control UI Talk verwendet wird, öffnet den Browser-
WebSocket-Endpunkt, sendet die anfängliche Setup-Payload und wartet auf
setupComplete.
Erweiterte Konfiguration
Direct Gemini cache reuse
Bei direkten Gemini-API-Läufen (api: "google-generative-ai") übergibt OpenClaw
ein konfiguriertes cachedContent-Handle an Gemini-Anfragen.
- Konfigurieren Sie modellbezogene oder globale Parameter entweder mit
cachedContentoder dem Legacy-Wertcached_content - Wenn beide vorhanden sind, hat
cachedContentVorrang - Beispielwert:
cachedContents/prebuilt-context - Gemini-Cache-Treffer-Nutzung wird aus dem Upstream-Wert
cachedContentTokenCountin OpenClawcacheReadnormalisiert
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Gemini CLI usage notes
Bei Verwendung des OAuth-Providers google-gemini-cli verwendet OpenClaw standardmäßig
die Gemini-CLI-Ausgabe stream-json und normalisiert die Nutzung aus der abschließenden
stats-Payload. Legacy-Überschreibungen mit --output-format json verwenden weiterhin den
JSON-Parser.
- Gestreamter Antworttext stammt aus Assistant-
message-Ereignissen. - Bei Legacy-JSON-Ausgabe stammt der Antworttext aus dem CLI-JSON-Feld
response. - Die Nutzung fällt auf
statszurück, wenn die CLIusageleer lässt. stats.cachedwird in OpenClawcacheReadnormalisiert.- Wenn
stats.inputfehlt, leitet OpenClaw Eingabe-Tokens ausstats.input_tokens - stats.cachedab.
Environment and daemon setup
Wenn der Gateway als Daemon ausgeführt wird (launchd/systemd), stellen Sie sicher, dass GEMINI_API_KEY
für diesen Prozess verfügbar ist (zum Beispiel in ~/.openclaw/.env oder über
env.shellEnv).