Antigravity IDE を使ってみる

1. はじめに

Antigravity は、エージェント ファーストの時代に誰でも構築できるように設計されたエージェント型開発プラットフォームです。これは、Antigravity、Antigravity IDE、Antigravity CLI、Antigravity SDK の 4 つの主要なプロダクトで構成されています。

この Codelab では、デベロッパー向けの Antigravity IDE のみに焦点を当てます。

学習内容

  • Antigravity プラットフォームについて理解する。
  • Antigravity IDE をインストールします。
  • Antigravity エディタとエージェント パネルを確認します。
  • スラッシュ コマンド。
  • カスタマイズ、MCP サーバー、スキル。

必要なもの

Antigravity IDE は、システム(Mac、Windows、特定の Linux ディストリビューション)にローカルにインストールする必要があります。また、次のものも必要です。

  • Chrome ウェブブラウザ。
  • Gmail アカウント(個人用 Gmail アカウント)。

問題の報告

この Codelab と Antigravity を使用する際に、問題が発生する可能性があります。

Codelab 関連の問題(誤字脱字、手順の誤りなど)については、この Codelab の左下にある Report a mistake ボタンをクリックしてバグを報告してください。

e7d8a6055a16a773.png

Antigravity に関連するバグや機能リクエストについては、Antigravity 内で問題を報告してください。Antigravity サービスの左下にある [設定] をクリックして、サービスに関するフィードバックを送信できます。[Provide Feedback] オプションを選択します。

2. Antigravity プラットフォーム

Antigravity IDE に焦点を当てる前に、まず Antigravity プラットフォームについて理解しましょう。

Antigravity は、次の 4 つの独立したプロダクトで構成されています。

  • Antigravity: 複数のローカル エージェントを並行して管理するための、主要なスタンドアロン アプリケーションであり、コマンドセンターです。
  • Antigravity IDE: 開発者向けのフル機能のエージェント型 IDE。
  • Antigravity CLI: ターミナルベースのエージェント操作用のコマンドライン インターフェース。
  • Antigravity SDK: デベロッパーが Antigravity を独自のシステムにプログラムで統合するためのツール。

すべてのプロダクトで同じ基盤となる Antigravity エージェントにアクセスできますが、インタラクションのレベルは異なります。

Antigravity では、エージェントをより高いレベルで操作します。エージェントとの会話で、作成したいものを説明すると、エージェントがコードを処理します。生成されたコードを確認できますが、必ずしもコードを自分で操作する必要はありません。

Antigravity IDE では、コーディング レベルが低くなります。エージェント パネルからエージェントに話しかけることはできますが、コードの全体像を把握し、コードの生成と編集時にエージェントのサポートを受けることもできます。

Antigravity CLI では、コマンドライン インターフェースからエージェントを利用します。エージェントに話しかけてコードの生成や編集を依頼することはできますが、すべての処理はターミナルで行われます。

どのレベルを選択するかは、ご自身で決めてください。通常は、Antigravity でより高いレベルからビルドを開始し、複雑さが増すにつれて、コーディングには Antigravity IDE に、ターミナル フレンドリーなタスクには Antigravity CLI に切り替えます。

3. インストール

Antigravity アプリケーションはすでにインストールされているが、Antigravity IDE はまだインストールされていない場合は、右上に [Install IDE] ボタンが表示されます。

a3afce2c797f070c.png

そのボタンをクリックするか、Antigravity IDE のダウンロード ページに直接アクセスして、オペレーティング システム(macOS、Windows、Linux)用の Antigravity IDE をダウンロードしてインストールします。

インストールが完了すると、ウェルカム画面が表示されます。

a7bda49c67b4d971.png

Google アカウントでログインし、テーマを選択してインストールを続行します。

Antigravity IDE エージェントの使用方法を尋ねられます。この画面では、エージェントのターミナル実行ポリシー、ポリシーの確認、JavaScript 実行ポリシーを調整できます。ここでは [レビュー主導の開発] を選択します。

923299763a029330.png

次の画面で、拡張機能と agy-ide コマンドライン ツールを構成できます。必要な拡張機能のみをインストールすることをおすすめします。

