𝕏 f B! L
案件・求人数 12,345
案件を探す(準備中) エージェントを探す(準備中) お役立ち情報 ログイン
案件・求人数 12,345
Google Antigravityの拡張機能を開発する方法

Google Antigravityの拡張機能を開発する方法

Google Antigravity拡張機能ExtensionMCP
目次
⚡ 3秒でわかる!この記事のポイント
  • AntigravityはVS Code Extension APIと互換性があり、既存の拡張機能開発知識を活かせる
  • antigravity-sdkでAIエージェントのリアルタイム監視やカスタムUIを追加できる
  • MCPサーバーを構築して外部サービスとの連携ツールを自作できる

Google Antigravityは、Gemini搭載のAIコーディングエディタとして急速に普及しています。2026年現在、エディタの機能を拡張するExtension(拡張機能)エコシステムも充実してきました。

この記事では、Antigravityの拡張機能をゼロから開発する方法を、セットアップからパッケージング・配布まで解説します。VS Code拡張機能の開発経験がある方は、そのスキルをそのまま活かせます。

この記事でわかること
  • Antigravity拡張機能の仕組みとVS Codeとの互換性
  • 開発環境のセットアップ手順
  • antigravity-sdkを使ったAIエージェント連携
  • MCP(Model Context Protocol)でカスタムツールを作る方法
  • テスト・デバッグ・配布の手順

Antigravity拡張機能の仕組み

VS Code Extension APIとの互換性

AntigravityはVS Codeのフォークをベースとしているため、VS Code Extension APIとの高い互換性を持っています。具体的には、

  • vscode 名前空間のAPIがほぼそのまま使用可能
  • package.jsoncontributes フィールドの構造が同一
  • アクティベーションイベント(onCommandonLanguage 等)も共通

ただし、Antigravity固有のAI機能(Agent View、Gemini統合)にアクセスするには、antigravity-sdk を別途使用する必要があります。

OpenVSXレジストリとVS Code Marketplaceの違い

AntigravityはVS Code Marketplaceではなく、OpenVSXレジストリを拡張機能のストアとして使用しています。

  • 多くの人気拡張機能はOpenVSXにも登録済み
  • 自作拡張機能の公開もOpenVSXに対して行う
  • VS Code Marketplace専用の拡張機能は手動インストールが必要な場合あり

開発環境のセットアップ

Node.js/npm/Yeomanのインストール

拡張機能の開発には以下のツールが必要です。

# Node.js 20以上を推奨
node --version  # v20.x以上を確認

# Yeomanと拡張機能ジェネレーターをインストール
npm install -g yo generator-code

# antigravity-sdkをグローバルインストール(オプション)
npm install -g @google/antigravity-sdk

yo code でプロジェクトスキャフォールド

Yeomanを使ってプロジェクトの雛形を生成します。

yo code

# 対話形式で以下を選択:
# ? What type of extension? → New Extension (TypeScript)
# ? Extension name? → my-antigravity-extension
# ? Extension identifier? → my-antigravity-extension
# ? Initialize a git repository? → Yes
# ? Bundle with webpack? → Yes

生成されたプロジェクト構造は以下の通りです。

my-antigravity-extension/
├── src/
│   └── extension.ts    # エントリーポイント
├── package.json         # マニフェスト
├── tsconfig.json
└── webpack.config.js

antigravity-sdkでAIエージェントと連携する

Antigravity固有のAI機能を活用するには、antigravity-sdk を使います。

Agent ViewへのカスタムUI追加

Agent View(AIエージェントのアクティビティを表示するパネル)にカスタムUIを追加できます。

import * as vscode from 'vscode';
import { AgentView } from '@google/antigravity-sdk';

export function activate(context: vscode.ExtensionContext) {
  const panel = AgentView.createPanel({
    title: 'カスタムダッシュボード',
    icon: 'dashboard',
  });

  panel.onAgentActivity((activity) => {
    // エージェントのアクティビティをリアルタイムで受信
    console.log(`Agent action: ${activity.type}`, activity.data);
  });
}

エージェントアクティビティのリアルタイム監視

エージェントがファイルを編集したり、コマンドを実行したりするたびにイベントを受信できます。

AgentView.onFileChange((event) => {
  // ファイル変更時の処理
  vscode.window.showInformationMessage(
    `Agent edited: ${event.filePath}`
  );
});

