コンテンツにスキップ
メインサイト ニュース コンソール

Gemini API ホスティングプロキシ:3.6 Flash、フックなど

· Google AI 翻訳済
GoogleGemini

2026 年 7 月 28 日

Gemini API のマネージドエージェントがデフォルトで Gemini 3.6 Flash を使用

Gemini API のマネージドエージェント(Managed Agents)が、デフォルトで Gemini 3.6 Flash を使用するようになりました。新しい環境フック(environment hooks)では、サンドボックス内でツール呼び出しをインターセプト、検査、監査できます。さらに、予算制御、スケジュールトリガー、無料枠へのアクセスも追加されました。

Philipp Schmid
Google DeepMind、技術スタッフ

Mariano Cocirio
Google DeepMind、プロダクトマネージャー

Gemini API のマネージドエージェントで、環境フック、モデル選択、無料枠へのアクセスが利用できるようになりました。これらの機能は、以前発表されたバックグラウンドタスクとリモート MCP サーバーの統合を基盤に構築されています。

Gemini Interactions APIのマネージドエージェントを利用すると、1 回の API 呼び出しで、隔離されたクラウドサンドボックス内における推論、コード実行、パッケージのインストール、ファイル管理、ウェブ検索を調整できます。

AI コーディングアシスタントを使用している場合は、ターミナルで次のコマンドを実行して、Interactions API のスキルを追加できます。

Terminal window
npx skills add google-gemini/gemini-skills --skill gemini-interactions-api

以下の例では、@google/genai TypeScript/JavaScript SDK を使用しています。Python または cURL の使用方法については、Antigravity エージェントのドキュメントをご覧ください。

Terminal window
npm install @google/genai

Gemini 3.6 Flash がデフォルトモデルに

antigravity-preview-05-2026 エージェントは、デフォルトで Gemini 3.6 Flashを実行するようになりました。コードを変更する必要はなく、次回のインタラクションから自動的にこのモデルが使用されます。

インタラクションまたはマネージドエージェントを作成する際に、agent_config.model を渡してモデルを明示的に選択することもできます。コストを抑えたい場合は Gemini 3.5 Flash-Lite を使用できます。また、好みのモデルを固定して使用することも可能です。

import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
agent: "antigravity-preview-05-2026",
input: "Audit all dependencies in package.json, upgrade outdated packages, and verify the build by running npm test.",
environment: "remote",
agent_config: {
type: "antigravity",
model: "gemini-3.5-flash-lite",
},
});
console.log(interaction.output_text);

サポートされているモデルは次のとおりです。

  • Gemini 3.6 Flash(gemini-3.6-flash、デフォルト):推論、コーディング、ツール利用のバランスに優れたモデルです。
  • Gemini 3.5 Flash(gemini-3.5-flash):汎用的なエージェントワークフロー向けの前世代モデルです。
  • Gemini 3.5 Flash-Lite(gemini-3.5-flash-lite):Gemini 3.5 シリーズの中で、レイテンシとコストが最も低いモデルです。

環境フック:サンドボックス内でツール呼び出しをインターセプト、検査、監査

環境フックを使用すると、エージェントがサンドボックス内で各ツール呼び出しを実行する前後に、カスタムスクリプトを実行できます。環境に .agents/hooks.json を追加すると、ランタイムは pre_tool_execution または post_tool_execution イベントの発生時に、対応するハンドラーを実行します。

matcher フィールドは正規表現に対応しており、| で複数のツールに一致させたり、* ですべてのツールに一致させたりできます。

{
"security-gate": {
"pre_tool_execution": [
{
"matcher": "code_execution|write_file",
"hooks": [
{
"type": "command",
"command": "python3 /.agents/hooks-scripts/gate.py",
"timeout": 10
}
]
}
]
},
"auto-format": {
"post_tool_execution": [
{
"matcher": "*",
"hooks": [
{
"type": "command",
"command": "python3 /.agents/hooks-scripts/auto_lint.py",
"timeout": 15
}
]
}
]
}
}

この設定では、次のように動作します。

  • security-gate グループは、code_execution または write_file の呼び出し前に gate.py を実行します。スクリプトが {"decision": "deny", "reason": "..."} を返した場合、ツール呼び出しはスキップされ、拒否理由もモデルのコンテキストに渡されます。
  • auto-format グループは、各ツールの実行完了後に auto_lint.py を実行し、コードスタイルの規約を強制します。
  • フックでは http タイプのハンドラーもサポートされており、外部エンドポイントに POST リクエストを直接送信できます。

HTTP フックの完全な定義と、失敗時の処理仕様については、フックのドキュメントをご覧ください。

すでに一部のチームでは、フックを利用して本番環境向けの検証パイプラインを構築しています。たとえば、AI ネイティブ投資銀行の Offdeal は、post_tool_execution フックを使用して、リモートサンドボックス内で自動画像検証を実行しています。

「OffDeal は AI ネイティブの投資銀行で、Archie は当行のバンカーが日々利用する AI アナリストです。バンカー向けのプレゼンテーションを作成するには、企業ロゴが欠かせません。バイヤー向けの表、スポンサーの列、墓碑銘式グリッドには通常 30 以上のロゴが表示されますが、各ロゴは正しい企業に対応し、適切なサイズとアスペクト比で、企業名を含み、背景が透明で、白いスライド上に配置した際に十分なコントラストを備えていなければなりません。

エージェントフックが登場する前は、Gemini のマネージドエージェント上でこの作業を完了できませんでした。サンドボックスがリモート環境にあるため、検証コードを実行する場所がなかったからです。フックの登場後は、Archie が企業リストを書き込んだ瞬間に、post_tool_execution フックがサンドボックス内で当社のパイプラインを起動します。候補ロゴの取得、ピクセル単位の品質チェック、Gemini Vision による各ロゴの検証を実行し、承認済みファイルの一覧を生成します。プレゼンテーションに配置できるのは、その一覧に含まれる画像だけです。」

——Alston Lin、OffDeal 創業者兼最高技術責任者

コスト制御と自動化機能

無料枠での利用

マネージドエージェントが無料枠のプロジェクトに対応しました。開発者は、有効な課金機能が有効になっていないプロジェクトの API キーを使用して、エージェントワークフローを試すことができます。

予算制御

マネージドエージェントは複数回にわたる自律的なループを実行するため、複雑なタスクでは大量のトークン予算を消費する可能性があります。タスクの実行が制御不能になるのを防ぐには、agent_config に max_total_tokens を渡して、トークンの総消費量(入力、出力、思考トークンを含む)を制限します。

エージェントがこの制限に達すると、実行は安全に一時停止され、インタラクションの status は "incomplete" になります。環境の状態は保持されるため、previous_interaction_id を渡して新しい予算を設定することで、中断した位置から実行を再開できます。

const interaction = await client.interactions.create({
agent: "antigravity-preview-05-2026",
input: "A