c4e8005b3042b401.png

Antigravity IDE には、エージェントが Google デベロッパー プロダクトを操作するのに役立つ、スキルと MCP のパッケージ化されたコレクションであるプラグインも付属しています。仕事に役立ちそうなものを選択します。

195da4a9d7b5a075.png

これで、Antigravity IDE を使用する準備が整いました。

4. Antigravity IDE インターフェース

Antigravity IDE を初めて起動すると、Antigravity IDE のメイン インターフェースが表示されます。

4a3bd4e0483365d9.png

まず、ローカル フォルダを開きます。また、Terminal から New Terminal メニュー項目を選択して、新しいターミナルを開くことをおすすめします。

これで、エディタ、ターミナル、エージェントの準備が整いました。

d1465bea8316f991.png

エディタでは、コードを入力すると、Antigravity から AI アシスタンスが提供されます。エージェント パネルでは、エージェントとチャットしたり、さまざまなモデルを選択したり、ファイルやコマンドを参照したりできます。ターミナルはデフォルトでは AI アシスト機能がありませんが、Antigravity CLI をインストールすると、agy コマンドで起動して、ターミナルで AI アシスト機能を利用できます。

Antigravity の設定

右下の [Antigravity Settings] を確認することをおすすめします。エージェントの基本設定があります。

14201a391e0d5955.png

[Advanced Settings] には、エージェントのセキュリティ モードなどの詳細設定があります。

9c2939aafa9724b5.png

これにより、ターミナル コマンドやファイル システム アクセスなどに関して、エージェントがどの程度の自由度を持つかを指定できます。これらの設定を確認し、プロジェクトに適した設定を選択してください。

5. エディタ

エディタを見てみましょう。エディタの機能を試すための Python ファイル hello.py を作成します。

エディタの hello.py にコードを入力すると、スマートな自動補完が開始されます。この自動補完は、Tab キーを押して受け入れることができます。

b34cd085032c2d5f.png

タブでジャンプ候補が表示され、コード内の次の論理的な場所にカーソルを移動できます。たとえば、main() の入力を完了すると、エディタから main メソッドにジャンプするよう求められます。

2dd69707af98c677.png

また、不足している依存関係を追加するための タブをインポートする提案も表示されます。

5ce8b0b5b9fdfdcc.png

6. エージェント パネル

右側にエージェントのサイドパネルが表示されます。表示されていない場合は、Cmd + L ショートカットで切り替えることができます。

さまざまなモデルタイプを選択したり、@ を使用してファイル、ディレクトリ、ターミナル、MCP サーバーなどのコンテキストを追加したり、/ を使用してコマンドを追加したりできます(後の手順で説明します)。

ae98a3c19c2a8fc7.png

エージェントとやり取りする最も簡単な方法は、会話で質問を始めることですが、エージェントとやり取りする方法は他にもあります。

静的リンター(Pylint など)がインストールされている場合は、コードに構文エラーがあると、エラーが表示されます。エディタで問題にカーソルを合わせて Explain and fix を選択した場合。エージェント パネルが開き、エージェントから説明と解決策が提示されます。

db123f692200e653.png

IDE の Problems タブに移動して Send to Agent を選択し、エージェントに問題の解決を試みさせることもできます。

2f95dba053a09dd5.png

ターミナル出力の一部(エラーを含む)を選択して、Cmd + L を使用してエージェントの会話に送信することもできます。

b1a29237e8efd11a.png

エージェントとチャットしていると、入力ウィンドウの上部にいくつかのアイコンが表示されます。

3b17223d6d2e7bea.png

[変更の概要](コードの変更を確認)、[ターミナル](バックグラウンド プロセス)、[アーティファクト]、[ブラウザ] です。

7. アーティファクト

Antigravity の中核は、開発のあらゆる段階でフィードバックを簡単に収集できることです。エージェントがタスクに取り組むと、さまざまなアーティファクトが作成されます。

  • コーディング前: 実装計画とタスクリスト。
  • コードの生成中: コードの差分。
  • コーディング後: 実行した内容を説明し、結果を確認するチュートリアル。

これらのアーティファクトは、Antigravity が計画と進捗状況を伝えるための手段です。また、Google ドキュメントのコメント形式でエージェントにフィードバックを提供することもできます。これは、エージェントを効果的に誘導するうえで非常に役立ちます。

簡単なアプリケーションを構築しながら、Antigravity にフィードバックを送信する方法を見てみましょう。

エージェントのサイドパネルで、次のプロンプトを試します。

Build a TODO list application with Python Flask, SQlite DB, and a CRUD frontend. Keep the application simple

これにより、エージェントが起動し、計画の作成と実装計画の作成が開始されます。

導入計画

実装計画は、Antigravity が何を行う予定か、どの技術スタックを使用するか、提案された変更の概要を説明したものです。

数秒後に、会話に実装プランが表示されます。

935372be9721a21c.png

問題がなければ、[Proceed] ボタンをクリックします。フィードバックをご希望の場合は、実装計画を開き、Google ドキュメント スタイルのコメントを追加してから送信してください。

タスクリスト

実装計画が更新されると、Antigravity によってタスクリストが作成されます。これは、Antigravity がアプリの作成と検証を行うための具体的な手順のリストです。進捗状況を伝えるための方法です。

5eb1f122174855a8.png

コード変更

この時点で、Antigravity は新しいファイルにコードを生成します。エージェント チャットのサイドパネルで、詳細を確認せずにこれらの変更を Accept all または Reject all できます。Review changes をクリックして変更の詳細を確認し、コードに詳細なコメントを追加することもできます。

チュートリアル

Antigravity はコーディングが完了すると、サーバーを起動し、アプリを確認するためにブラウザを開くことがあります。タスクの追加や更新などの手動テストを行い、最後に、アプリの確認のために行ったことをまとめたウォークスルー ファイルを作成します。これには、スクリーンショットやブラウザの録画による確認フローが含まれることがあります。

ウォークスルーでは、スクリーンショットやブラウザの録画にコメントすることもできます。たとえば、コメント Change the blue theme to orange theme を追加して送信できます。コメントが送信されると、Antigravity が変更を行い、結果を確認して、ウォークスルーを更新します。

変更を元に戻す

最後に、各ステップの後に変更に満足できない場合は、チャットから変更を元に戻すことができます。チャットで ↩️ Undo changes up to this point を選択するだけです。

8. スラッシュ コマンド

Antigravity IDE には、組み込みのスラッシュ / コマンドが用意されています。エージェントのサイドパネルで「/」と入力すると、コマンドのリストが表示されます。

c0b121133b3191ca.png

/goal は、タスクが完了するまで実行するようにエージェントに指示します。/schedule を使用すると、タスクを定期的なタスクまたは 1 回限りのタスクとしてスケジュールできます。/grill-me はエージェントとの計画の調整に役立ち、/learn は会話から再利用可能なスキルやルールを抽出するのに役立ちます。

これらのコマンドを試して、どのように役立つかを確認してください。

9. カスタマイズ

Antigravity IDE には、ルールワークフローという 2 つのカスタマイズ オプションがあります。

右上にある ... をクリックして Customizations を選択すると、RulesWorkflows が表示されます。

3415bdfa2f263b08.png

ルールは、エージェントの動作をガイドするのに役立ちます。これらは、エージェントがコードとテストを生成する際に従うように指定できるガイドラインです。たとえば、エージェントに特定のコードスタイルに従うように指示したり、常にメソッドを文書化するように指示したりできます。これらをルールとして追加すると、エージェントが考慮します。

ワークフローは、エージェントとのやり取り中に / でオンデマンドでトリガーできる保存済みのプロンプトです。また、エージェントの動作をガイドしますが、ユーザーのオンデマンドでトリガーされます。

ルールはシステム指示に近く、ワークフローはオンデマンドで選択できる保存済みプロンプトに近いと考えるとわかりやすいでしょう。

ルールワークフローは、グローバルまたはワークスペースごとに適用でき、次の場所に保存できます。

  • グローバル ルール: ~/.gemini/GEMINI.md
  • グローバル ワークフロー: ~/.gemini/config/global_workflows/<YOUR_WORKFLOW_NAME>.md
  • ワークスペース ルール: your-workspace/.agents/rules/
  • Workspace ワークフロー: your-workspace/.agents/workflows/

ワークスペースにルールとワークフローを追加しましょう。

ルールを追加

まず、コード スタイル ルールを追加しましょう。Rules に移動し、+Workspace ボタンを選択します。次のコード スタイル ルールを使用して、code-style-guide などの名前を付けます。

* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented

次に、コードがモジュール方式で生成されるように別のルールを追加します。code-generation-guide ルールの例を次に示します。

* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.

2 つのルールが保存され、準備が整いました

ワークフローを追加する

単体テストを生成するワークフローも定義しましょう。これにより、コードに満足したら単体テストをトリガーできます(エージェントが常に単体テストを生成するのではなく)。

Workflows に移動し、+Workspace ボタンを選択します。次のように、generate-unit-tests などの名前を付けます。

* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix

ワークフローも実行できるようになりました。

試してみる

では、ルールとワークフローの実際の動作を見てみましょう。ワークスペースにスケルトン main.py ファイルを作成します。

def main():
    pass

if __name__ == "__main__":
    main()

エージェントのサイドパネルに移動し、エージェントに「Implement binary search and bubble sort.」と質問します。

1 ~ 2 分後に、ワークスペースに main.pybubble_sort.pybinary_search.py の 3 つのファイルが作成されます。また、すべてのルールが実装されていることにも気づくでしょう。メインファイルは整理されており、サンプルコードが含まれています。各機能は独自のファイルに実装されています。すべてのコードがドキュメント化され、適切なスタイルで記述されています。

from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending


def example_binary_search():
    """
    Demonstrate binary search algorithm with various test cases.
    """
    ...

def example_bubble_sort():
    """
    Demonstrate bubble sort algorithm with various test cases.
    """
    ...

def main():
    """
    Main entry point to showcase functionality.
    """
    example_binary_search()
    example_bubble_sort()
    print("\n" + "=" * 60)


if __name__ == "__main__":
    main()

コードに問題がないことを確認できたので、単体テストの生成ワークフローをトリガーできるかどうかを確認しましょう。

チャットに移動して /generate と入力すると、Antigravity はすでにワークフローを認識しています。

1b5120e06e55e98.png

generate-unit-tests を選択して Enter キーを押します。数秒後に、ワークスペースに新しいファイル(test_binary_search.pytest_bubble_sort.py)が作成されます。これらのファイルには、すでに実装されているテストがいくつか含まれています。

10. MCP サーバー

Model Context Protocol(MCP)は、エージェントを外部システムに接続するための標準として登場しました。エージェントがデータと統合の点でグラウンディングを維持するうえで、重要な役割を果たします。

Antigravity IDE は、ローカルとリモートの両方の MCP サーバーをサポートしています。また、Google Cloud サービスと連携する複数の MCP サーバーとの統合も提供されており、数個の構成データでワンクリックでインストールできます。

右上の ... をクリックして、MCP Servers を選択します。ダイアログが表示され、MCP サーバーのリストが表示されます。

3fed0fbf1daa6df0.png

たとえば、[Cloud Run] をクリックして MCP サーバーをインストールできます。

右上にある Manage MCP Servers をクリックすると、~/.gemini/config/mcp_config.json で MCP サーバーの未加工の設定を確認することもできます。このファイルに他のカスタム MCP サーバーを追加し、更新ボタンを押すと、Antigravity IDE で認識されます。

構成した MCP サーバーを使用するには、MCP サーバーを必要とする質問を Antigravity にします。たとえば、cloudrun-mcp サーバーを有効にして、Antigravity に「Build and deploy a Cloud Run service」と質問できます。これにより、Antigravity は cloudrun-mcp サーバーを探して使用し、Cloud Run サービスを構成してデプロイします。

11. スキル