コード編集の承認/拒否ワークフロー

エージェントの自動編集に対して、承認/拒否のフローを組み込めます。

AgentView.setApprovalPolicy({
  requireApproval: ['file:delete', 'terminal:execute'],
  autoApprove: ['file:edit', 'file:create'],
});

Antigravity入門ガイドで基本操作を押さえてから開発に取り組むことをおすすめします。

MCP(Model Context Protocol)でカスタムツールを作る

MCPサーバーの構築手順

MCPを使えば、AIエージェントが利用できるカスタムツールを自作できます。

import { MCPServer, Tool } from '@google/antigravity-sdk/mcp';

const server = new MCPServer({
  name: 'my-tools',
  version: '1.0.0',
});

// カスタムツールの定義
server.addTool({
  name: 'fetch_jira_ticket',
  description: 'Jiraのチケット情報を取得する',
  parameters: {
    ticketId: { type: 'string', description: 'チケットID(例: PROJ-123)' },
  },
  handler: async ({ ticketId }) => {
    const response = await fetch(`https://your-jira.atlassian.net/rest/api/3/issue/${ticketId}`, {
      headers: { Authorization: `Basic ${JIRA_TOKEN}` },
    });
    const data = await response.json();
    return { title: data.fields.summary, status: data.fields.status.name };
  },
});

server.start();

外部サービス連携の実装例

実際のSES現場で役立つMCPツールの例を紹介します。

  • Jira連携: チケット情報の取得・ステータス更新
  • Slack通知: コード変更時に自動通知
  • DB接続: 開発環境のDBスキーマ参照
  • 社内Wiki検索: Confluenceやnotionから関連ドキュメントを検索

Antigravity API統合でAPI連携の詳細を確認してください。

RulesとWorkflowsによるエージェント制御

Antigravityでは、RulesとWorkflowsを定義してエージェントの動作を制御できます。

# .antigravity/rules.yaml
rules:
  - name: "テスト必須ルール"
    trigger: "file:create"
    condition: "filePath.endsWith('.ts') && !filePath.includes('test')"
    action: "remind"
    message: "新しいTSファイルには対応するテストファイルを作成してください"

  - name: "セキュリティチェック"
    trigger: "file:edit"
    condition: "filePath.includes('auth') || filePath.includes('security')"
    action: "require_approval"

拡張機能のテストとデバッグ

テストはVS Codeの拡張機能テストフレームワークを使います。

import * as assert from 'assert';
import * as vscode from 'vscode';

suite('Extension Test Suite', () => {
  test('should activate', async () => {
    const ext = vscode.extensions.getExtension('your.extension-id');
    assert.ok(ext);
    await ext!.activate();
    assert.ok(ext!.isActive);
  });
});

デバッグはAntigravity内で F5 キーを押すだけで、Extension Development Hostが起動します。Antigravityベストプラクティスも参考にしてください。

パッケージングと配布

# vsceをインストール
npm install -g @vscode/vsce

# パッケージング
vsce package

# OpenVSXに公開
npx ovsx publish my-extension-1.0.0.vsix -p YOUR_TOKEN

Antigravityチームコラボレーションで、チーム内での拡張機能共有方法を解説しています。

Antigravity拡張機能開発のアーキテクチャ図解

まとめ

Google Antigravityの拡張機能開発は、VS Codeの知識をベースに始められる敷居の低さが魅力です。

  • VS Code互換APIで既存スキルを活用
  • antigravity-sdkでAIエージェントとの深い連携が可能
  • MCPでカスタムツールを自作し、外部サービスと接続
  • Rules/Workflowsでエージェント動作を制御

SES現場でも、チーム固有のワークフローに合わせた拡張機能を開発することで、開発効率を大幅に向上させられます。


SES BASEでは、最新のAIコーディングツール活用に関する記事を公開中です。

👉 SES BASEの記事一覧を見る

SES案件をお探しですか?

SES記事をもっと読む →
🏗️

SES BASE 編集長

SES業界歴10年以上のメンバーが在籍する編集チーム。SES企業での営業・エンジニア経験、フリーランス独立経験を持つメンバーが、業界のリアルな情報をお届けします。

📊 業界データに基づく記事制作 🔍 IPA・経済産業省データ参照 💼 SES実務経験者が執筆・監修