Googleが開発した次世代AIエディタ「Antigravity」は、標準の状態でも非常に強力です。しかし、実際の開発現場では「社内独自のAPIを叩いてほしい」「特定のデータベースから情報を抜いてきてほしい」といった、標準機能だけでは手が届かない要望が出てくるものです。
こうした「個別のニーズ」に応えるための道具が、Antigravity SDKです。このSDKを使って「Skills(スキル)」を自作すれば、AIエージェントにあなた専用の特殊技能を授けることができます。この記事では、SDKの導入からスキルの作成、エージェントへの紐付け方法までを詳しく解説します。
Antigravity SDKとSkillsの基本!何ができるようになる?
Antigravity SDKは、AIエージェントに「新しい道具」を渡すための開発キットです。通常、AIはファイルの編集やネット検索などの決められた行動しかできませんが、SDKを使うことでその限界を突破できます。
この章では、SDKとスキルの関係性や、AIがどのようにして自作のツールを使いこなすのかといった、動作の土台となる部分を整理しましょう。
エージェントに「新しい手足」を増やすSDKの役割
Antigravity SDKは、人間でいうところの「新しい道具の使いかた」をAIに教えるための説明書のような存在です。例えば、あなたが「社内の勤怠管理システムからデータを取得する関数」を書いてSDKに登録したとします。
するとAIは、その関数を自分の「手足」の一部として認識します。ユーザーが「今月の残業時間を調べて」と頼んだとき、AIは標準機能では対応できないと判断し、自らあなたが作ったカスタム関数を呼び出して答えを出してくれるようになります。
AIが自ら判断して道具を使うSkillsの仕組み
スキルが動く背景には「Function Calling(ファンクションコーリング)」という技術があります。これは、AIが会話の流れを読み取り「あ、今はあの自作スキルを使うタイミングだな」と自分で判断して実行する仕組みです。
あなたが定義したスキルの「名前」や「使い道の説明」をAIが事前に読み込みます。例えば「Jiraのチケットを作成するスキル」を登録しておけば、会話の中でバグの話が出た際に、AIが気を利かせてそのスキルを起動し、チケット作成の準備を始めてくれます。
標準機能と自作スキルの決定的な違い
Antigravityには最初から「ブラウザ操作」や「ターミナル実行」といった標準スキルが備わっています。これらは汎用的な作業には向いていますが、外部のサービスや社内固有のルールには対応していません。
自作スキル(カスタムスキル)は、特定のプロジェクトや組織に特化した動きをさせたいときに真価を発揮します。標準スキルが「万能な十徳ナイフ」だとすれば、自作スキルは「特定のネジを回すための専用ドライバー」のようなものです。両者を組み合わせることで、AIの実行力は無限に広がります。
| 特徴 | 標準スキル | 自作スキル(Skills) |
| 提供元 | Google(プリセット) | ユーザー自身(SDKで作成) |
| 得意分野 | ファイル編集、ネット検索 | 独自API連携、社内DB操作 |
| 設定方法 | 最初から有効 | SDKによる実装と登録が必要 |
| 柔軟性 | 変更不可 | 自由にカスタマイズ可能 |
独自のSkillsを作成して開発を効率化させる理由
なぜ手間をかけてまでスキルを自作する必要があるのでしょうか。それは、AIを「ただの相談相手」から「実務を完璧にこなすメンバー」へと昇格させるためです。
スキルを導入することで、これまで人間が手動で行っていたルーチンワークや、複雑な連携作業をAIに丸投げできるようになります。具体的な3つのメリットを見ていきましょう。
社内独自のAPIやデータベースと連携できる
最も強力な使い方は、外部に公開されていない社内システムとの接続です。例えば、顧客管理システムや社内のナレッジベースを検索するスキルを作れば、AIがコードを書きながら「このロジックは社内規定のAに抵触していませんか?」といった確認をしてくれるようになります。
わざわざブラウザを開いて別システムで検索する手間がなくなるため、思考を遮られることなく開発に没頭できます。情報の取得だけでなく、データの書き込みもスキル化できるため、開発の自動化範囲が劇的に広がります。
複雑なコマンド操作をプロンプト一つで代行させる
ターミナルで叩く長いコマンドや、複数のステップが必要なデプロイ作業をスキルにまとめてしまいましょう。プロンプトで「いつものデプロイをお願い」と伝えるだけで、AIが背後で複雑なスクリプトをミスなく実行してくれます。
例えば、Dockerコンテナのビルドからステージング環境への反映までを一連のスキルとして定義しておけば、初心者のメンバーでもミスを恐れずに高度な操作ができるようになります。操作の「抽象化」ができるのも、自作スキルの大きな魅力です。
チーム固有の開発ルールをスキルとして定着させる
コードレビューの基準や、ドキュメントの生成ルールをスキルに組み込むことも可能です。例えば、作成したコードを社内のレビュー用Botに投げるスキルを作っておけば、実装からレビュー依頼までをAIが完結させます。
「このチームではこの手順が必要」という暗黙の了解をスキルという「形」にすることで、新しく入ったメンバーもAIを通じて正しい手順を自然に学べます。チーム全体の品質を底上げし、属人化を防ぐツールとしても役立ちます。
スキル開発を始めるための環境構築と準備
独自のスキルを作り始めるには、まずあなたの開発環境にSDKを取り込む必要があります。難しい設定はありませんが、AIが安全にスキルを実行できるようにいくつかの準備を済ませておきましょう。
基本的なインストール手順と、ファイルを置く場所のルールを解説します。
SDKをプロジェクトにインストールする
まずは、Antigravityで開発しているプロジェクトのディレクトリでSDKをインストールします。通常、npmやyarnを使って導入することになります。
ターミナルを開き、以下のコマンドを実行してください。これで、スキルを定義するためのクラスや型定義が使えるようになります。
npm install @google/antigravity-sdk
必要なディレクトリ構造を整える
スキルに関するファイルは、プロジェクトのルートにある .antigravity/ フォルダの中にまとめて置くのが基本ルールです。このフォルダがない場合は自分で作成しましょう。
具体的には、.antigravity/skills/ というディレクトリを作り、その中にスキルごとのTypeScriptファイルを作成していきます。フォルダ構成を整理しておくことで、後からスキルが増えたときも管理がしやすくなります。
認証情報やAPIキーを安全に管理する
スキルの中で外部サービスに接続する場合、APIキーやパスワードが必要になります。これらをソースコードに直接書くのは絶対にやめましょう。
.env ファイルなどの環境変数を使って管理し、AIにはその変数を経由してアクセスさせるようにします。また、これらの機密ファイルは .antigravityignore に追記して、AIが誤って外部に送信しないようにガードを固めておくのが鉄則です。
実際に独自のSkillsを定義する具体的な手順
準備ができたら、いよいよスキルの「中身」を書いていきましょう。スキル作成で最も重要なのは、AIに対して「このスキルは何ができるのか」を正確に伝えることです。
ここからは、TypeScriptを使った具体的なコードの書き方を紹介します。
スキルの「役割」をAIに伝えるメタデータの書き方
スキルの定義ファイルには、必ずそのスキルの「説明文(Description)」を含める必要があります。AIはこの説明文を読んで、今使うべき道具かどうかを判断します。
「Jiraを操作する」といった短い言葉ではなく、「Jiraに新しい課題を作成し、チケット番号を返す機能です。引数にはタイトルと詳細が必要です」といった具合に、具体的に書きましょう。この説明が丁寧であるほど、AIの誤作動を防ぐことができます。
実行される関数(Function)をTypeScriptで実装する
実際の動作を記述するメインの部分です。SDKが提供する基本クラスを継承して、execute メソッドの中に具体的な処理を書いていきます。
以下に、簡単なメッセージを表示するスキルの例を載せます。
import { Skill, SkillContext } from '@google/antigravity-sdk';
export class HelloWorldSkill extends Skill {
name = 'hello_world';
description = 'ユーザーに挨拶を返す簡単なスキルです';
async execute(args: { name: string }, context: SkillContext) {
return `こんにちは、${args.name}さん! Antigravityの世界へようこそ。`;
}
}
引数の型を定義してAIの誤動作を防ぐ
AIがスキルを呼び出す際、どのようなデータ(引数)を渡すべきかを「JSON Schema」の形式で定義します。これを正しく設定することで、AIがデタラメな値を関数に放り込むのを防げます。
例えば、文字列が必要な場所に数字を送ってこないように、型(string)や「必須項目かどうか」を厳密に決めておきます。この定義がしっかりしていると、AIは「あ、この情報をユーザーに聞き出してからスキルを叩かなきゃ」と賢く振る舞ってくれるようになります。
作成したSkillsをエージェントに紐付ける設定
スキルを書いただけでは、AIはまだそれを使えません。「ここに新しい道具を置いたよ」と教えてあげる登録作業が必要です。
エディタ側にスキルを認識させ、実際に会話の中で呼び出せるようにするまでの流れを解説します。
.antigravity 設定ファイルにスキルを登録する
プロジェクトの .antigravity/ フォルダ内にある antigravity.json (または設定パネル)に、作成したスキルのパスを追記します。これにより、Antigravity起動時に自作スキルが読み込まれるようになります。
複数のスキルがある場合は、ここにリスト形式で並べていきます。パスが間違っていると読み込みエラーになるため、ファイル名や階層に間違いがないか注意して確認してください。
エージェントマネージャーでスキルを有効化する方法
Antigravityのサイドバーにある「Agent Manager」を開くと、現在起動しているエージェントが持っているスキルの一覧が見れます。ここで、自作したスキルにチェックが入っているかを確認しましょう。
エージェントごとに、どのスキルを使わせるかを選択できるため、特定のタスク(デバッグ用、デプロイ用など)に特化したエージェントを作ることも可能です。不要なスキルをオフにしておくことで、AIの迷いを減らし、処理スピードを上げることができます。
プロンプトで「自作スキルを使え」と明示するコツ
AIに確実に自作スキルを使わせたいときは、指示の中にスキルの名前を盛り込むのがコツです。AIは自律的に判断しますが、最初の一押しをしてあげると動作が安定します。
「作成した hello_world スキルを使って、僕に挨拶して」といった具体的な指示から始めてみてください。一度成功すれば、次からは「挨拶をお願い」と言うだけで、AIは裏側でそのスキルを選んでくれるようになります。
独自Skillsを安全に動かすための注意点
自作スキルは非常に強力ですが、一歩間違えるとPC内のファイルを消去したり、外部に情報を漏らしたりするリスクもあります。AIに「危険な武器」を持たせているという意識を持つことが大切です。
安全性を確保するために、必ず実施しておくべき3つの防衛策を整理しました。
SecureModeを併用して勝手な実行を制限する
自作スキルを動かす際は、必ずAntigravityの「SecureMode」を有効にしておきましょう。これにより、AIがスキルを実行しようとした瞬間に「このスキルを実行してもいいですか?」という承認ダイアログが画面に出ます。
承認ステップを挟むことで、AIが引数を勘違いして意図しないデータをAPIに送りつけるといった事故を防げます。慣れるまではすべてのスキルで承認を必須にし、安全が確認できたものから徐々に制限を緩めていくのが賢明な運用です。
予期せぬエラーが起きたときの例外処理
スキル内部でエラーが起きたとき、AIがパニックにならないように「エラーメッセージ」を丁寧に返すコードを書きましょう。単にプログラムが落ちるのではなく、何が原因で失敗したのかをAIに伝えるのです。
例えば「APIの認証に失敗しました。APIキーが設定されているか確認してください」というメッセージを返せば、AIはそれを読んでユーザーに適切なアドバイスをしてくれます。AIとの対話も「共同作業」であることを意識して、親切なエラー処理を心がけましょう。
スキルに渡されるデータの機密性を守る
スキルが扱うデータに個人情報や機密が含まれる場合、それをそのままAIに「解釈」させて良いかを検討してください。AIに渡されたデータは、クラウド上のサーバーで処理される可能性があるためです。
必要であれば、機密部分をマスク(隠蔽)してからAIに渡すような処理をスキル内部に挟みましょう。AIには「データの構造」だけを伝え、実データはローカルのスキル内だけで処理して結果だけを返すような設計にすると、セキュリティ強度が格段に上がります。
| リスク | 対策 | 効果 |
| 勝手な実行 | SecureMode(承認)の利用 | 実行前に内容をチェックできる |
| AIの混乱 | 明確なエラーメッセージの返却 | AIが自分で修正案を考えられる |
| 情報の流出 | 環境変数の利用とデータマスク | 機密データを安全に保てる |
作成したスキルが動かないときの対処法
「スキルを登録したはずなのに、AIが使ってくれない」「実行するとエラーが出る」というのは、開発中によくある悩みです。
トラブルが起きたときに、どこを重点的にチェックすればいいのか、解決のためのポイントを3つに絞って解説します。
AIがスキルを認識していない場合のチェック項目
まずは、エージェントマネージャーのスキル一覧に、自作スキルの名前が出ているかを確認してください。出ていない場合は、設定ファイルのパス指定が間違っているか、ファイル自体の記述にエラー(シンタックスエラーなど)がある可能性が高いです。
また、スキルの「説明文」が短すぎたり、曖昧だったりすると、AIが「この状況で使うべき道具だ」と気づかないことがあります。説明文にキーワードを盛り込み、AIにその使い道を再学習させるつもりで書き直してみましょう。
引数の渡し方が間違っているときの修正方法
AIがスキルを呼ぼうとしているのにエラーになる場合は、渡されている「値」の形式が定義とズレていないか疑いましょう。JSON Schemaでの定義をもう一度見直し、AIが理解しやすいシンプルな構造に修正してみてください。
複雑すぎるオブジェクトを引数にすると、AIは値を埋めるのを諦めてしまうことがあります。なるべく平易な文字列や数字の組み合わせに整理し直すことで、呼び出しの成功率は劇的に向上します。
実行ログを見てエラーの箇所を特定する手順
Antigravityの下部パネルにある「Output」からエージェントのログを確認しましょう。スキルが呼び出された瞬間の詳細なエラー内容(スタックトレース)が出力されているはずです。
「ファイルが見つからない」「ネットワークエラー」といった具体的な原因がログから判明すれば、修正はすぐです。AIとのやり取りだけを見て悩むのではなく、開発者としてシステムログを直接確認することが、解決への一番の近道になります。
さらなる活用!複数のSkillsを組み合わせる方法
一つのスキルができるようになったら、次はそれらを連携させてみましょう。複数のスキルを組み合わせることで、一人の人間が何時間もかけて行っていた複雑なワークフローを、AIがプロンプト一つで完結できるようになります。
応用編として、スキルをより高度に使いこなすための3つのアイデアを紹介します。
複数のスキルを連携させて複雑なワークフローを作る
例えば「DBからエラーログを抜いてくるスキル」と「解決策をナレッジベースから探すスキル」を組み合わせてみましょう。AIはまずログを取得し、その内容を元に次のスキルを叩き、最終的な解決策まで提示してくれます。
これこそが、自律型エージェントの真骨頂です。人間がいちいち「次はこれをして」と指示しなくても、AIが目的達成のために最適なスキルの組み合わせを自分で考えて実行します。この流れ(パイプライン)ができると、開発スピードは次元が変わります。
既存の標準スキルと自作スキルを混ぜて使う
自作スキルを、Antigravityが最初から持っている「ブラウザ操作」などと組み合わせるのも賢い方法です。自作スキルでデータを取得し、その結果を元にAIにブラウザでドキュメントを公開させるといった連携が可能です。
すべての機能をゼロから作る必要はありません。便利な標準機能はそのまま使い、足りない「ラストワンマイル」の部分だけを自作スキルで補う。このハイブリッドな使い方が、最もコストパフォーマンスの良い拡張方法と言えるでしょう。
作成したスキルをチーム内で共有して再利用する
良いスキルができたら、プロジェクトの .antigravity/skills フォルダをGitなどでチームメンバーと共有しましょう。メンバー全員が同じスキルを使えるようになれば、チーム全体の開発フローが統一されます。
「誰がやっても同じ品質でデプロイできる」「誰でも一瞬で環境構築のログを確認できる」といった状態を作れるのが、チーム共有の最大のメリットです。作成したスキルを共通の資産として育てていくことで、あなたのチーム専用の最強AIエージェントが完成します。
まとめ:独自のスキルでAIエージェントを進化させよう
Antigravity SDKを使いこなすことは、エディタをただ使う側から「AIに仕事を教える側」へと回ることを意味します。
- SDKの役割:AIに新しい手足(実行機能)を与えるためのブリッジ。
- Skillsの作成:TypeScriptでロジックを書き、AIへの説明文を添えるだけでOK。
- 効率化のポイント:社内API連携や複雑なコマンド操作をスキル化してAIに任せる。
- 安全の確保:SecureModeによる承認を徹底し、安全に特殊技能を扱わせる。
最初は簡単な挨拶を返すスキルからで構いません。少しずつAIにできることを増やしていくプロセスは、自分だけの専用執事を育てているような楽しさがあります。
標準機能という枠を超えて、あなたの仕事に100%最適化された最強のエージェントを、その手で作り上げてみてください。一度スキルが完成すれば、これまでの苦労が嘘のように、開発の景色が明るく変わるはずです。

