AntigravityのSkillsとは?
Skillsとは、エージェントの能力を拡張するためのオープンスタンダードの仕組みです。1つのSkillは基本的にフォルダとして管理され、その中に必須ファイルとしてSKILL.mdを配置します。 たとえば、コードレビュー専用のSkillであれば、以下のような構成になります。
.agents/skills/
└── code-review/
└── SKILL.md
具体的には、SKILL.mdには、以下のようなことを記述しておきます。
- どのようなタスクで使うSkillなのか
- どのような手順で処理するのか
- どのルールを守るのか
- どのような形式で結果を出力するのか
つまりSkillsは、ざっくり言えば「AIエージェント向けの業務マニュアル」です。人間の新人社員に、「コードレビューするときは、この手順書を見てください」と伝えるのとかなり近い考え方です。
毎回プロンプトを書く必要がなくなる
Skillsを使う最大のメリットは、毎回同じ指示を書かなくてよくなることです。たとえば、普段Antigravityに以下のような依頼をしているとします。
このコードをレビューしてください。
セキュリティ、可読性、パフォーマンスの観点から確認してください。
問題点には重要度をつけ、改善コードも提示してください。
毎回これを書く代わりに、「コードレビュー時のルール」をSkillとして登録しておきます。
すると、ユーザー側は「このコードをレビューして」程度の指示だけでも、エージェントが関連するSkillを検出し、その内容を読み込んで処理できます。Antigravityは会話開始時に利用可能なSkillの名前とdescriptionを確認し、タスクに関連すると判断したSkillについて、初めて詳細な指示を読み込みます。ここが単純なプロンプトテンプレートとの大きな違いです。
Skillsは「必要なときだけ」読み込まれる
Skillsを理解するうえで重要なのが、Progressive Disclosure(段階的開示)という考え方です。すべてのルールやドキュメントを常にAIへ渡してしまうと、コンテキストが大きくなります。たとえば、以下を毎回全て読み込ませるのはとても非効率です。
- Java開発ルール
- Python開発ルール
- コードレビュー手順
- Git運用ルール
- テスト方針
- デプロイ手順
- セキュリティチェック
Antigravityでは、まずSkillの名前やdescriptionだけを認識し、ユーザーの依頼に関連すると判断した場合に、そのSkillの詳しい内容を読み込みます。Skillsは必要になるまで読み込まれない専門知識のパッケージであり、これによってコンテキストの肥大化やコスト、レイテンシを抑えられます。
たとえば、「このPRをレビューして」と依頼した場合だけcode-review Skillを読み込み、「Cloud Runへデプロイして」と依頼した場合にはdeployment Skillを読み込む。こうした形で、AIエージェントへ必要な知識だけをその都度渡せます。
Skillの保存場所とSKILL.mdの構成
Skillの作り方は意外とシンプルです。Antigravityでは、主に2つの場所へSkillを配置できます。
|
Skillの種類
|
保存場所
|
用途
|
|
Workspace Skill
|
<workspace-root>/.agents/skills/
|
特定のプロジェクトだけで使用
|
|
Global Skill
|
~/.gemini/config/skills/
|
すべてのプロジェクトで使用
|
たとえば、特定プロジェクト固有のコーディング規約であればWorkspace Skillとして登録します。一方、「コードレビューでは必ずセキュリティを確認する」といった自分共通のルールであればGlobal Skillにしておくと便利です。
SKILL.mdの構成
SKILL.mdは、以下のようにYAMLのfrontmatterとMarkdown本文を組み合わせて作成します。
---
name: code-review
description: コードレビューを行う際に使用します。セキュリティ、可読性、保守性を確認します。
---
# Code Review
コードレビューでは以下を確認してください。
## チェック項目
1. セキュリティ上の問題
2. 可読性
3. パフォーマンス
4. エラーハンドリング
5. 保守性
## 出力形式
- 問題箇所
- 重要度
- 理由
- 改善方法
特に重要なのがdescriptionです。Antigravityはdescriptionを見て、「このSkillを今回のタスクで使うべきか」を判断します。そのため、
ではなく、
コードレビューを行う際に使用する。セキュリティ、可読性、保守性、パフォーマンスを確認する。
のように、「いつ使うのか」まで具体的に書いた方が良いです。実際、Skillsのベストプラクティスとして、Skillを特定用途に絞ることや、明確なdescriptionを書くことが推奨されています。
SKILL.md以外のファイルも持たせられる
Skillsは、単なるMarkdownの指示文だけではありません。必要に応じて、以下をSkillフォルダに含めることができます。
- スクリプト
- 参考資料
- テンプレート
- サンプルコード
Skillsは、Markdownで記述できるだけでなく、参照ファイル、code snippets、その他のassetsを含めることができます。具体的には以下のような構成です。
※ ここでいう参考ファイルは、作業時に参照するマニュアルや社内ルールなどの資料です。code snippetsは、特定の処理に使う短いプログラムの例を指します。assets(素材)は、テンプレートや画像など、成果物を作るために利用するファイルのことです。つまり、Skillsには作業の指示だけでなく、その作業に必要な資料や素材もまとめて含めることができます。
security-review/
├── SKILL.md
├── references/
│ └── security-policy.md
└── scripts/
└── scan.py
企業で使うなら、自社のセキュリティルールや設計ガイドラインをreferencesとして持たせておく使い方がおすすめです。
どんなSkillsを作ると便利なのか?
個人的には、Skillsは「よく使うプロンプトを保存する機能」と捉えるよりも、繰り返し発生する業務を標準化する機能として考えた方が活用しやすいと思います。
たとえば以下のようなSkillです。
|
Skill
|
内容
|
|
code-review
|
コードレビューのチェック基準を統一
|
|
security-review
|
脆弱性や権限設定を重点的に確認
|
|
deploy
|
自社のデプロイ手順を定義
|
|
testing
|
テストコード作成ルールを定義
|
|
documentation
|
READMEや設計書の書き方を統一
|
|
GAS-development
|
Google Apps Scriptの開発ルールを定義
|
|
architecture-review
|
システム設計レビューの観点を定義
|
特にチーム開発では効果が大きくなります。これまでは、人によってAIへの指示内容が違うため、「AさんがAIに作らせたコード」と「BさんがAIに作らせたコード」で品質や書き方がバラバラになることがありました。共通Skillをプロジェクトへ配置しておけば、AIエージェント側にもチームの開発標準を共有できるようになります。
Google公式のSkillsも公開されている
すべて自分で作る必要があるわけではありません。Googleは公式のAgent Skillsリポジトリを公開しています。執筆時点では、Google CloudやFirebase、Gemini関連など、Googleの各種製品・技術を対象としたSkillsが公開されています。
Google公式Skillsをインストールする方法
ご利用のPCにNode.jsがインストールされている場合は、以下コマンドを実行することで、AntigravityやAntigravity CLIなどへインストールすることができます。
npx skills install github.com/google/skills
Cloud RunやBigQueryを頻繁に扱うのであれば、まずGoogle公式Skillsから試してみるのが良いかもしれません。
Claude CodeのSkillsとは違う?
ここまで読んで、「Claude CodeにもSkillsってなかった?」と思った人もいるかもしれません。実はAntigravity、ClaudeのSkillsは、基本的な考え方がかなり似ています。
| 比較項目 |
Google Antigravity |
Claude Code |
| Skillの基本的な考え方 |
特定業務の手順、専門知識、ルールなどを再利用可能な形でエージェントに追加する |
特定業務の手順、専門知識、ルールなどを再利用可能な形でClaudeに追加する |
| 採用している仕様 |
オープンな「Agent Skills」標準 |
オープンな「Agent Skills」標準。Claude Codeは標準に独自機能も追加 |
| Skillの基本単位 |
1つのフォルダで管理され、その中にSKILL.mdが存在する |
1つのフォルダで管理され、その中にSKILL.mdが存在する |
| Skillの記述形式 |
YAML形式のメタデータとMarkdown形式の指示 |
YAML形式のメタデータとMarkdown形式の指示 |
| Skillを見つけるための情報 |
主にnameとdescriptionで判断 |
主にnameとdescriptionで判断 |
| Skillが読み込まれる流れ |
最初は名前と説明だけを認識し、必要になったときにSKILL.md全文を読み込む |
最初は名前と説明だけを認識し、必要になったときにSKILL.md全文を読み込む |
| Skillを使い始める方法 |
エージェントが必要性を判断するほか、スラッシュコマンドで手動実行できる |
Claudeが必要性を判断するほか、/skill-nameで手動実行できる |
| 補助ファイルをまとめられる? |
スクリプト、実装例、参考資料、テンプレートなどを同じSkillフォルダに置ける |
スクリプト、実装例、参考資料、テンプレートなどを同じSkillフォルダに置ける |
| 情報を段階的に読み込める? |
必要になるまで詳細な説明や関連ファイルを読み込まない |
必要になるまで詳細な説明や関連ファイルを読み込まない |
| プロジェクトごとに設定できる? |
.agents/skills/<skill-name>/SKILL.mdに配置 |
.claude/skills/<skill-name>/SKILL.mdに配置 |
| 個人共通のSkillを設定できる? |
~/.gemini/config/skills/に配置 |
~/.claude/skills/に配置 |
| Pluginにまとめられる? |
Skill、サブエージェント、Hooks、MCPなどをPluginとしてまとめられる |
Skill、サブエージェント、Hooks、MCPなどをPluginとしてまとめられる |
| Skillをそのまま移行できる? |
Agent Skills標準の範囲内なら他の対応製品でも再利用しやすい |
Agent Skills標準の範囲内なら他の対応製品でも再利用しやすい |
ClaudeのAgent Skillsも、SKILL.mdを含むディレクトリに指示、メタデータ、スクリプト、テンプレートなどを格納し、必要な場合に自動的に読み込む仕組みです。Claude Codeでは、個人用Skillを~/.claude/skills/、プロジェクト用Skillを.claude/skills/へ配置できます。 「AIに必要な専門知識を必要なときだけ読み込ませる」という思想そのものは、AIエージェントにおいては標準的な設計であることがわかります。
SkillsはAIに仕事のやり方を教える機能
Skillsを使ったからといって、Gemini自体のモデル性能が向上するわけではありません。重要なのは、「この会社ではどう仕事をするのか」をAIエージェントへ教えられることだと考えています。
今後AIエージェントが開発チームの一員として働くようになれば、AIにも同じように「会社の仕事のやり方」を教える必要があります。その役割を担う仕組みの一つがSkillsです。Antigravityを単なる「コードを書いてくれるAI」や「自分だけの業務を手伝ってくれるAI」として使うだけであれば、Skillsを使わなくても十分便利です。
しかし、Antigravityへ繰り返し作業を任せたり、チーム単位で本格的にAIエージェントを活用したりするのであれば、Skillsはかなり重要な機能になってきます。次回以降のAntigravity連載では、実際にSkillを作成し、日常の開発業務へどのように組み込めるのかも紹介していきたいと思います。