Providers
Google (Gemini)
Plugin Google menyediakan akses ke model Gemini melalui Google AI Studio, serta pembuatan gambar, pemahaman media (gambar/audio/video), text-to-speech, dan pencarian web melalui Gemini Grounding.
- Penyedia:
google - Auth:
GEMINI_API_KEYatauGOOGLE_API_KEY - API: Google Gemini API
- Opsi runtime: provider/model
agentRuntime.id: "google-gemini-cli"menggunakan ulang OAuth Gemini CLI sambil mempertahankan referensi model kanonis sebagaigoogle/*.
Memulai
Pilih metode auth yang Anda inginkan dan ikuti langkah penyiapannya.
Kunci API
Paling cocok untuk: akses Gemini API standar melalui Google AI Studio.
Jalankan onboarding
openclaw onboard --auth-choice gemini-api-keyAtau berikan kuncinya secara langsung:
openclaw onboard --non-interactive \ --mode local \ --auth-choice gemini-api-key \ --gemini-api-key "$GEMINI_API_KEY"Tetapkan model default
{ agents: { defaults: { model: { primary: "google/gemini-3.1-pro-preview" }, }, },}Verifikasi bahwa model tersedia
openclaw models list --provider googleGemini CLI (OAuth)
Paling cocok untuk: menggunakan ulang login Gemini CLI yang sudah ada melalui PKCE OAuth, alih-alih kunci API terpisah.
Instal Gemini CLI
Perintah lokal gemini harus tersedia di PATH.
# Homebrewbrew install gemini-cli # or npmnpm install -g @google/gemini-cliOpenClaw mendukung instalasi Homebrew dan instalasi npm global, termasuk tata letak Windows/npm yang umum.
Masuk melalui OAuth
openclaw models auth login --provider google-gemini-cli --set-defaultVerifikasi bahwa model tersedia
openclaw models list --provider google- Model default:
google/gemini-3.1-pro-preview - Runtime:
google-gemini-cli - Alias:
gemini-cli
ID model Gemini API untuk Gemini 3.1 Pro adalah gemini-3.1-pro-preview. OpenClaw menerima bentuk yang lebih pendek google/gemini-3.1-pro sebagai alias praktis dan menormalkannya sebelum panggilan penyedia.
Variabel lingkungan:
OPENCLAW_GEMINI_OAUTH_CLIENT_IDOPENCLAW_GEMINI_OAUTH_CLIENT_SECRET
(Atau varian GEMINI_CLI_*.)
Referensi model google-gemini-cli/* adalah alias kompatibilitas lama. Konfigurasi
baru sebaiknya menggunakan referensi model google/* plus runtime google-gemini-cli
saat menginginkan eksekusi Gemini CLI lokal.
Kemampuan
| Kemampuan | Didukung |
|---|---|
| Penyelesaian chat | Ya |
| Pembuatan gambar | Ya |
| Pembuatan musik | Ya |
| Text-to-speech | Ya |
| Suara realtime | Ya (Google Live API) |
| Pemahaman gambar | Ya |
| Transkripsi audio | Ya |
| Pemahaman video | Ya |
| Pencarian web (Grounding) | Ya |
| Berpikir/penalaran | Ya (Gemini 2.5+ / Gemini 3+) |
| Model Gemma 4 | Ya |
Pencarian web
Penyedia pencarian web gemini bawaan menggunakan grounding Google Search Gemini.
Konfigurasikan kunci pencarian khusus di bawah plugins.entries.google.config.webSearch,
atau biarkan menggunakan ulang models.providers.google.apiKey setelah GEMINI_API_KEY:
{ 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", }, }, }, }, },}Prioritas kredensial adalah webSearch.apiKey khusus, lalu GEMINI_API_KEY,
lalu models.providers.google.apiKey. webSearch.baseUrl bersifat opsional dan
ada untuk proxy operator atau endpoint Gemini API yang kompatibel; jika dihilangkan,
pencarian web Gemini menggunakan ulang models.providers.google.baseUrl. Lihat
Pencarian Gemini untuk perilaku alat khusus penyedia.
Pembuatan gambar
Penyedia pembuatan gambar google bawaan menggunakan default
google/gemini-3.1-flash-image-preview.
- Juga mendukung
google/gemini-3-pro-image-preview - Buat: hingga 4 gambar per permintaan
- Mode edit: diaktifkan, hingga 5 gambar input
- Kontrol geometri:
size,aspectRatio, danresolution
Untuk menggunakan Google sebagai penyedia gambar default:
{ agents: { defaults: { imageGenerationModel: { primary: "google/gemini-3.1-flash-image-preview", }, }, },}Pembuatan video
Plugin google bawaan juga mendaftarkan pembuatan video melalui alat bersama
video_generate.
- Model video default:
google/veo-3.1-fast-generate-preview - Mode: alur teks-ke-video, gambar-ke-video, dan referensi video tunggal
- Mendukung
aspectRatio(16:9,9:16) danresolution(720P,1080P); output audio tidak didukung oleh Veo saat ini - Durasi yang didukung: 4, 6, atau 8 detik (nilai lain dibulatkan ke nilai terdekat yang diizinkan)
Untuk menggunakan Google sebagai penyedia video default:
{ agents: { defaults: { videoGenerationModel: { primary: "google/veo-3.1-fast-generate-preview", }, }, },}Pembuatan musik
Plugin google bawaan juga mendaftarkan pembuatan musik melalui alat bersama
music_generate.
- Model musik default:
google/lyria-3-clip-preview - Juga mendukung
google/lyria-3-pro-preview - Kontrol prompt:
lyricsdaninstrumental - Format output:
mp3secara default, pluswavpadagoogle/lyria-3-pro-preview - Input referensi: hingga 10 gambar
- Eksekusi berbasis sesi dilepaskan melalui alur tugas/status bersama, termasuk
action: "status"
Untuk menggunakan Google sebagai penyedia musik default:
{ agents: { defaults: { musicGenerationModel: { primary: "google/lyria-3-clip-preview", }, }, },}Text-to-speech
Penyedia ucapan google bawaan menggunakan jalur TTS Gemini API dengan
gemini-3.1-flash-tts-preview.
- Suara default:
Kore - Auth:
messages.tts.providers.google.apiKey,models.providers.google.apiKey,GEMINI_API_KEY, atauGOOGLE_API_KEY - Output: WAV untuk lampiran TTS reguler, Opus untuk target catatan suara, PCM untuk Talk/telephony
- Output catatan suara: PCM Google dibungkus sebagai WAV dan ditranskode menjadi Opus 48 kHz dengan
ffmpeg
Jalur batch Gemini TTS Google mengembalikan audio yang dibuat dalam respons
generateContent yang selesai. Untuk percakapan lisan dengan latensi terendah, gunakan
penyedia suara realtime Google yang didukung oleh Gemini Live API, bukan TTS
batch.
Untuk menggunakan Google sebagai penyedia TTS default:
{ 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 menggunakan prompting bahasa alami untuk kontrol gaya. Atur
audioProfile untuk menambahkan prompt gaya yang dapat digunakan ulang sebelum teks lisan. Atur
speakerName saat teks prompt Anda merujuk ke pembicara bernama.
Gemini API TTS juga menerima tag audio kurung siku yang ekspresif di dalam teks,
seperti [whispers] atau [laughs]. Agar tag tidak muncul di balasan chat yang terlihat
sambil tetap mengirimkannya ke TTS, letakkan tag di dalam blok [[tts:text]]...[[/tts:text]]:
Here is the clean reply text. [[tts:text]][whispers] Here is the spoken version.[[/tts:text]]Suara realtime
Plugin google bawaan mendaftarkan penyedia suara realtime yang didukung oleh
Gemini Live API untuk bridge audio backend seperti Voice Call dan Google Meet.
| Pengaturan | Jalur konfigurasi | Default |
|---|---|---|
| Model | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-2.5-flash-native-audio-preview-12-2025 |
| Suara | ...google.voice |
Kore |
| Temperature | ...google.temperature |
(belum diatur) |
| Sensitivitas awal VAD | ...google.startSensitivity |
(belum diatur) |
| Sensitivitas akhir VAD | ...google.endSensitivity |
(belum diatur) |
| Durasi hening | ...google.silenceDurationMs |
(belum diatur) |
| Penanganan aktivitas | ...google.activityHandling |
Default Google, start-of-activity-interrupts |
| Cakupan giliran | ...google.turnCoverage |
Default Google, only-activity |
| Nonaktifkan VAD otomatis | ...google.automaticActivityDetectionDisabled |
false |
| Pelanjutan sesi | ...google.sessionResumption |
true |
| Kompresi konteks | ...google.contextWindowCompression |
true |
| Kunci API | ...google.apiKey |
Beralih ke models.providers.google.apiKey, GEMINI_API_KEY, atau GOOGLE_API_KEY |
Contoh konfigurasi realtime 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", }, }, }, }, }, }, },}Untuk verifikasi live oleh maintainer, jalankan
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts.
Smoke test ini juga mencakup jalur backend/WebRTC OpenAI; bagian Google membuat bentuk
token Live API terbatas yang sama dengan yang digunakan oleh Control UI Talk, membuka endpoint
WebSocket browser, mengirim payload penyiapan awal, dan menunggu
setupComplete.
Konfigurasi lanjutan
Direct Gemini cache reuse
Untuk eksekusi Gemini API langsung (api: "google-generative-ai"), OpenClaw
meneruskan handle cachedContent yang dikonfigurasi ke permintaan Gemini.
- Konfigurasikan parameter per model atau global dengan
cachedContentataucached_contentlama - Jika keduanya ada,
cachedContentyang berlaku - Contoh nilai:
cachedContents/prebuilt-context - Penggunaan cache-hit Gemini dinormalisasi ke OpenClaw
cacheReaddaricachedContentTokenCountupstream
{ agents: { defaults: { models: { "google/gemini-2.5-pro": { params: { cachedContent: "cachedContents/prebuilt-context", }, }, }, }, },}Gemini CLI usage notes
Saat menggunakan penyedia OAuth google-gemini-cli, OpenClaw menggunakan output
stream-json Gemini CLI secara default dan menormalisasi penggunaan dari payload
stats akhir. Override --output-format json lama tetap menggunakan
parser JSON.
- Teks balasan streaming berasal dari event
messageasisten. - Untuk output JSON lama, teks balasan berasal dari field
responseJSON CLI. - Penggunaan beralih ke
statssaat CLI membiarkanusagekosong. stats.cacheddinormalisasi ke OpenClawcacheRead.- Jika
stats.inputtidak ada, OpenClaw menurunkan token input daristats.input_tokens - stats.cached.
Environment and daemon setup
Jika Gateway berjalan sebagai daemon (launchd/systemd), pastikan GEMINI_API_KEY
tersedia untuk proses tersebut (misalnya, di ~/.openclaw/.env atau melalui
env.shellEnv).