ANTIGRAVITY LABEN
記事一覧/Antigravity 基本
Antigravity 基本/2026-05-05初級

Google Antigravity 2026年5月アップデート — 新機能と変更点まとめ

Google Antigravity の 2026年5月時点での主要アップデートを、実際に触って分かった使いどころとつまずきどころ込みで整理。AgentKit 2.0、A2A プロトコル対応、ローカル LLM 連携強化、Gemma 4 統合、コンテキスト拡張までを実用目線でまとめます。

Antigravity338アップデート8202624AgentKit17A2A プロトコル

Antigravity のリリースノートを毎月開くたびに、前回メモした使い方がもう古くなっていることに気づきます。機能が増えること自体はありがたいのですが、「結局どれが日々の作業に効くのか」を選り分ける時間のほうが、機能を試す時間より長くなりがちです。

そこで、2026年5月時点の主要な変更を、リリースノートの転記ではなく「実際に触ってみて、どの場面で効いたか・どこでつまずいたか」という視点で並べ直しました。新機能の一覧ではなく、自分の運用に取り込むときの判断材料として読んでいただければと思います。

AgentKit 2.0 の正式対応 — 効くのはデバッグ情報

5月で最も体感差が大きかったのが AgentKit 2.0 への対応です。

AgentKit 2.0 は Google のエージェント構築フレームワークの大型更新で、Antigravity との結びつきが密になりました。機能表だけ見ると「ツール呼び出しの精度向上」「マルチエージェントのコンテキスト共有改善」と並びますが、私が日々の開発で一番ありがたかったのは、地味に見えるエージェントループのデバッグ情報の充実でした。どのツールを、どんな引数で、何回呼んで、どこで判断が分岐したかが追えるようになり、「なぜか期待と違う動きをする」エージェントの原因切り分けが格段に速くなります。

最小のエージェント定義はこの形です。

from google.aistudio.agentkit import Agent, Tool, AgentConfig
 
config = AgentConfig(
    model="antigravity-2.5-pro",   # Antigravity モデルを指定
    max_iterations=10,
    enable_thinking=True           # 拡張思考を有効化
)
 
@Tool(name="search_docs", description="技術ドキュメントを検索する")
def search_documentation(query: str) -> str:
    return f"検索結果: {query}"
 
agent = Agent(config=config, tools=[search_documentation])
 
result = agent.run("React Native の SwiftUI 連携について調べてください")
print(result.output)
print(f"実行ステップ数: {result.iterations}")

ひとつ注意点があります。max_iterations を大きくしたまま外部 API を叩くツールを渡すと、ループが止まらず想定外の回数だけ課金が走ることがあります。私は新しいツールを足したときは必ず max_iterations を 3〜4 に絞って挙動を確認し、安定してから戻すようにしています。

反復上限だけでは足りない — ツール呼び出し回数も見張る

ここで一度、痛い思いをしました。

max_iterations は「エージェントが何周考えるか」の上限であって、「1周のなかで何回ツールを叩くか」の上限ではありません。並列ツール呼び出しに対応したモデルは、1ステップで複数のツールを同時に投げます。手元のドキュメント検索エージェントは平常時こそ 2 ステップ・ツール呼び出し 5 回で収まっていましたが、プロンプトを少し曖昧にした一度だけ、9 ステップ・23 回まで膨らみました。ステップ数だけを見ていたら気づけない増え方です。

そこで、両方に上限を置く薄いラッパーを噛ませています。

import time
from collections import Counter
 
def run_with_budget(agent, prompt, *, max_steps=4, max_tool_calls=8):
    """反復数とツール呼び出し回数の両方に上限を置いてエージェントを実行する。"""
    agent.config.max_iterations = max_steps
    started = time.perf_counter()
 
    result = agent.run(prompt)
 
    calls = Counter(step.tool_name for step in result.steps if step.tool_name)
    total_calls = sum(calls.values())
    elapsed = time.perf_counter() - started
 
    print(f"{elapsed:.1f} 秒 / {result.iterations} ステップ / 内訳 {dict(calls)}")
 
    if total_calls > max_tool_calls:
        raise RuntimeError(
            f"ツール呼び出しが上限超過: {total_calls} 回(上限 {max_tool_calls} 回)"
        )
    return result

例外を投げるのは、上限を超えた時点で処理を続ける意味がないからです。予算を超えた実行は、結果が正しくても運用としては失敗しています。result.steps を Counter にかけて内訳を出しておくと、どのツールが暴れているかが一目で分かります。私の場合、外部検索ツールだけが 15 回叩かれていて、原因は description の書き方が曖昧だったこと、という結末でした。エージェントを止める仕組みそのものについては、AIエージェントを信頼できる相棒にするで扱っている考え方が土台になります。

A2A プロトコルへの対応 — 自作エージェントを「部品」にできる

Agent-to-Agent(A2A)プロトコルのサポートが強化されました。

A2A は、異なるフレームワークで作られたエージェント同士を連携させるための、Google が提唱する標準プロトコルです。Antigravity が対応したことで、LangChain や AutoGen で組んだエージェントと相互に呼び出し合えるようになりました。

実務で効く変化は一点に集約できます。Antigravity で作ったエージェントを、別のフレームワークのエージェントから「ツール」として呼べるようになったことです。これまでは「Antigravity で全部組むか、別フレームワークで全部組むか」の二択になりがちでしたが、その境界が消えました。得意なところだけを Antigravity で作って、全体のオーケストレーションは使い慣れたフレームワークに任せる、という分担ができます。最初から大きなマルチエージェント設計を描かなくても、小さな部品を一つずつ足していける点が、個人開発の立場では特に助かりました。私自身、複数のアプリと技術ブログを一人で回しているので、全体を作り込まずに必要な部品だけ差し替えられる構成は現実的に効きます。

ローカルとクラウドをどう振り分けるか

Ollama や LM Studio を介したローカル LLM 連携の、接続安定性とモデル切り替えがなめらかになりました。

import antigravity
 
client = antigravity.Client(
    backend="ollama",
    model="gemma3:latest",
    base_url="http://localhost:11434"
)
 
response = client.generate(
    prompt="このコードのバグを見つけてください",
    context="# コード\n[コード]"
)
print(response.text)

私はこの更新以降、「下書きはローカル、仕上げはクラウド」という使い分けを定着させました。手元の環境(M2 Pro / メモリ 32GB、gemma3:latest)で計った目安がこちらです。環境で大きく変わる数字なので、絶対値ではなく比率として読んでください。

作業委譲先1件あたりの応答判断理由
コミットメッセージの素案ローカル約 1.8 秒数をこなす。多少ぶれても人が直す
ログからの定型要約ローカル約 3.5 秒社外に出したくないデータを含む
設計判断のレビュークラウド約 6 秒間違えたときの手戻りが大きい
本番に入るコードの確認クラウド約 8 秒精度が費用に勝る

試行回数の多い作業をローカルに逃がすだけで、月の API 費用は目に見えて落ち着きます。ただし切り替えを手動でやると必ず忘れるので、タスク名で分岐させ、ローカルが落ちていたらクラウドに逃がす形にしました。

import antigravity
import requests
 
LOCAL = antigravity.Client(
    backend="ollama", model="gemma3:latest",
    base_url="http://localhost:11434",
)
CLOUD = antigravity.Client(backend="google", model="antigravity-2.5-pro")
 
DRAFT_TASKS = {"commit_message", "log_summary", "rename_suggestion"}
 
def generate(task: str, prompt: str, context: str = "") -> str:
    """下書き系はローカル、それ以外はクラウド。ローカル不通時はクラウドへ退避。"""
    if task in DRAFT_TASKS:
        try:
            return LOCAL.generate(prompt=prompt, context=context, timeout=20).text
        except (requests.Timeout, requests.ConnectionError):
            pass  # ollama serve が落ちている・モデル読み込み中
    return CLOUD.generate(prompt=prompt, context=context).text

timeout=20 を入れているのは、待つより落としたほうが安全だからです。ローカルモデルは読み込みに数秒かかることがあり、そこで固まると自動化パイプライン全体が止まります。Ollama を含む具体的な接続手順は、Gemma 4 を Antigravity で動かすにまとめています。

Gemma 4 との統合深化 — 画像からコードへ

Gemma 4 モデルと Antigravity の統合がさらに深まり、特にマルチモーダル処理(テキスト+画像)の精度向上が顕著です。コードのスクリーンショットから実装を起こす、UI のデザイン画像からコンポーネントの骨組みを出す、といった用途の品質が上がりました。

実際に使うときのコツは、画像を渡すだけで終わらせず、期待する出力の制約を言葉でも添えることです。「この画面を SwiftUI で、状態管理は持たず見た目だけ」と添えるかどうかで、返ってくるコードの粒度がかなり変わります。Gemma 4 × Antigravity は現在 Antigravity Lab で最も読まれているテーマでもあり、組み合わせの相性は確かに良いと感じています。

コンテキストウィンドウの拡張 — 横断リファクタが楽になる

利用可能なコンテキストウィンドウが拡張され、大規模なコードベースや長い会話履歴を保ったままの作業が快適になりました。効果を一番実感しやすいのは、複数ファイルにまたがるリファクタリングと、プロジェクトの文脈を踏まえた設計レビューです。関連ファイルをまとめて読ませても文脈が途切れにくくなり、「さっき直した別ファイルの前提を忘れてちぐはぐな修正を返す」という事故が減りました。

実際につまずいた三つのこと

機能そのものより、周辺で時間を溶かしました。同じ穴に落ちる方が減れば嬉しいです。

base_url の末尾スラッシュ。 http://localhost:11434/ と書くと接続が 404 で返ります。パス結合で // になるためで、エラーメッセージは「モデルが見つかりません」としか言ってくれません。末尾のスラッシュを削るだけで通ります。

モデルのアンロードによる初回の遅さ。 Ollama は既定で 5 分アイドルするとモデルをメモリから降ろします。朝いちばんの 1 回目だけ応答が 10 秒近くかかり、「ローカルは遅い」と誤解しかけました。OLLAMA_KEEP_ALIVE=30m ollama serve で起動しておけば、体感はまったく別物になります。

A2A の引数スキーマ不一致。 呼び出し側と受け側で型が食い違うと、ツール呼び出しが例外ではなく無言で握り潰され、エージェントが「ツールを使わずに答える」挙動に落ちます。Antigravity 側の @Tool は型注釈を str / int のような素直な型で書き、Optional や複合型は避けるのが安全でした。応答が返らない・様子がおかしい場合の切り分けは、AI エージェントが応答しない時の診断と対処法も併せてどうぞ。

プラン・料金の変更

2026年春の料金改定で、一部プランの制限が緩和されています。特に Pro プランのコンテキスト制限が見直され、個人開発者にとって取り回しやすい構成になってきました。具体的な数値はAntigravity の料金と使用量で確認できます。

二か月使って、手元に残ったもの

この記事を書いてから 5 月・6 月と実務で回してみて、結果として定着したのは二つだけでした。

AgentKit 2.0 のデバッグ情報と、上のツール呼び出し予算。この組み合わせは、エージェントを「よく分からないけど動くもの」から「動きを説明できるもの」に変えてくれました。ローカル/クラウドの振り分けも残りました。費用の話以上に、ネットワークが不安定な移動中でも下書きが進む、という副次的な効き目が大きかったです。

逆に外したのは A2A です。技術としては筋が良いと今も思っていますが、一人で回している範囲では、フレームワークをまたぐ必要が最後まで出ませんでした。使える機能と、使うべき機能は違う。当たり前のことを、二か月かけて確認した格好です。

まず試すなら、この順番で

ここまでの変更を全部追う必要はありません。まず AgentKit 2.0 のデバッグ情報で手元のエージェントの動きを可視化し、ツール呼び出し回数に上限を置く。そのうえで、試行回数の多い作業をローカル LLM に逃がす。この二段だけでも、日々の手応えははっきり変わります。A2A や Gemma 4 のマルチモーダルは、必要が出てきたタイミングで足せば十分です。

次の更新が来たら、また同じ目線で「自分の作業に効くか」で選り分けていきます。読んでくださってありがとうございました。

シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

Antigravity 基本2026-05-04
Antigravity 2026年4〜5月アップデートまとめ — Manager View・並列エージェント・クォータ緩和
2026年4〜5月のAntigravity主要アップデートを整理。IDE v1.22.2のManager/Editor View、並列エージェント強化、クォータ制限緩和、AGENTS.mdサポートなど、開発体験に影響する変更点をまとめます。
Antigravity 基本2026-05-02
Google Antigravity 2026年5月版アップデート速報 — UE5連携・A2A対応・AgentKit 2.0強化を実機で確認
Google Antigravity の 2026 年 5 月時点で押さえるべきアップデートを整理。Unreal Engine 5 連携、A2A プロトコル対応、AgentKit 2.0 の強化点を、実際に動かして見えた挙動とあわせて解説します。
Antigravity 基本2026-04-27
Antigravity 2026年4月アップデート総まとめ — 開発者目線で読む7つの新機能
Antigravity の 2026年4月アップデートを、開発者が実務で使う順に7つの新機能として整理しました。Gemma 4 統合の進化、AgentKit 2.0 の実用機能、Project Context、UE5サポートまで、何が「現場で本当に使える」かを優先して解説しています。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →