2026年9月8日

開発を圧倒的に楽にするAntigravity構成ガイド(第3部)


Content

「単発のバグ修正やテストコードの作成だけでなく、Issueの検知から設計、実装、テスト、プルリクエスト(PR)の作成、そして最終報告にいたる『開発プロセス全体』をAIに自動で回させたい」

AIエージェントの基本的な可能性や合意プロセスの重要性を理解したテックリードやCTOが、最終的に行き着くのはこのような「エンドツーエンドの自律型開発パイプライン」の構築ではないでしょうか。

本連載の最終回となる第3部では、Antigravityのすべての機能(Permissions、Subagents、MCP、Skills、Rules、Plugins、Hooks、Sidecars)を連結した開発環境の構成と、実際のGitHub Issueを起点とした「自律バグ修正からPR作成・報告までの完全自動化フロー」の具体例を詳しく解説します。

開発を圧倒的に楽にする構成

Antigravityの「自律型開発環境」とは、単にエージェントがコードを書くだけでなく、イベントの常駐監視(Sidecars)から自動起動(Hooks)、作業の役割分担(Subagents)、社内システムとの安全な連携(MCP)、コーディング規約の遵守(Rules & Skills)、そして人手承認によるセキュリティ確保(Permissions)にいたるすべての機能を有機的に連結した開発構成です。

これにより、開発者は「AIに指示する」という単発の作業から解放され、AI自身がイベントを検知して動き回る「完全自動の開発フロー」を手に入れることができます。

【実機構成例】プロジェクトのフォルダ構造

Antigravityの各機能を実際の開発プロジェクトに導入する際、リポジトリ内およびPC上の設定は以下のような構成です。プロジェクトのルートディレクトリに .agents/ を配置し、各種設定やカスタムコードを管理するのが一般的です。表示崩れや改行の歪みを防ぐため、等幅フォントと固定幅スクロールで美しくレンダリングします。

my-web-project/
├── .agents/ # 開発プロジェクト固有の設定ディレクトリ
│ ├── mcp_config.json # 1. ワークスペース固有のMCPサーバー・ツール連携定義
│ ├── rules/ # 2. プロジェクト固有の「行動・運用ルール」
│ │ └── project-rules.md # コーディング規約とGitフローの統合ルール
│ ├── skills/ # 3. 特定タスクに特化した「専門スキル」
│ │ └── sql-optimizer/ # SQL最適化スキルの定義ディレクトリ
│ │ └── skill.json # スキル定義とプロンプトの統合ファイル
│ └── hooks/ # 4. 特定イベントでエージェントを起動する定義
│ └── on-issue-created.json # GitHub Issue起票時の自動キック定義
├── sidecars/ # 5. バックグラウンドで常駐するイベント監視プログラム
│ └── github-monitor.js # Webhookを監視し、フックをキックするスクリプト
├── package.json # プロジェクト定義(テストコマンド等)
├── src/ # アプリケーションソースコード
└── tests/ # 単体・結合テストコード(AIが自律実行)

詳細ディレクトリ構成定義表

フォルダ構造に含まれる各ファイルやディレクトリの具体的な役割と設定のポイントを整理します。この一元管理により、環境のブラックボックス化を防ぎます。

ファイル / ディレクトリパス 役割の分類 役割と設定のポイント
.agents/ ローカル設定コンテナ プロジェクト固有のメタデータを格納するルート。Gitでバージョン管理を行い、チーム全員で「AI設定」を共有します。
├── mcp_config.json ツール連携定義 (1) このプロジェクトでのみ使用するローカル/リモートのMCPサーバーを定義します。
├── rules/ 共通ルール (2) エージェントが「常に無意識に厳守すべきルール」をMarkdown形式で定義します。コーディングスタイルとGit運用規約を1ファイルに統合しています。
├── skills/ 専門スキル (3) 複雑なタスク(SQLチューニングなど)を遂行するための特化型指示セットとツール定義を格納します。
├── hooks/ 起動フック (4) GitHubのIssue起票などのイベント信号を受け取り、エージェントを自動起動する際の設定を記述します。
sidecars/ 常駐監視 (5) 外部イベントを24時間監視し、発生したイベントデータをフック(Hooks API)へ中継するサイドカープロセスの格納先。

主要設定ファイルの中身と具体的な記述例(構成要素)

これらの設定ファイルやスクリプトがどのように記述され、相互に機能するのか、実例を公開します。そのままプロジェクトに適用して動作検証できるレベルの具体性です。なお、起動時のアカウント認証は最初のOAuthサインイン時にローカルのセキュアキーリング(キーチェーン)へ自動保存されるため、設定ファイルには一切APIキーの記述は不要です。

1. グローバル全般動作設定:~/.gemini/antigravity-cli/settings.jsonパソコン全体で動作するエージェントが使用する標準モデル、除外対象とするパス、そしてセキュリティの根幹である「サンドボックス(隔離空間)」の有効化を規定します。

{
"globalModel": "gemini-3.5-flash",
"enableTerminalSandbox": true,
"defaultLanguage": "ja",
"excludePaths": [
"**/node_modules/**",
"**/.git/**",
"**/dist/**"
],
"logging": {
"enableCloudLogging": true,
"logLevel": "INFO"
}
}

2. プロジェクト固有MCP連携設定:.agents/mcp_config.jsonAIがこのプロジェクトでのみ実行・接続可能な外部連携ツールを設定します。これにより、必要な社内データへのアクセスと外部接続を安全に両立します。

{
"mcpServers": {
"internal-db": {
"command": "python3",
"args": ["mcp_db_server.py"]
},
"github-tool": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"]
}
}
}

3. プロジェクト共通ルール:.agents/rules/project-rules.mdコーディング規約と、GitおよびGitHubの運用フローを1つに統合した、チーム固有の厳格な行動指針です。

# プロジェクト開発・運用共通ルール

## 1. コーディング標準 & 設計規約
- **命名規則**: JavaScript/TypeScriptの変数名はキャメルケース、Reactコンポーネント名はパスカルケースで統一すること。
- **エラーハンドリング**: 非同期処理(async/await)には必ず try-catch ブロックを記述し、例外時は console.error でログ出力すること。

## 2. Git & GitHub 運用フロー
- **ブランチ命名**: バグ修正は fix/issue-[Issue番号]-[説明]、機能追加は feature/issue-[Issue番号]-[説明] とする。
- **コミットメッセージ**: "[fix/feat]: [Issue番号] 変更の短い説明" 形式とすること。

4. 専門カスタムスキル定義:.agents/skills/sql-optimizer/skill.jsonSQLの実行計画(EXPLAIN)を解析し、インデックス適用やクエリ書き換えの提案を行う「特化型スキル」の設定定義です。

{
"name": "sql-optimizer",
"description": "SQLの実行計画を解析し、最適なインデックスの適用やクエリのリファクタリング案を提案します。",
"version": "1.0.0",
"tools": [
"db_schema_viewer",
"db_query_executor"
],
"required_rules": [
"project-rules.md"
],
"system_instruction": "あなたはDBパフォーマンスチューニングの専門家です。EXPLAINでボトルネックを特定し、インデックス作成文やクエリ改善案をMarkdown形式で出力してください。"
}

5. 自動起動トリガーの定義:.agents/hooks/on-issue-created.jsonGitHub Issueなどのイベントを検知した際に、エージェントを自動起動する引き金(Hooks)の設定定義です。

{
"event_type": "github.issue.created",
"action": {
"trigger_agent": "main-orchestrator",
"prompt_template": "GitHubで新しいIssue(#{event.issue.number})が起票されました。タイトル: {event.issue.title}。開発規約に準拠してバグ調査、計画書の作成、テストおよびPR作成まで自動で進めてください。"
}
}

6. 常駐監視プログラム(サイドカー):sidecars/github-monitor.js外部のGitHubイベントを24時間監視し、検知した情報をAntigravityのHooks APIへ配送するサイドカーの実装コードです。

const express = require('express');
const axios = require('axios');
const app = express();
app.use(express.json());

const PORT = process.env.PORT || 8080;
const ANTIGRAVITY_HOOKS_URL = 'http://localhost:3000/hooks/on-issue-created';

app.post('/webhook', async (req, res) => {
const event = req.body;
if (req.headers['x-github-event'] === 'issues' && event.action === 'opened') {
try {
await axios.post(ANTIGRAVITY_HOOKS_URL, { event });
console.log('[Sidecar] Event forwarded to Antigravity Hooks successfully.');
} catch (err) {
console.error('[Sidecar] Failed to forward event:', err.message);
}
}
res.status(200).send('Event processed');
});

app.listen(PORT, () => {
console.log(`[Sidecar] GitHub Monitor listening on port ${PORT}`);
});

このように設定ファイルをコードとして一元管理することで、開発環境全体が「AIエージェントに最適化されたスマートプロジェクト」へと進化します。

Issue検知からPull Request作成、報告までの完全自動化フロー

この構成を導入したプロジェクトにおいて、GitHubでバグ報告のIssueが起票されてから、AIエージェントが自律的に修正PRを作成して人間に報告するまでの具体的なドラマを追ってみましょう。

【シナリオ】「ユーザープロフィール更新時に、電話番号が空だとシステムが500エラーになる」バグ

ステップ1:イベントの自動検知(Sidecars & Hooks)

外部ユーザーからGitHubにバグ報告のIssue #104が起票されます。常駐しているSidecarsがWebhookイベントを検知し、伝達神経網であるHooksを介してAntigravityのメインエージェントに自動通知。人間が手動で起動することなく、エージェントが夜間でも自律起動します。

ステップ2:自律調査と計画書の提出(MCP & Subagents & Plan)