Antigravity の基盤となるモデルは強力な汎用モデルですが、特定のプロジェクトのコンテキストやチームの標準を把握していません。すべてのルールやツールをエージェントのコンテキスト ウィンドウに読み込むと、ツールが肥大化し、コストが増加し、レイテンシが発生し、混乱が生じます。

スキルは、プログレッシブ開示によってこの問題を解決します。スキルは、必要になるまで休眠状態にある専門知識のパッケージです。特定のリクエストがスキルの説明と一致した場合にのみ、エージェントのコンテキストに読み込まれます。

構造とスコープ

スキルはディレクトリ ベースのパッケージです。必要に応じて、次の 2 つのスコープで定義できます。

  • グローバル スコープ(~/.gemini/config/skills/): すべての Antigravity プロダクト(Antigravity、Antigravity IDE、Antigravity CLI)とプロジェクトで使用できます。
  • プロジェクト/ワークスペースのスコープ(<project-root>/.agents/skills/): この場合、スキルは特定のプロジェクト内でのみ使用可能になります。

一般的なスキル ディレクトリは次のようになります。

my-skill/
├── SKILL.md    #(Required) metadata & instructions.
├── scripts/    # (Optional) Python or Bash scripts for execution.
├── references/ # (Optional) text, documentation, or templates.
└── assets/     # (Optional) Images or logos.

スキルを追加してみましょう。

コードレビュー スキル

これは指示のみのスキルです。つまり、メタデータとスキルの指示を含む SKILL.md ファイルを作成するだけで済みます。バグ、スタイルの問題、ベスト プラクティスについてコードの変更をレビューする詳細をエージェントに提供するスキルを作成しましょう。

スキルを格納するディレクトリをプロジェクト フォルダに作成します。

mkdir -p .agents/skills/code-review

プロジェクト フォルダ(例: 先ほど作成した .agents/skills/code-review)に、次の内容の SKILL.md ファイルを作成します。

---
name: code-review
description: Reviews code changes for bugs, style issues, and best practices. Use when reviewing PRs or checking code quality.
---

# Code Review Skill

When reviewing code, follow these steps:

## Review checklist

1. **Correctness**: Does the code do what it's supposed to?
2. **Edge cases**: Are error conditions handled?
3. **Style**: Does it follow project conventions?
4. **Performance**: Are there obvious inefficiencies?

## How to provide feedback

- Be specific about what needs to change
- Explain why, not just what
- Suggest alternatives when possible

上記の SKILL.md ファイルには、上部にメタデータ(名前と説明)があり、その後に手順が記載されています。エージェントが読み込まれると、スキルのメタデータのみが読み取られ、スキルの手順全体は必要な場合にのみ読み込まれます。

スキルを検証しましょう。Antigravity との新しい会話を開始し、インストールされているスキルを尋ねます。code-review スキルが表示されます。

61d2f8a77a133c46.png

試してみる

次の内容のファイルを demo_bad_code.py という名前で新規に作成します。

import time

def get_user_data(users, id):
   # Find user by ID
   for u in users:
       if u['id'] == id:
            return u
   return None

def process_payments(items):
   total = 0
   for i in items:
       # Calculate tax
       tax = i['price'] * 0.1
       total = total + i['price'] + tax
       time.sleep(0.1) # Simulate slow network call
  
   return total

def run_batch():
   users = [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}]
   items = [{'price': 10}, {'price': 20}, {'price': 100}]
  
   u = get_user_data(users, 3)
   print("User found: " + u['name']) # Will crash if None
  
   print("Total: " + str(process_payments(items)))

if __name__ == "__main__":
   run_batch()

Antigravity の特定のプロジェクトで新しい会話を開き、次のプロンプトを入力します。review the @demo_bad_code.py file

エージェントは code-review スキルを特定し、詳細を読み込んでから、code-review/SKILL.md ファイルに記載されている手順に沿ってアクションを実行する必要があります。

出力例を以下に示します。

12. おわりに

おめでとうございます!これで、Antigravity IDE のインストール、構成、主な機能の確認が完了しました。

Antigravity プラットフォームの詳細については、次の Codelab とリファレンス ドキュメントをご覧ください。

その他の Codelab

リファレンス ドキュメント