Gemini CLIは「ターミナルでGeminiを使う」だけのツールではなくなりました。2026年に入ってから、Agent Skills、Extensions、Subagentsという3つのカスタマイズ軸が出そろい、開発者が自分のワークフローに合わせてCLIを拡張できる体制が整っています。

この記事でわかること:

  • Agent Skillsでオンデマンドの専門知識をCLIに持たせる方法
  • Extensionsで複数の機能をまとめて配布・共有する仕組み
  • Subagentsでタスクを専門エージェントに委任する使い方
  • 3つの機能の使い分けと組み合わせ方

Agent Skills — 必要なときだけ呼び出す専門知識

https://geminicli.com/docs/cli/skills/

Agent Skillsは、特定のタスクに特化した手順・ノウハウ・スクリプトを1つのフォルダにまとめ、Gemini CLIに「オンデマンドの専門家」として認識させる仕組みです。Agent Skills オープンスタンダードに準拠しており、Claude CodeやCursorなど他のAIエージェントツールとも互換性があります。

通常のコンテキストファイル(GEMINI.md)はセッション全体で常にロードされます。一方、Skillsはメタデータ(名前と説明文)だけがシステムプロンプトに注入され、Geminiが必要だと判断したときに初めて本体が読み込まれます。これにより、大量のスキルを登録してもコンテキストウィンドウを圧迫しません。

スキルの配置場所

スキルは3つの階層から自動検出されます。

  • ワークスペーススキル.gemini/skills/ または .agents/skills/ に配置。チームでリポジトリにコミットして共有する用途に向いています
  • ユーザースキル~/.gemini/skills/ または ~/.agents/skills/ に配置。個人用のスキルをすべてのプロジェクトで横断的に使えます
  • エクステンションスキル:後述するExtensionsにバンドルされたスキル

優先度はワークスペース > ユーザー > エクステンションの順です。同名のスキルが複数あった場合、上位の階層が優先されます。

スキルの作り方

スキルの実体は SKILL.md ファイルを含むディレクトリです。YAMLフロントマターに名前と説明を書き、本文に手順やルールを記述します。スクリプトやテンプレートを同じフォルダに同梱でき、スキル発動時にGeminiがそれらを実行できます。

.gemini/skills/api-auditor/
├── SKILL.md
└── scripts/
    └── audit.js

セッション中は /skills list コマンドでスキルの一覧と状態を確認でき、/skills disable <name> で一時的に無効化もできます。

Extensions — 機能をまとめて配布するパッケージ

https://geminicli.com/docs/extensions/

Extensionsは、MCPサーバー設定、コンテキストファイル、カスタムスラッシュコマンド、テーマ、フック、サブエージェント、スキルをひとまとめにしたパッケージ形式です。複数の機能をまとめて1コマンドでインストールできる「配布コンテナ」として設計されています。

インストールはGitHubリポジトリのURLかローカルパスを指定するだけです。

gemini extensions install https://github.com/gemini-cli-extensions/workspace

パッケージできるもの

  • MCPサーバー設定:外部ツールやAPIとGeminiを接続する
  • コンテキストファイル(GEMINI.md):ツールの使い方やガイドラインをモデルに提供する
  • カスタムスラッシュコマンド:複雑な操作を /deploy のような短いコマンドにまとめる
  • ツール制限(excludeTools):不要なビルトインツールを無効化して、安全性や集中度を高める
  • サブエージェントとスキル:前述のAgent SkillsやSubagentsも同梱できる

2026年のアップデートで、エクステンションに「設定項目」を定義する機能が追加されました。インストール時にユーザーへ入力を求め、機密情報はシステムキーチェーンに安全に保存されます。APIキーの設定が必要なエクステンションも、配布側がセットアップフローを組み込めるようになりました。

公開されたエクステンションはGemini CLI Extension Galleryで閲覧できます。

Subagents — 専門家チームにタスクを委任する

https://geminicli.com/docs/core/subagents/

Subagentsは、メインのGemini CLIセッションの中で動く専門エージェントです。2026年4月15日にGoogle Developers Blogで正式に発表されました(参考)。

各サブエージェントは独自のコンテキストウィンドウ、システムプロンプト、ツールセットを持ちます。メインエージェントがタスクをサブエージェントに委任すると、サブエージェントは自分のコンテキスト内で数十回のツール呼び出しを実行し、結果だけをメインに返します。メインのコンテキストが汚れず、セッションが軽量なまま保たれるのが最大の利点です。

ビルトインサブエージェント

Gemini CLIには4つのサブエージェントが組み込まれています。

  • generalist:メインエージェントと同じツールを持つ汎用エージェント。大量のファイル編集やコマンド実行など、ツール呼び出しが多いタスクに使います
  • cli_help:Gemini CLI自体の使い方に詳しいエキスパート。ドキュメントに直接アクセスできます
  • codebase_investigator:コードベースの調査、アーキテクチャのマッピング、バグの原因追跡に特化しています
  • browser_agent(実験的):Webブラウザを操作してフォーム入力やデータ抽出を行います。Chrome 144以降が必要で、デフォルトは無効です

カスタムサブエージェントの作り方

MarkdownファイルにYAMLフロントマターで名前・説明・使用ツールを定義し、本文にシステムプロンプトを書きます。.gemini/agents/ に配置するとプロジェクト共有、~/.gemini/agents/ に配置すると個人用になります。

---
name: frontend-specialist
description: フロントエンドの設計・レビューに特化したエージェント
tools:
  - read_file
  - grep_search
  - glob
  - web_fetch
model: inherit
---

呼び出しは @frontend-specialist レビューして のように @ 記法で明示的に指定するか、Geminiの自動判断に任せるかを選べます。

並列実行

複数のサブエージェントを同時に走らせる並列実行にも対応しています。5つのトピックを調査したり、複数コンポーネントを同時にリファクタリングしたりする場面で、処理時間を大幅に短縮できます。ただし、複数エージェントが同じファイルを同時に編集するとコンフリクトが発生するため、コード変更を伴うタスクの並列化には注意が必要です。

3つの機能の使い分け

Skills、Extensions、Subagentsは役割が異なります。

  • 「何を知っているか」を拡張する → Skills。セキュリティ監査の手順、PRレビューの社内ルール、特定フレームワークのベストプラクティスなど、知識と手順を追加します
  • 「何を配布するか」をまとめる → Extensions。スキル、MCPサーバー、コマンドをパッケージ化して、チームや外部に共有します
  • 「誰に任せるか」を分ける → Subagents。タスクを専門家に委任し、メインセッションのコンテキストを節約します

組み合わせも有効です。たとえば、フロントエンド専門のサブエージェントとAPIテスト用のスキルをエクステンションにまとめれば、チームメンバーが gemini extensions install の1コマンドで開発環境を揃えられます。