メインエージェントは、MCPを介してGitHubからIssue #104の本文を取得。さらに「調査用サブエージェント」を非同期に起動してファイルを探索させます。エージェントはコードを書き換える前に、実際のコード差分計画(Plan)を記述した implementation_plan.md を作成して人間に通知。開発者は内容を確認し「承認(Approve)」を返します。このステップで手戻りのリスクが完全にゼロに近づきます。

ステップ3:安全な実装と自動テスト(Rules & Sandbox & Permissions)

承認を受けたエージェントは、プロジェクト内の Rules を遵守してコードを修正します。次に npm test を実行しようとしますが、グローバル設定の enableTerminalSandbox により、テストは隔離された安全な専用ルーム(Sandbox)内で実行されます。さらに、ファイル書き込みやシェル実行の寸前にPermissionsの承認プロンプトが立ち上がり、開発者が「Approve」をクリックするまで実行が制限され、安全性が完全に防衛されます。

ステップ4:PR自動作成とエビデンス報告(MCP & Walkthrough & Screenshots)

テストの成功を確認したメインエージェントは、MCPを介して自動的にGitHubへプッシュし、Pull Requestを起票します。この際、自動テストの結果や画面崩れがないことを示すレンダリング画面のキャプチャ(Screenshots)を撮影。これらを統合した完了報告書(walkthrough.md)をPRの記述欄に自動添付し、人間に最終報告します。人間は画像と差分を見てワンクリックで「マージ」するだけです。

このように、「バグの発生検知 ➔ 原因特定 ➔ 修正 ➔ テスト ➔ PR作成 ➔ 報告」という開発者の日常作業のほぼすべてが、人間の承認による安全性を担保された上で、最初から最後までほぼ全自動で流れます。

Antigravityが生み出す究極のビジネス価値

このAntigravityを組織に導入することは、単なる「便利な開発ツールの導入」を超え、ソフトウェアビジネスにおける圧倒的な競争優位性を生み出します。

① 開発リードタイムの驚異的な短縮

人間が作業すると数時間〜数日かかっていた「バグの調査からPR作成までの一連のワークフロー」が、実質数分〜数十分に短縮されます。顧客から報告されたバグに対して即座に修正PRが立ち上がる圧倒的な製品改善スピードは、ユーザー体験(UX)と顧客満足度を劇的に向上させます。

② 人為的ミスの徹底排除とシステム品質の安定化

エージェントはRules(規約)やPermissions(承認された操作範囲)のガイドレールから外れることができません。テストの実行漏れや規約違反のコード、あるいは危険なシェルコマンドの誤実行といったヒューマンエラーがサンドボックスやアクセス権制限により完全に排除され、品質が劇的に安定します。

③ エンジニアが「本当にクリエイティブな仕事」へ集中できる環境の創出

エンジニアが最も時間を取られがちな「ドキュメントの更新漏れの確認」「単純なエラーの追跡」「定型的なテストコード書き」といった作業をAIチームに丸投げできます。人間は、全体のアーキテクチャ設計や、AIが提示した設計書(Plan)の評価といった、最も付加価値の高い設計・意思決定(レビュー)業務に専念でき、組織のイノベーション創出力が最大化します。

まとめ

全3回にわたり、Googleの次世代AIエージェントプラットフォーム「Antigravity」を用いた新しい開発の形について解説してきました。

  • 第1部:ワークスペース共有、Permissions(権限承認)、Subagentsによる役割分担
  • 第2部:Plan/Walkthroughの協調プロセス、MCP・カスタムスキル・Plugins、Sidecars/Hooksの役割分担
  • 第3部(本記事):すべての機能を連結したアーキテクチャと、実際のディレクトリ構成・設定ファイルの実例

「AIにすべてを代行させる」のではなく、「安全なプロセスとガードレールを人間が設計し、その中でAIに自律的にパフォーマンスを発揮させ、人間が最終的な舵取りを行う」。これこそが、これからの時代に求められる「人間味のあるAIとの協調開発」の正解です。

※本記事のディレクトリ構成・設定ファイルの記述は、執筆時点(2026年6月)のAntigravity公式ドキュメントの仕様に基づいています。今後のアップデートで仕様が変更される可能性がありますので、実際の導入時は最新の公式ドキュメントもあわせてご確認ください。

当社では、Google Cloudの最新技術を活用し、お客様のプロジェクトに最適なAIエージェント開発基盤(Antigravity)のアーキテクチャ設計や導入・活用支援を行っています。「Antigravityを活用した圧倒的な生産性を手に入れたい」とお考えの企業様は、ぜひお気軽にお問い合わせください。

システムサポートでは、Google Cloudの導入や活用を支援しております。

Google Cloudを導入したい・導入したけど使いこなせていない…という方は、お気軽にご相談ください!


Google Cloud 導入・活動支援に関するご相談はこちら

2026年9月8日 開発を圧倒的に楽にするAntigravity構成ガイド(第3部)

Category Google Cloud

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら