Providers
Google (Gemini)
Plugin Google menyediakan akses ke model Gemini melalui Google AI Studio, ditambah pembuatan gambar, pemahaman media (gambar/audio/video), text-to-speech, dan pencarian web melalui Gemini Grounding.
- Penyedia:
google - Autentikasi:
GEMINI_API_KEYatauGOOGLE_API_KEY - API: Google Gemini API
- Opsi runtime:
agents.defaults.agentRuntime.id: "google-gemini-cli"menggunakan ulang OAuth Gemini CLI sambil menjaga referensi model tetap kanonis sebagaigoogle/*.
Memulai
Pilih metode autentikasi yang Anda inginkan dan ikuti langkah-langkah penyiapannya.
Kunci API
Paling cocok untuk: akses Gemini API standar melalui Google AI Studio.
Jalankan onboarding
openclaw onboard --auth-choice gemini-api-key
Atau teruskan 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 model tersedia
openclaw models list --provider google
Gemini CLI (OAuth)
Paling cocok untuk: menggunakan ulang login Gemini CLI yang sudah ada melalui OAuth PKCE, bukan kunci API terpisah.
Instal Gemini CLI
Perintah lokal gemini harus tersedia di PATH.
# Homebrew
brew install gemini-cli
# or npm
npm install -g @google/gemini-cli
OpenClaw 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-default
Verifikasi 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 milik Gemini 3.1 Pro adalah gemini-3.1-pro-preview. OpenClaw menerima bentuk 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/* ditambah runtime google-gemini-cli
saat menginginkan eksekusi Gemini CLI lokal.
Kapabilitas
| Kapabilitas | 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
tersedia untuk proxy operator atau endpoint Gemini API yang kompatibel; saat 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,resolution, danaudio - Batas durasi saat ini: 4 hingga 8 detik
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, ditambahwavpadagoogle/lyria-3-pro-preview - Input referensi: hingga 10 gambar
- Eksekusi berbasis sesi dilepas 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 - Autentikasi:
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/telefoni
- Output catatan suara: PCM Google dibungkus sebagai WAV dan ditranskode ke Opus 48 kHz dengan
ffmpeg
Jalur batch TTS Gemini milik Google mengembalikan audio yang dibuat dalam respons
generateContent yang selesai. Untuk percakapan lisan dengan latensi terendah, gunakan
penyedia suara realtime Google yang didukung Gemini Live API, bukan batch
TTS.
Untuk menggunakan Google sebagai penyedia TTS default:
{
messages: {
tts: {
auto: "always",
provider: "google",
providers: {
google: {
model: "gemini-3.1-flash-tts-preview",
voiceName: "Kore",
audioProfile: "Speak professionally with a calm tone.",
},
},
},
},
}
TTS Gemini API menggunakan prompt bahasa alami untuk kontrol gaya. Atur
audioProfile untuk menambahkan prompt gaya yang dapat digunakan ulang sebelum teks yang diucapkan. Atur
speakerName saat teks prompt Anda merujuk pada pembicara bernama.
TTS Gemini API juga menerima tag audio ekspresif dalam tanda kurung siku di teks,
seperti [whispers] atau [laughs]. Untuk menjaga tag tidak muncul di balasan chat yang terlihat
sambil mengirimnya ke TTS, letakkan 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 jembatan audio backend seperti Voice Call dan Google Meet.
| Pengaturan | Jalur konfigurasi | Bawaan |
|---|---|---|
| Model | plugins.entries.voice-call.config.realtime.providers.google.model |
gemini-2.5-flash-native-audio-preview-12-2025 |
| Suara | ...google.voice |
Kore |
| Temperatur | ...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 |
Bawaan Google, start-of-activity-interrupts |
| Cakupan giliran | ...google.turnCoverage |
Bawaan 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 waktu nyata Panggilan Suara:
{
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",
},
},
},
},
},
},
},
}
Untuk verifikasi langsung maintainer, jalankan
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts.
Bagian Google membuat bentuk token Live API terbatas yang sama seperti yang digunakan oleh Control
UI Talk, membuka endpoint WebSocket browser, mengirim payload penyiapan awal,
dan menunggu setupComplete.
Konfigurasi lanjutan
Penggunaan ulang cache Gemini langsung
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
cachedContentatau warisancached_content - Jika keduanya ada,
cachedContentmenang - Contoh nilai:
cachedContents/prebuilt-context - Penggunaan cache-hit Gemini dinormalisasi ke dalam
cacheReadOpenClaw dari upstreamcachedContentTokenCount
{
agents: {
defaults: {
models: {
"google/gemini-2.5-pro": {
params: {
cachedContent: "cachedContents/prebuilt-context",
},
},
},
},
},
}
Catatan penggunaan JSON Gemini CLI
Saat menggunakan penyedia OAuth google-gemini-cli, OpenClaw menormalisasi
output JSON CLI sebagai berikut:
- Teks balasan berasal dari kolom
responseJSON CLI. - Penggunaan beralih ke
statssaat CLI membiarkanusagekosong. stats.cacheddinormalisasi ke dalamcacheReadOpenClaw.- Jika
stats.inputtidak ada, OpenClaw memperoleh token input daristats.input_tokens - stats.cached.
Lingkungan dan penyiapan daemon
Jika Gateway berjalan sebagai daemon (launchd/systemd), pastikan GEMINI_API_KEY
tersedia untuk proses tersebut (misalnya, di ~/.openclaw/.env atau melalui
env.shellEnv).