【アップデート】Gemini EnterpriseでAI developer toolsがGAになったので統制された環境でGoogle Antigravityを利用してみる

【アップデート】Gemini EnterpriseでAI developer toolsがGAになったので統制された環境でGoogle Antigravityを利用してみる

Google CloudがGemini EnterpriseのAI Developer ToolsをGAで提供開始しました。エンタープライズ向けにAntigravity 2.0/CLIの一元管理、セキュリティポリシー設定、コンプライアンスログ収集などの機能が利用できるようになりました
2026.08.21

はじめに

こんにちは。
コンサルティング部の渡邉です。

2026年8月18日、Gemini Enterpriseで AI developer tools が GAになりました。

https://docs.cloud.google.com/release-notes#August_18_2026

Gemini Enterpriseでは、AIを活用した開発ツール「Google Antigravity」(Antigravity 2.0 / Antigravity CLI)を提供しています。今回のGAにより、管理者がこれらのAI開発ツールをGoogle Cloud コンソールから一元的に管理できるようになりました。セキュリティポリシーの設定、コンプライアンスログの収集、利用可能なモデルの制御、利用状況のメトリクス監視まで、エンタープライズ運用に必要な管理機能が正式にサポートされます。

本記事では、AI developer toolsの概要について説明し、管理者向けの各設定機能を実際に試してみました。

AI developer tools とは

Gemini EnterpriseのAI developer toolsは、自律的なAIエージェントを活用してソフトウェア開発を加速するための開発ツール群です。
Gemini Enterpriseで以下の手順で AI developer tools の有効化を行うことができます。

  1. Google Cloud コンソールで Gemini Enterprise に移動
  2. 左メニューの 設定 をクリックし、AI デベロッパーツール タブを選択
  3. AI デベロッパーツール トグルをオンにする

AI developer toolsの有効化
AI developer toolsの有効化

対象ツール

対象のツールとしては、Google AntigravityとAndroid Studioになります。なお、Android Studioについては英語の公式ドキュメント(AI developer tools overview)にのみ記載があります。

AI 開発ツール 説明
Antigravity 2.0 AI エージェントの起動・監視・オーケストレーションが可能な IDE
Antigravity CLI ターミナルから Antigravity エージェントを利用するための CLI ツール
Android Studio プロフェッショナルな Android 開発向けの推奨 IDE。AI 機能により、Android アプリのビルド・デバッグ・スケーリングを高速化。最新の canary バージョンが対象

本記事ではAntigravityの管理設定を中心に解説します。

Antigravityに関しては、Gemini Enterprise Agent Platform経由でも利用可能になっていますが、組織として利用者向けにガバナンスを効かせる機能や、セキュリティ設定を強制するようなことはできませんでした。
Gemini Enterpriseでは、組織向けにガバナンスや、セキュリティに関する設定ができるようになっています。

Gemini Enterprise Agent Platform経由でのGoogle Antigravityの利用手順や機能概要については、以前ブログにしていますのでこちらも参照ください。

https://dev.classmethod.jp/articles/google-antigravity-cli-google-cloud-enterprise-setup/

前提条件

AI developer toolsを利用するためには、Gemini Enterpriseのライセンスが必要になります。
また、請求書ベースのCloud Billingアカウントが必要になる点はご注意ください。

要件 詳細
エディション Gemini Enterprise Standard / Plus / Pay-as-you-go
請求アカウント 請求書ベース(invoiced) の Cloud Billing アカウントが必要
必要な API ・Gemini Enterprise API(discoveryengine.googleapis.com
・Business AI Code API(businessaicode.googleapis.com
必要なロール Gemini Enterprise Admin(roles/discoveryengine.agentspaceAdmin)または Gemini Enterprise User(roles/discoveryengine.agentspaceUser

料金体系

AI developer tools(Antigravity / Android Studio)の利用料金は、Gemini Enterprise のライセンスに含まれる Antigravity and Android Studio クレジット でカバーされます。クレジットを超過した場合は、Agent Platform の従量課金レートで課金されます。

https://docs.cloud.google.com/gemini/enterprise/docs/quotas-and-overages

エディション Antigravity and Android Studio クレジット(月額/ユーザー) 超過時の課金
Standard $10 Agent Platform 従量課金レート
Plus $15 Agent Platform 従量課金レート
Pay-as-you-go なし(全量従量課金) -

クォータの仕組み

クレジットは月額表記ですが、実際は 7日間のローリング方式 でプール管理されます。

項目 内容
プール範囲 プロジェクト・ロケーション単位で、同一エディションのユーザー間で共有
週間プールの計算 (月額クレジット ÷ 4) × ライセンス数
未使用分の繰り越し なし(翌週にロールオーバーされない)
個別ユーザー上限 デフォルトなし(管理者が手動設定しない限り、プールから自由に消費)

例えば、Standard エディションで10ライセンス購入した場合、週間プールは ($10 ÷ 4) × 10 = $25/週 となり、組織内の誰でもこのプールから消費できます。

私個人の感想ですが、Antigravityを開発者が日常的にコーディングエージェントとして利用する場合、Standard の $10/月・Plus の $15/月というクレジット額は少なすぎると感じています。
エージェントが自律的にコード探索・生成・テスト実行を繰り返す性質上、1セッションでも相当量のトークンを消費するため、含まれるクレジットだけで運用するのは現実的ではありません。現時点では超過設定を有効化した従量課金ベースでの利用を前提に検討する必要があると考えています。

超過の管理

クォータを超過した場合は、Antigravityが利用できなくなるため、サービスが停止しないよう、管理者が超過設定を有効化できます。

  • Google Cloud コンソール > Gemini Enterprise > 使用状況と費用 > 使用 タブ
  • 超過料金セクションの有効トグルをオンにする

超過設定の有効化
超過設定の有効化

また、超過設定を有効化した場合、予期しない課金を防ぐために、公式ドキュメントでも利用費の上限設定が推奨されています。
Cloud Billing で Vertex AI (aiplatform.googleapis.com) に対する予算を設定することで、Gemini Enterprise アプリ・Agent Platform・AI developer tools(Antigravity)の合計支出に上限を設けられます。

利用費の上限に関するブログは以下を参照いただけますと幸いです。

https://dev.classmethod.jp/articles/gemini-api-vertex-ai-spend-cap-released/

上記ブログにも記載しておりますが、支出上限の予算設定は、Google Cloudの直接契約顧客に限定され、リセラーアカウントは対象外となると公式ドキュメントに記載があるので、こちらも注意しておく必要があります。

管理者向け設定の全体像

AI developer tools の管理設定は、Google CloudコンソールのGemini Enterprise設定画面から行います。大きく以下の4つのカテゴリに分かれています。

カテゴリ 概要
セキュリティ設定 ファイルアクセスポリシー、ターミナル実行モード、サンドボックス、外部 Web アクセス、MCP(Model Context Protocol)サーバー
コンプライアンス設定 プロンプト/レスポンスログ、メタデータログ
モデルの提供設定 Antigravityで使用可能なAIモデルの指定
メトリクスダッシュボード アクティブユーザー数、トークン消費量、API コール数の監視

セキュリティ設定の詳細

セキュリティポリシー

AIエージェントがローカルファイルやターミナルにアクセスする際の挙動を制御します。

セキュリティポリシー設定画面
セキュリティポリシー設定画面

「編集」ボタンをクリックすると、各ポリシーの設定ダイアログが開きます。
「ファイルアクセスポリシーの外部」では、AIエージェントが指定された作業フォルダ以外のファイルにアクセスするためのアクセスレベルを定義します。
デフォルトが許可しないになっているため、今回は常に確認するに変更します。

ファイルアクセスポリシーの外部設定
ファイルアクセスポリシーの外部設定

「ターミナル自動実行モード」では、エージェントがコマンドを自動実行する際の制御レベルを選択します。コマンド実行前にユーザー承認を要求する「要審査」(Require review)を選択します。

ターミナル自動実行モード設定
ターミナル自動実行モード設定

「サンドボックスモード」を有効にすると、エージェントのツール実行が安全で隔離されたローカルサンドボックスに制限されます。
今回サンドボックスは無効化したままにします。

サンドボックスモード設定
サンドボックスモード設定

設定項目 説明 選択肢 デフォルト
ファイルアクセスポリシーの外部 エージェントが作業フォルダ外のファイルにアクセスする際のポリシー 許可しない / 常に確認する / 許可 許可しない
ターミナル自動実行モード エージェントがターミナルコマンドを実行する際のモード 要審査 / サンドボックスで実行 / 常に続行 常に続行
サンドボックス エージェントのツール実行を隔離されたサンドボックスに制限 有効 / 無効 無効

外部 Web アクセス制御

エージェントが外部 Web サイトにアクセスする際の制御設定です。データ流出防止に活用できます。「ブラウザアクセス」トグルを有効にすると、許可URLリストとJavaScript 実行ポリシーの設定が可能になります。

外部Webアクセス制御設定
外部Webアクセス制御設定

ブラウザアクセスに関しては、有効化していきます。
JavaScript 実行ポリシーは「無効」「審査をリクエスト」「許可」の3段階から選択できます。
今回は無効に設定します。

設定項目 説明 デフォルト
ブラウザアクセス 外部Webアクセスの制御を有効化 無効
許可されているURL 許可するURLのリストを指定。設定すると他のURLはすべてブロック なし(すべて許可)
ブラウザのJavaScript実行ポリシー エージェントによるJavaScript実行の制御 無効

MCP サーバー設定(Preview)

AI エージェントが外部のMCPサーバーにアクセスするための設定です。「プレビュー」バッジが付いており、現在プレビュー段階の機能です。トグルを有効にすると、「許可されるサーバー構成」のJSONエディタが表示され、接続先のMCPサーバーを定義できます。
今回は無効で設定します。

MCPサーバー設定画面
MCPサーバー設定画面

設定項目 説明 デフォルト
MCP サーバー MCP サーバーへのアクセスを有効化 無効
許可されるサーバー構成 許可する MCP サーバーの設定を JSON で定義 未設定

MCP サーバーの許可設定を行う場合は、以下のようなJSON形式で定義します。管理者は local_servers(ローカルMCPサーバー)と remote_servers(リモートMCPサーバー)を配列で指定します。

{
  "mcpServers": {
    "local_servers": [
      {
        "id": "gopls-mcp-server",
        "command": "go",
        "args": [
          "run",
          "golang.org/x/tools/gopls@latest",
          "mcp"
        ]
      }
    ],
    "remote_servers": [
      {
        "id": "bigquery"
      },
      {
        "id": "custom-remote-server",
        "url": "https://mcp.example.com/mcp"
      }
    ]
  }
}

コンプライアンス設定の詳細

規制産業や内部ポリシーに対応するためのログ収集設定です。

設定項目 説明 デフォルト
プロンプトと回答のロギング 開発者と AI の対話内容を記録。使用量メトリクスの算出とセキュリティレビュー用の監査証跡に活用 無効
メタデータロギング プロダクトメタデータを記録。組織全体の利用状況分析に活用 無効

デフォルトでは両方とも無効の状態です。

コンプライアンス設定画面(デフォルト)
コンプライアンス設定画面(デフォルト)

「編集」をクリックして各トグルを有効にします。設定画面には、ログの保存とデータアクセスに関する重要な説明が記載されています。
両方有効化していきます。

コンプライアンスログの有効化
コンプライアンスログの有効化

設定画面に記載されている通り、ログは組織のプロジェクト内に安全に保存され、モデルのトレーニングや人間によるレビューのために Google がアクセスすることはありません。これはコンプライアンスログの有効・無効にかかわらず適用されるポリシーになります。

モデルの提供設定の詳細

Antigravityが使用可能なAIモデルを制御する設定です。

設定項目 説明
Antigravity認定モデル Antigravityが使用を許可されるモデルを指定。Gemini EnterpriseのAI developer toolsではGoogle製モデルのみ利用可能

デフォルトでは「Antigravity 認定モデル」が「すべてのモデル」に設定されています。

Antigravity認定モデル設定(デフォルト)
Antigravity認定モデル設定(デフォルト)

「編集」をクリックすると「モデルの可用性設定」ダイアログが開き、個別にモデルを選択できます。利用可能なモデルはすべてGoogle製で、各モデルに推論設定(High / Medium / Low)のバリエーションがあります。

モデルの可用性設定ダイアログ
モデルの可用性設定ダイアログ

確認時点で選択可能なモデルとしては以下が確認されています。

モデル 推論設定
Gemini 3.1 Pro High / Low
Gemini 3.5 Flash High / Medium / Low
Gemini 3.6 Flash High / Medium / Low
Gemini 3.7 Flash High / Medium / Low

今回はデフォルトのままの設定にしておきます。

利用状況メトリクスダッシュボード

AI developer tools の利用状況をモニタリングするためのダッシュボードが提供されています。

アクセス方法

Google Cloud コンソール > Gemini Enterprise > デベロッパーツールの指標

デベロッパーツールの指標ダッシュボード
デベロッパーツールの指標ダッシュボード

左のナビゲーションメニューから「デベロッパーツールの指標」を選択するとダッシュボードが表示されます。右上の時間範囲セレクターで「直近 1 時間」「直近 6 時間」などの期間を指定できます。

上のスクリーンショットでは、Antigravity CLIを試用した直後のため Hourly / Daily / Weekly active users がそれぞれ1と表示されています。Monthly active users(28日間)は集計期間が足りないため「選択した時間枠で使用できるデータがありません」と表示されています。トレンドラインチャートも同様に、十分なデータポイントが蓄積されるまでは「0 time series」と表示されます。

利用可能なメトリクス

Adoption(利用者数)

時間範囲を「直近 1 日」に変更した例です。4つのアクティブユーザー指標がカード形式で表示され、それぞれトレンドラインチャートが用意されています。

Adoptionメトリクス(直近1日)
Adoptionメトリクス(直近1日)

メトリクス 説明
Hourly active users (average) 時間あたりの平均ユニークアクティブユーザー数
Daily active users (average) 日あたりの平均ユニークアクティブユーザー数
Weekly active users (average) 週あたりの平均ユニークアクティブユーザー数
Monthly active users (average) 月(28日間)あたりの平均ユニークアクティブユーザー数

Tools & API calls(ツール・API コール)

試用後のスクリーンショットでは、Total Tokens が 89,051、Daily API Calls が 8、Daily Tool Calls が 4 と実際の利用データが反映されています。

Tools & API callsメトリクス
Tools & API callsメトリクス

メトリクス 説明
Total Tokens 入力・出力トークンの合計消費量
Daily Token Usage 日次トークン消費量のラインチャート
Daily API Calls 日次 API コール数のラインチャート(エラータイプ別の内訳を含む)
Daily Tool Calls 日次ツールコール数のラインチャート
Daily Tool Calls Accepted ユーザーが承認・実行したツールコール提案の日次数

アクセス管理(カスタム IAM ロール)

デフォルトの Gemini Enterprise User ロールでは AI developer tools へのアクセスが許可されますが、組織のセキュリティポリシーに合わせて カスタムロールで制限 できます。

アクセスを制限するカスタムロールの作成手順

AI developer tools へのアクセスを制限するには、businessaicode.* パーミッションを除外したカスタムロールを作成します。
この方法により、Gemini Enterprise の他の機能(チャット、検索など)は利用可能にしつつ、AI developer tools のみアクセスを制限することができます。

  1. Google Cloud コンソール > IAMと管理 > ロール に移動
  2. ロールの作成 をクリック
  3. ロール詳細を入力
    • Title: 任意の名前(例: Custom Gemini Enterprise User
    • Role launch stage: General Availability
  4. 権限の追加 をクリック
  5. Gemini Enterprise ユーザー(roles/discoveryengine.agentspaceUser)ロールのパーミッションを選択
  6. businessaicode. で始まるすべてのパーミッションを除外
  7. 作成 をクリック

カスタムIAMロールの作成(businessaicode.*パーミッションを除外)
カスタムIAMロールの作成(businessaicode.*パーミッションを除外)

コンプライアンスに関する制限事項

Antigravity in Gemini Enterprise は、以下のコンプライアンス認証・セキュリティコントロールには対応していません。
規制産業のお客様は、これらの制限を考慮した上で導入を検討してください。

非対応項目
Access Transparency(AXT)
FedRAMP(Moderate / High)
Impact Level 4(IL4)/ Impact Level 5(IL5)
ISO 認証(ISO 27001, ISO 42001 等)
ITAR
SOC 1 / SOC 2 / SOC 3

https://docs.cloud.google.com/gemini/enterprise/docs/ai-developer-tools-overview?hl=ja#compliance-limitations

実際に試してみる

前提条件

  • Gemini Enterprise Standard / Plus / Pay-as-you-go のサブスクリプション
  • 請求書ベースの Cloud Billing アカウント
  • Gemini Enterprise Admin ロール(roles/discoveryengine.agentspaceAdmin

ステップ 1: Antigravity CLI のインストールとログイン

管理者設定が完了したので、開発者側でAntigravity CLIの設定をしていきます。ここでは実際にインストールからログイン、モデルとの対話までの流れを試します。実行環境はWSL2を想定しています。

Antigravity CLI のインストール

以下のコマンドを実行して、Antigravity CLIをインストールしていきます。

# macOS / Linux
curl -fsSL https://antigravity.google/install.sh | bash

インストール後、バージョンを確認します。

agy --version

1.1.14

gcloud CLI での認証

Antigravity CLI は gcloud CLI の認証情報を使用します。Gemini Enterprise のプロジェクトに対して認証を行います。

# gcloud CLI の初期化(未実施の場合)
gcloud init

# ユーザー認証 + Application Default Credentials の設定
gcloud auth login

Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=XXXXX&redirect_uri=http%3A%2F%2Flocalhost%3A8085%2F&scope=openid+...&state=XXXXX&access_type=offline&code_challenge=XXXXX&code_challenge_method=S256

You are now logged in as [your-email@example.com].
Your current project is [your-project-id].  You can change this setting by running:
  $ gcloud config set project PROJECT_ID

To take a quick anonymous survey, run:
  $ gcloud survey

gcloud auth application-default login

Your browser has been opened to visit:

[Error 400 (Bad Request)!!1](https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=XXXXX&redirect_uri=http%3A%2F%2Flocalhost%3A8085%2F&scope=openid+...&state=XXXXX&access_type=offline&code_challenge=XXXXX&code_challenge_method=S256)

Credentials saved to file: [/home/your-username/.config/gcloud/application_default_credentials.json]

These credentials will be used by any library that requests Application Default Credentials (ADC).

Quota project "your-project-id" was added to ADC which can be used by Google client libraries for billing and quota. Note that some services may still bill the project owning the resource.

Antigravity CLI の起動

プロジェクトディレクトリに移動して agy コマンドで起動します。

cd YOUR_PROJECT_DIRECTORY
agy

agy を初回実行すると、ログイン方法の選択画面が表示されます。「Continue with Google Cloud」を選択します。

ログイン方法の選択画面
ログイン方法の選択画面

ブラウザが自動で開き、Google アカウントの選択画面が表示されます。Gemini Enterprise が有効なプロジェクトに紐づくアカウントを選択します。

Googleアカウントの選択画面
Googleアカウントの選択画面

Google Antigravity アプリのダウンロード確認画面が表示されるので「ログイン」をクリックします。

Google Antigravityアプリのログイン確認
Google Antigravityアプリのログイン確認

認証成功後、認証コードが表示されます。「Copy to Clipboard」でコピーし、ターミナルに戻って貼り付けます。

認証コードの表示
認証コードの表示

ターミナル側では認証 URL の表示と、認証コードの入力欄が表示されています。ブラウザが自動で開かない場合は「Click here to authenticate」リンクを手動で開きます。

ターミナル側の認証コード入力画面
ターミナル側の認証コード入力画面

認証完了後、利用可能なライセンスの選択画面が表示されます。「Gemini Enterprise Standard」のプロジェクトとロケーション(global)が表示されるので選択します。

ライセンスの選択画面
ライセンスの選択画面

ライセンス選択後、Antigravity CLI が起動します。バナーにバージョン(1.1.14)、ライセンスティア(gcp-ge-standard-tier)、使用モデル(Gemini 3.7 Flash (High))、作業ディレクトリが表示され、プロンプトが入力可能になります。

Antigravity CLI起動画面
Antigravity CLI起動画面

MCP サーバーの確認

管理画面上でMCPサーバは利用できなようにしているため実際に、利用できないか確認していきます。

$ agy mcp add filesystem npx -y @modelcontextprotocol/server-
  filesystem /home/username/work/server

$ agy mcp list
NAME        TYPE   STATUS   COMMAND/URL
filesystem  stdio  enabled  npx -y @modelcontextprotocol/server-filesystem /home/usernname/work/server

AntigravityへのMCPサーバの追加自体は実行することができました。

Antigravity起動後、/mcp コマンドで接続済みのMCPサーバーを確認することができます。

> /mcp

MCP Servers

Plugins (~/.gemini/config/plugins)
>  ✗ filesystem  error: This server is not allowed for your team.

管理者がGoogle Cloud コンソールで許可したMCPサーバーが一覧に表示されます。
先ほど設定したfilesystem MCPサーバに関しては、管理画面上で利用できないようにしているため、「This server is not allowed for your team.」と表示され実行できないようになっていました。

モデルの確認と切り替え

/model コマンドで使用中のモデルを確認・変更できます。管理者が許可したモデルのみ選択可能です。

> /model

Switch Model

> Gemini 3.7 Flash (current)
  Gemini 3.6 Flash
  Gemini 3.5 Flash
  Gemini 3.1 Pro

  Effort        ●━━━━━━━━━━━━━━●━━━━━━━━━━━━━━◉
                  low          medium          high      
            Deepest reasoning for complex problems slower but strongest

Keyboard: ↑/↓ Navigate  ←/→ Effort  enter Select  esc Go Back

Antigravity CLI との対話

実際にAntigravity CLIと対話してみたいと思います。

> Gemini EnterpriseでのAntigravityについて教えてください。

 Thought for 3s, 166 tokens
  Exploring Antigravity Options

 Read(~/.gemini/antigravity-cli/builtin/skills/antigravity_guide/SKILL.md)
 Read(~/.gemini/antigravity-cli/builtin/skills/antigravity_guide/references/cli.md)
 Read(~/.gemini/antigravity-cli/builtin/skills/antigravity_guide/references/ide.md)
 WebSearch("Gemini Enterprise" Antigravity Google) (ctrl+o to expand)

  Google Antigravity(アンチグラビティ)は、Googleが提供する**次世代のAIエージェント型開発プラットフォーム(Agentic
  Development Platform)**です。

  Google Cloud のエンタープライズ向け生成AI基盤(Gemini Enterprise / Vertex
  AI)と連携して利用することで、企業レベルのセキュリティ・ガバナンスを確保しながら、高度な自律型コーディング・開発ワーク
  フローを実現できます。
  ──────
  ### 1. Antigravity の主な特徴と機能

  Antigravity
  は、単なるコード補完ツール(チャット型AI)を超え、複数の自律型エージェント(Subagent)が協調してタスクを実行する環境を
  提供します。

 自律的なマルチステップ実行 (Agentic Workflows):
 プロジェクトのコードベース全体を探索・分析。

      ファイルの読み書き、ビルドやテストの実行、ターミナルコマンドの実行、Web検索などを自律的に反復しながらゴールを達成し
      ます。
 多様なインターフェース (Surfaces):
 Antigravity IDE: VS Code
      をベースにしたAIファーストの統合開発環境(エディタ内でのTab補完、インライン指示、サイドバーエージェント)。
 Antigravity 2.0 (Desktop App):
      エージェントの思考プロセスやタスク進行、成果物(Artifacts)を可視化するデスクトップアプリ。
 Antigravity CLI (agy): ターミナルから素早くエージェントを呼び出せる軽量なコマンドラインツール。
 Antigravity Python SDK: プログラムからエージェントを動的にオーケストレーションするための開発キット。
 強力なモデル統合:
 Gemini 3 シリーズをはじめとする Google の最新基盤モデルや推論モデルをフル活用。

  ──────
  ### 2. Gemini Enterprise / 企業環境におけるメリット

  Google Cloud のエンタープライズ契約(Gemini Enterprise Vertex AI の契約基盤)のもとで Antigravity
  を利用する場合、以下のような企業向け要件を満たす設計となっています。

  1. データプライバシーとセキュリティ:
 入力データや社内コードベースがモデルの学習に利用されない保証。
 VPC Service Controls やプライベートネットワーク経由での安全な接続。
  2. 組織的なガバナンスとアクセス制御 (IAM):
 Google Cloud IAM SSO と統合され、リソースへのアクセス権限を一元管理。
 エージェントの実行権限(ツール実行、ファイル操作、外部通信)をポリシー(Rules / Permissions)で細かく制御。
  3. 社内ナレッジ・MCP (Model Context Protocol) 統合:
 社内リポジトリやプライベートAPI、社内ツールと MCP
      サーバーを介して連携し、組織独自のコンテキストに最適化されたエージェントを構成可能。
  4. カスタム拡張(Skills / Rules / Hooks):
 プロジェクトごとのコーディング標準やレビュー規約を .agents/rules skills
      として定義し、チーム全体で共有・徹底可能。

  ──────
  ### まとめ

 Gemini Enterprise は組織全体の業務自動化やナレッジ活用を担う基盤。
 Google Antigravity はその中でエンジニアリングやソフトウェア開発に特化した自律型エージェント開発環境。

  これらを組み合わせることで、エンタープライズ基準の安全性を保ったまま、仕様策定からコード生成、テスト実行、リファクタリ
  ング、マイグレーションまでを大幅に加速させることができます。

  具体的な設定方法や CLI / IDE の使い方についてさらに詳しく知りたい点があれば、お気軽にお尋ねください!

Gemini EnterpriseでのAntigravityについて応答が返ってきました。

ステップ 2: セキュリティ設定の動作検証

次に、管理者が設定したセキュリティポリシーが、Antigravity CLI上で正しく反映されているか検証します。

ファイルアクセスポリシーの外部(常に確認する)

管理者設定で「常に確認する」に設定した外部ファイルアクセスポリシーの動作を確認します。作業ディレクトリ外のファイルを読み取るよう指示します。

> /etc/hostsファイルの内容を読み取ってください

 Read(/etc/hosts) (ctrl+o to expand)

File access
───────────────────────────────────────────

Read: /etc/hosts
Reason: outside workspace

Allow access to this file?
> 1. Yes, allow access
  2. Yes, and always allow non-workspace access
  3. No, deny access

  ↑/↓ Navigate
esc to cancel      

実際の操作ログを確認すると、確認ダイアログに Reason: outside workspace と表示されており、作業フォルダの内外判定がファイルアクセスポリシーのチェックトリガーになっていることがわかります。ファイルアクセスの選択肢に「Yes, and always allow non-workspace access」があり、開発者は初回確認後にセッション単位で確認をスキップすることができます。管理者ポリシーが「常に確認する」であっても、開発者側の判断でセッション中の確認を省略できる点は認識しておく必要があります。

ターミナル自動実行モード(要審査)

管理者設定で「要審査」に設定したターミナル自動実行モードの動作を確認します。コマンド実行が必要なタスクを指示します。

> このディレクトリのファイル一覧を表示してください

 Thought for 4s, 134 tokens
  Listing Directory Contents

 ListDir(~/work/server) 
 Bash(ls -la) (ctrl+o to expand)

Command
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Requesting permission for:
   ls -la

Do you want to proceed?
> 1. Yes
  2. Yes, and always allow in this conversation for commands that start with 'ls'
  3. Yes, and always allow for commands that start with 'ls' (Persist to settings.json)
  4. No

実際の操作ログを確認すると、エージェントは ListDir(ビルトインのディレクトリ一覧ツール)と Bash(ls -la)(ターミナルコマンド)の2つを同時に実行しているが、権限確認ダイアログが表示されたのは Bash の実行のみでした。このことから、「ターミナル自動実行モード」のポリシーはシェルコマンドの実行を対象としており、ビルトインツール(ファイル読み取り、ディレクトリ一覧等)には適用されないことがわかります。また、権限確認の選択肢に「Yes, and always allow in this conversation for commands that start with 'ls'」(セッション内でのプレフィックスベースの許可)や「Yes, and always allow for commands that start with 'ls' (Persist to settings.json)」(永続的な許可)があります。開発者は利用を重ねることでコマンド単位の許可リストを構築でき、日常的に使うコマンド(lscatgit status 等)の確認を省略することができるようになります。

ブラウザアクセス(有効)・JavaScript 実行ポリシー(無効)

ブラウザアクセスが有効な状態で、外部URLへのアクセスが可能であることを確認します。また、JavaScript実行ポリシーを「無効」に設定しているため、JavaScriptの実行が制限されることも確認します。

> ブラウザツールを使って https://example.com にアクセスして

 Thought for 4s, 115 tokens
  Exploring User Requests

 ReadURL(https://example.com)
 Read(~/.gemini/antigravity-cli/brain/8b48393d-4713-4d69-8518-7178cf5d8072/.system_generated/steps/31/content.md) (ctrl+o to expand)

  公式の Web 取得ツール(read_url_content)を使用して https://example.com にアクセスしました。

  取得したページの内容は以下の通りです。
  ──────
  ### ページタイトル

  Example Domain
  ### ページ本文
  Example Domain 

 This domain is for use in documentation examples without needing permission. Avoid use in operations.

 Learn more https://iana.org/domains/example
  ──────
  ### 生の HTML ソース
    <!doctype html>
    <html lang="en">
    <head>
        <title>Example Domain</title>
        <link rel="icon" href="data:,">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <style>
            body {
                background: #eee;
                width: 60vw;
                margin: 15vh auto;
                font-family: system-ui, sans-serif;
            }
            h1 {
                font-size: 1.5em;
            }
            div {
                opacity: 0.8;
            }
            a:link, a:visited {
                color: #348;
            }
        </style>
    </head>
    <body>
        <div>
            <h1>Example Domain</h1>
            <p>This domain is for use in documentation examples without needing permission. Avoid use in operations.</p>
            <p><a href="https://iana.org/domains/example">Learn more</a></p>
        </div>
    </body>
    </html>

  Sources:
 github.com
 github.com
 github.com

  (ctrl+o to expand)

操作ログを見ると、エージェントはビルトインのWeb取得ツール(ReadURL / read_url_content)を使用しており、このツールでは静的なHTTPリクエストのみが実行されています。ブラウザアクセスを有効化すると、このWeb取得ツールが利用可能になり、個別のURLごとの承認は不要でアクセスできることがわかります。アクセス先を制限したい場合は「許可されているURL」リストでホワイトリスト方式の制御を行う必要があります。

次に、JavaScript実行ポリシー「無効」の制限がビルトインのブラウザツール経由で正しく機能するかを検証します。ターミナルのシェルコマンド(curl 等)ではなくブラウザツールを使わせるため、明示的に指示します。

> ブラウザツールを使って https://example.com にアクセスし、JavaScriptを実行してDOM要素の数を取得してください。curlやターミナルコマンドは使わないでください。

 Thought for 5s, 372 tokens
  Exploring Browser Tools
  申し訳ありませんが、現在の環境・設定では実行することができません。

  理由は以下の通りです:

  1. 公式ブラウザツール(JavaScript 実行機能)の不在
  現在、管理ポリシー設定により JavaScript を実行可能なブラウザツール(read_browser_page 等)が無効化されているため、AI ツール側から直接ブラウザ上で JavaScript を実行する手段がありません。
  2. ビルトイン Web 取得ツール(read_url_content)の仕様
  利用可能な公式ツールである read_url_content は、静的な HTTP リクエストのみを行う仕様となっており、ページ上で JavaScript を実行する機能(DOM API の呼び出しなど)は備わっていません。
  3. ターミナルコマンド(シェル実行)の禁止
  ご指定の通りターミナルコマンド(ローカルの Chromium / Node.js 等の起動)を使用しない場合、JavaScript を実行する代替手段も使用できません。
  ──────
  ### 参考(静的 HTML からカウントした場合の要素数)

  JavaScript を介さず、read_url_content で取得した静的 HTML 上のタグ要素のみを解析した場合、以下の 9 の要素が存在します。

 <html>
 <head>
 <title>
 <link>
 <meta>
 <style>
 <body>
 <div>
 <h1>, <p> (×2), <a>

 ページ上で動的に生成・変更される DOM や、document.querySelectorAll('*').length などの JavaScript API を実行しての取得には、ブラウザツールの有効化が必要となります。

JavaScript実行が禁止されました。エージェントがブラウザツールではなくターミナルのシェルコマンド実行権限(curl 等)を利用してWebページを取得する場合、JavaScript実行ポリシーの制限は適用されません。

この挙動から、JavaScript実行ポリシーはビルトインのブラウザツール経由でのJavaScript実行を制御するものであり、ターミナル経由でのWebアクセスは「ターミナル自動実行モード」の管轄となることがわかります。
JavaScript実行を厳密に制限したい場合は、JavaScript実行ポリシーの設定に加えて、ターミナル自動実行モードを「要審査」に設定してコマンド実行を承認制にするなど、複数の設定を組み合わせた運用が必要です。

ステップ 3: コンプライアンスログデータの確認

コンプライアンスログを有効化し、Antigravity CLIを使用したので、実際にCloud Loggingに記録されたログデータを確認してみます。

ログの種類と logName

Antigravity CLIのコンプライアンスログは、Cloud Logging にリソースタイプ businessaicode.googleapis.com/BAICInstance で記録されます。有効化した2つの設定は、以下のログに対応しています。

コンプライアンス設定 logName 記録内容
プロンプトと回答のロギング businessaicode.googleapis.com%2Finference_request ユーザーのプロンプト入力(コード補完コンテキスト、チャットメッセージ)
プロンプトと回答のロギング businessaicode.googleapis.com%2Finference_response AI モデルのレスポンス(生成コード、チャット応答、トークン消費量)
メタデータロギング businessaicode.googleapis.com%2Fclient_telemetry クライアントテレメトリ(操作種別、受諾/拒否の結果)

コンソールからのログ確認

  1. Google Cloud コンソール > Logging > ログエクスプローラー に移動
  2. ツールバーで対象プロジェクトを選択
  3. リソースのプルダウンメニューから Business AI Code インスタンス を選択

ログエクスプローラーでBusiness AI Codeインスタンスを選択
ログエクスプローラーでBusiness AI Codeインスタンスを選択

ログエントリの構造

各ログエントリには以下の主要フィールドが含まれます。

フィールド 説明
LogEntry.resource.type businessaicode.googleapis.com/BAICInstance(固定)
LogEntry.labels.user_id リクエストを実行したユーザー(user:メールアドレス 形式)
LogEntry.labels.request_id リクエストとレスポンスを紐付ける一意の ID
LogEntry.labels.client_name クライアント名。Antigravity CLI の場合は antigravity_cli
LogEntry.labels.model 使用された AI モデル名(例: gemini-3.7-flash
LogEntry.labels.client_version クライアントのバージョン
LogEntry.labels.trajectory_id エージェントの一連の操作を紐付ける ID(Response ログに含まれる)
LogEntry.jsonPayload ログの本体。ログ種別により InferenceRequestLogInferenceResponseLog
LogEntry.jsonPayload.experience モデルと推論設定の組み合わせ(例: gemini-3.7-flash-high

Request ログの例(Prompts and responses logging)

ユーザーが Antigravity CLIでチャットを送信した際のリクエストログです。jsonPayload.input.messages にユーザーのプロンプト全文が記録されます。

{
  "insertId": "15d0spicyfp",
  "jsonPayload": {
    "@type": "type.googleapis.com/google.cloud.businessaicode.logging.v1.InferenceRequestLog",
    "input": {
      "context": {
        "files": []
      },
      "messages": [
        {
          "author": "USER",
          "content": "<USER_REQUEST>\nこんにちは\n</USER_REQUEST>\n<ADDITIONAL_METADATA>\nThe current local time is: 2026-08-19T10:30:22+09:00.\n</ADDITIONAL_METADATA>\n<USER_SETTINGS_CHANGE>\nThe user changed setting `Model Selection` from None to Gemini 3.7 Flash (High). No need to comment on this change if the user doesn't ask about it. If reporting what model you are, please use a human readable name instead of the exact string.\n</USER_SETTINGS_CHANGE>"
        }
      ]
    },
    "experience": "gemini-3.7-flash-high"
  },
  "resource": {
    "type": "businessaicode.googleapis.com/BAICInstance",
    "labels": {
      "resource_container": "123456789012",
      "location": "global"
    }
  },
  "timestamp": "2026-08-19T01:30:28.733273617Z",
  "severity": "INFO",
  "labels": {
    "model": "gemini-3.7-flash",
    "user_id": "user:your-email@example.com",
    "request_id": "fcd0323f-5f56-45e4-a768-eb82b1e6e618-0",
    "client_name": "antigravity_cli",
    "client_version": "1.1.14",
    "trajectory_id": "fcd0323f-5f56-45e4-a768-eb82b1e6e618"
  },
  "logName": "projects/your-project-id/logs/businessaicode.googleapis.com%2Finference_request",
  "receiveTimestamp": "2026-08-19T01:30:29.605415Z"
}

Response ログの例(Prompts and responses logging)

同じリクエストに対するAIモデルのレスポンスログです。trajectory_id でリクエストログと紐付けできます。metadata.totalTokenCount でトークン消費量も確認できます。

{
  "insertId": "15d0spicyfq",
  "jsonPayload": {
    "@type": "type.googleapis.com/google.cloud.businessaicode.logging.v1.InferenceResponseLog",
    "output": {
      "candidates": [
        {
          "messages": [
            {
              "content": "こんにちは!何かお手伝いできることはありますか?コード",
              "author": "MODEL"
            },
            {
              "content": "の作成や修正、調査など、お気軽にお申し付けください。",
              "author": "MODEL"
            }
          ]
        }
      ]
    },
    "experience": "gemini-3.7-flash-high",
    "metadata": {
      "totalTokenCount": "12486"
    }
  },
  "resource": {
    "type": "businessaicode.googleapis.com/BAICInstance",
    "labels": {
      "location": "global",
      "resource_container": "123456789012"
    }
  },
  "timestamp": "2026-08-19T01:30:28.734180268Z",
  "severity": "INFO",
  "labels": {
    "client_version": "1.1.14",
    "trajectory_id": "fcd0323f-5f56-45e4-a768-eb82b1e6e618",
    "user_id": "user:your-email@example.com",
    "client_name": "antigravity_cli",
    "model": "gemini-3.7-flash",
    "request_id": "fcd0323f-5f56-45e4-a768-eb82b1e6e618-0"
  },
  "logName": "projects/your-project-id/logs/businessaicode.googleapis.com%2Finference_response",
  "receiveTimestamp": "2026-08-19T01:30:29.605415Z"
}

Metadata ログの例(Metadata logging)

Metadata logging を有効にすると、クライアントテレメトリが businessaicode.googleapis.com%2Fclient_telemetry に記録されます。@typeClientTelemetryLog で、eventType に操作の種類、metadata に受諾/拒否などのインタラクション結果が含まれます。

{
  "insertId": "15d0spid129o",
  "jsonPayload": {
    "@type": "type.googleapis.com/google.cloud.businessaicode.logging.v1.ClientTelemetryLog",
    "metadata": {
      "interactionOutcome": "ACCEPTED",
      "interactionType": "PERMISSION_GRANT"
    },
    "eventType": "InferenceInteraction"
  },
  "resource": {
    "type": "businessaicode.googleapis.com/BAICInstance",
    "labels": {
      "resource_container": "123456789012",
      "location": "global"
    }
  },
  "timestamp": "2026-08-19T04:30:21.727230298Z",
  "severity": "INFO",
  "labels": {
    "trajectory_id": "8181f2f0-0275-45e7-b23c-de370ebe3f07",
    "request_id": "8181f2f0-0275-45e7-b23c-de370ebe3f07-8",
    "client_version": "1.1.14",
    "user_id": "user:your-email@example.com",
    "client_name": "antigravity_cli"
  },
  "logName": "projects/your-project-id/logs/businessaicode.googleapis.com%2Fclient_telemetry",
  "receiveTimestamp": "2026-08-19T04:30:21.861908931Z"
}

ログのアクセス制御と活用

コンプライアンスログへのアクセスはIAMで制御することができます。また、長期保管や詳細分析のためにCloud StorageやBigQueryへルーティングすることも可能です。
コンプライアンスログには機密データ(プロンプト内容、コードコンテキスト)がフィルタリングされずに記録されます。アクセス権限の設計には十分注意してください。

活用方法 説明
IAM ロールによるアクセス制御 roles/logging.viewerroles/logging.privateLogViewerroles/logging.viewAccessor で閲覧権限を管理
ログビュー ログバケット内のサブセットに対するアクセス制限を設定
ログシンク 機密性の高いログを別プロジェクトにルーティングし、より厳格な IAM で保護
BigQuery へのエクスポート ログシンクで BigQuery にルーティングし、SQL による詳細な利用状況分析を実施
フィールドレベルのアクセス制御 ログエントリ内の特定フィールド(プロンプト内容等)へのアクセスを制限

まとめ

今回は、Gemini Enterpriseの統制された環境でGoogle Antigravityを利用してみました。

Gemini EnterpriseのAI developer toolsがGAとなり、管理者がGoogle CloudコンソールからAntigravity 2.0、Antigravity CLIの利用を一元管理できるようになりました。セキュリティポリシー(ファイルアクセス・ターミナル実行・外部 Web アクセス)、コンプライアンスログ、モデル可用性、MCP サーバー接続といった設定を制御できるようになり、エンタープライズ環境での導入のハードルが下がったように感じます。

また、メトリクスダッシュボードにより、アクティブユーザー数やトークン消費量、API コール数を可視化でき、組織全体の利用状況をデータドリブンに把握することができます。

本文でも記載していますが、クレジットに関しては、Antigravityを開発者が日常的にコーディングエージェントとして利用する場合、少なすぎると感じています。超過設定を有効化した従量課金ベースでの利用が前提になる場合、予算設定や費用上限を設定したりとコスト管理についても検討する必要があります。

今後のアップデートに期待です。

この記事が誰かの助けになれば幸いです。

以上、コンサルティング部の渡邉でした!

この記事をシェアする

関連記事