- プロバイダー:
google - 認証:
GEMINI_API_KEYまたはGOOGLE_API_KEY - API: Google Gemini API
- ランタイムオプション:
agentRuntime.id: "google-gemini-cli"は Gemini CLI OAuth を再利用しつつ、モデル参照をgoogle/*として正規のまま保持します。
はじめに
希望する認証方法を選び、セットアップ手順に従ってください。- API key
- Gemini CLI (OAuth)
google/gemini-3-pro-preview は 2026-03-09 に廃止されました。代わりに google/gemini-3.1-pro-preview を使用してください。Gemini API キーのセットアップ(openclaw onboard --auth-choice gemini-api-key または openclaw models auth login --provider google)を再実行すると、古い設定済みデフォルトが現在のモデルに書き換えられます。機能
| 機能 | サポート |
|---|---|
| チャット補完 | はい |
| 画像生成 | はい |
| 音楽生成 | はい |
| テキスト読み上げ | はい |
| リアルタイム音声 | はい(Google Live API) |
| 画像理解 | はい |
| 音声文字起こし | はい |
| 動画理解 | はい |
| ウェブ検索(Grounding) | はい |
| 思考/推論 | はい(Gemini 2.5+ / Gemini 3+) |
| Gemma 4 モデル | はい |
ウェブ検索
バンドルされたgemini ウェブ検索プロバイダーは、Gemini Google Search grounding を使用します。
専用の検索キーを plugins.entries.google.config.webSearch に設定するか、
GEMINI_API_KEY の後に models.providers.google.apiKey を再利用させます。
webSearch.apiKey、次に GEMINI_API_KEY、
次に models.providers.google.apiKey です。webSearch.baseUrl は省略可能で、
運用者のプロキシまたは互換 Gemini API エンドポイント用に存在します。省略された場合、
Gemini ウェブ検索は models.providers.google.baseUrl を再利用します。プロバイダー固有のツール動作については
Gemini 検索 を参照してください。
画像生成
バンドルされたgoogle 画像生成プロバイダーのデフォルトは
google/gemini-3.1-flash-image-preview です。
google/gemini-3-pro-image-previewもサポート- 生成: リクエストあたり最大 4 画像
- 編集モード: 有効、最大 5 入力画像
- ジオメトリ制御:
size、aspectRatio、resolution
共有ツールパラメーター、プロバイダー選択、フェイルオーバー動作については、画像生成 を参照してください。
動画生成
バンドルされたgoogle Plugin は、共有
video_generate ツールを通じて動画生成も登録します。
- デフォルト動画モデル:
google/veo-3.1-fast-generate-preview - モード: テキストから動画、画像から動画、単一動画参照フロー
aspectRatio(16:9、9:16)とresolution(720P、1080P)をサポートします。音声出力は現在 Veo でサポートされていません- サポートされる長さ: 4、6、または 8 秒(その他の値は最も近い許可値に丸められます)
共有ツールパラメーター、プロバイダー選択、フェイルオーバー動作については、動画生成 を参照してください。
音楽生成
バンドルされたgoogle Plugin は、共有
music_generate ツールを通じて音楽生成も登録します。
- デフォルト音楽モデル:
google/lyria-3-clip-preview google/lyria-3-pro-previewもサポート- プロンプト制御:
lyricsとinstrumental - 出力形式: デフォルトは
mp3、google/lyria-3-pro-previewではwavも使用可能 - 参照入力: 最大 10 画像
- セッションに基づく実行は、
action: "status"を含む共有タスク/ステータスフローを通じて切り離されます
共有ツールパラメーター、プロバイダー選択、フェイルオーバー動作については、音楽生成 を参照してください。
テキスト読み上げ
バンドルされたgoogle 音声プロバイダーは、Gemini API TTS パスを
gemini-3.1-flash-tts-preview とともに使用します。
- デフォルト音声:
Kore - 認証:
messages.tts.providers.google.apiKey、models.providers.google.apiKey、GEMINI_API_KEY、またはGOOGLE_API_KEY - 出力: 通常の TTS 添付は WAV、ボイスメモ対象は Opus、Talk/電話は PCM
- ボイスメモ出力: Google PCM は WAV としてラップされ、
ffmpegで 48 kHz Opus にトランスコードされます
generateContent レスポンスで生成音声を返します。最も低レイテンシな音声会話には、バッチ
TTS ではなく Gemini Live API を基盤とする Google リアルタイム音声プロバイダーを使用してください。
Google をデフォルトの TTS プロバイダーとして使用するには:
speakerName は、音声テキストの前に再利用可能なスタイルプロンプトを追加するために設定します。
プロンプトテキストが名前付き話者に言及する場合は speakerName を設定します。
Gemini API TTS は、テキスト内で [whispers] や [laughs] などの表現豊かな角括弧音声タグも受け付けます。
タグを表示されるチャット返信に含めずに TTS に送るには、
[[tts:text]]...[[/tts:text]] ブロック内に入れます。
Gemini API に制限された Google Cloud Console API キーは、この
プロバイダーで有効です。これは別個の Cloud Text-to-Speech API パスではありません。
リアルタイム音声
バンドルされたgoogle Plugin は、Voice Call や Google Meet などのバックエンド音声ブリッジ向けに、
Gemini Live API を基盤とするリアルタイム音声プロバイダーを登録します。
| 設定 | 設定パス | デフォルト |
|---|---|---|
| モデル | plugins.entries.voice-call.config.realtime.providers.google.model | gemini-2.5-flash-native-audio-preview-12-2025 |
| 音声 | ...google.voice | Kore |
| 温度 | ...google.temperature | (未設定) |
| VAD 開始感度 | ...google.startSensitivity | (未設定) |
| VAD 終了感度 | ...google.endSensitivity | (未設定) |
| 無音時間 | ...google.silenceDurationMs | (未設定) |
| アクティビティ処理 | ...google.activityHandling | Google デフォルト、start-of-activity-interrupts |
| ターン範囲 | ...google.turnCoverage | Google デフォルト、only-activity |
| 自動 VAD を無効化 | ...google.automaticActivityDetectionDisabled | false |
| セッション再開 | ...google.sessionResumption | true |
| コンテキスト圧縮 | ...google.contextWindowCompression | true |
| API キー | ...google.apiKey | models.providers.google.apiKey、GEMINI_API_KEY、または GOOGLE_API_KEY にフォールバック |
Google Live API は、WebSocket 上で双方向音声と関数呼び出しを使用します。
OpenClaw は電話/Meet ブリッジ音声を Gemini の PCM Live API ストリームに適合させ、
ツール呼び出しを共有リアルタイム音声コントラクト上に維持します。サンプリング変更が必要でない限り、
temperature
は未設定のままにしてください。Google Live は temperature: 0 の場合に音声なしで文字起こしを返すことがあるため、
OpenClaw は非正値を省略します。
Gemini API の文字起こしは languageCodes なしで有効化されます。現在の Google
SDK は、この API パスで言語コードのヒントを拒否します。Control UI Talk は、制約付きの使い捨てトークンによる Google Live ブラウザーセッションをサポートします。
バックエンド専用のリアルタイム音声プロバイダーも、汎用
Gateway リレートランスポート経由で実行でき、プロバイダー認証情報は Gateway に保持されます。
OPENAI_API_KEY=... GEMINI_API_KEY=... node --import tsx scripts/dev/realtime-talk-live-smoke.ts
を実行します。
このスモークは OpenAI バックエンド/WebRTC パスもカバーします。Google 側は Control UI Talk で使用されるものと同じ
制約付き Live API トークン形状を発行し、ブラウザーの
WebSocket エンドポイントを開き、初期セットアップペイロードを送信して、
setupComplete を待機します。
高度な設定
Gemini キャッシュの直接再利用
Gemini キャッシュの直接再利用
直接 Gemini API を実行する場合 (
api: "google-generative-ai")、OpenClaw は
設定済みの cachedContent ハンドルを Gemini リクエストに渡します。- モデルごとまたはグローバルのパラメーターは、
cachedContentまたはレガシーのcached_contentのいずれかで設定します - より具体的なスコープのパラメーター (グローバルよりモデルレベル) が常に優先されます。
同じスコープ内で両方のキーが設定されている場合、
cached_contentが優先されます。 予期しない動作を避けるため、スコープごとにキーは 1 つだけ使用してください。 - 値の例:
cachedContents/prebuilt-context - Gemini のキャッシュヒット使用量は、上流の
cachedContentTokenCountから OpenClaw のcacheReadに正規化されます
Gemini CLI 使用上の注意
Gemini CLI 使用上の注意
google-gemini-cli OAuth プロバイダーを使用する場合、OpenClaw はデフォルトで Gemini
CLI の stream-json 出力を使用し、最後の
stats ペイロードから使用量を正規化します。レガシーの --output-format json 上書きは、引き続き
JSON パーサーを使用します。- ストリーミングされた返信テキストは、アシスタントの
messageイベントから取得されます。 - レガシー JSON 出力では、返信テキストは CLI JSON の
responseフィールドから取得されます。 - CLI が
usageを空にした場合、使用量はstatsにフォールバックします。 stats.cachedは OpenClaw のcacheReadに正規化されます。stats.inputがない場合、OpenClaw はstats.input_tokens - stats.cachedから入力トークンを導出します。
環境とデーモン設定
環境とデーモン設定
Gateway がデーモン (launchd/systemd) として実行される場合、
GEMINI_API_KEY
がそのプロセスで利用できることを確認してください (たとえば、~/.openclaw/.env または
env.shellEnv 経由)。関連
モデル選択
プロバイダー、モデル参照、フェイルオーバー動作を選択します。
画像生成
共有画像ツールのパラメーターとプロバイダー選択。
動画生成
共有動画ツールのパラメーターとプロバイダー選択。
音楽生成
共有音楽ツールのパラメーターとプロバイダー選択。