0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gemini CLI入門 — Plan Mode・A2Aエージェント・サンドボックスの全貌

0
Last updated at Posted at 2026-03-15

Gemini CLI — Plan Mode・A2A Agent・Sandbox

はじめに

Google が開発するオープンソースの AI コーディングエージェント Gemini CLI が、2026年3月12日に v0.33.1 安定版をリリースした。Plan Mode の大幅拡張、A2A(Agent2Agent)リモートエージェントの HTTP 認証対応、4種類のサンドボックス方式など、エンタープライズ利用を見据えた機能が一気に追加されている。

この記事では、Gemini CLI v0.33 の新機能を中心に、セットアップからプロジェクト設定、Plan Mode の活用法までを解説する。

この記事で学べること

  • Gemini CLI のインストールと基本セットアップ
  • Plan Mode によるリードオンリーな設計フェーズの活用法
  • A2A リモートエージェントとの連携方法
  • 4種類のサンドボックスによるセキュリティ確保
  • GEMINI.md によるプロジェクトコンテキスト管理

対象読者

  • AI コーディングエージェントに関心があるエンジニア
  • Claude Code や Codex など他のターミナル AI ツールと比較検討している方
  • チーム開発でのエージェント導入を検討している方

TL;DR

  • Gemini CLI は Apache 2.0 ライセンスのオープンソースで、Google アカウントがあれば 無料で1日1,000リクエスト まで利用可能
  • v0.33 で Plan Mode にリサーチサブエージェントとアノテーション機能が追加され、設計→実装の分離がより明確になった
  • A2A プロトコル対応により、HTTP 認証付きのリモートエージェントと連携可能
  • macOS Seatbelt・Docker・gVisor・LXC の4方式でサンドボックスを構成でき、セキュリティポリシーに応じた選択が可能
  • GEMINI.md ファイルによる階層的なコンテキスト管理は、Claude Code の CLAUDE.md と同様の設計思想

Gemini CLI アーキテクチャ概要

Gemini CLI の概要

Gemini CLI は、Gemini モデルの能力をターミナルから直接利用できる AI コーディングエージェントである。Google が 2025年6月にオープンソースとして公開し、Apache 2.0 ライセンスで GitHub 上に公開されている。

主な特徴

項目 内容
ライセンス Apache 2.0(オープンソース)
デフォルトモデル Auto ルーティング(Gemini 3 系を自動選択)
コンテキストウィンドウ 最大1Mトークン
無料枠 1日1,000リクエスト(Gemini API の無料枠)
インストール npm install -g @google/gemini-cli
設定ファイル GEMINI.md(プロジェクトコンテキスト)
サンドボックス macOS Seatbelt / Docker / gVisor / LXC
プロトコル対応 MCP・A2A・ACP

Anthropic の Claude Code、OpenAI の Codex と並ぶターミナル AI コーディングツールの1つだが、オープンソースかつ無料枠が大きい点が差別化ポイントとなっている。

セットアップ

インストール

Node.js 18以上が必要である。npm でグローバルインストールする。

npm install -g @google/gemini-cli

プレビュー版(v0.34.0-preview.1)を利用する場合は以下のコマンドを実行する。

npm install -g @google/gemini-cli@preview

認証

初回起動時に Google アカウントでの認証が求められる。以下のいずれかの方法で認証できる。

# 方法1: ブラウザ認証(デフォルト)
gemini

# 方法2: API キー指定
export GEMINI_API_KEY="your-api-key"
gemini

API キーは Google AI Studio で無料で取得できる。

基本操作

# 対話モードで起動
gemini

# ワンショットでプロンプトを実行
gemini -p "このプロジェクトの構造を説明して"

# サンドボックス有効で起動
gemini -s

Plan Mode ワークフロー

Plan Mode — 設計と実装の分離

v0.33 で大幅に強化された Plan Mode は、Gemini CLI の最も特徴的な機能である。コードを一切変更しない読み取り専用の環境で、設計・調査・計画策定を行い、承認後に実装フェーズへ移行する。

Plan Mode の起動方法

Plan Mode への切り替えは3通りある。

# 起動時に Plan Mode を指定
gemini --approval-mode=plan

# セッション中に切り替え
# 方法1: スラッシュコマンド
/plan

# 方法2: キーボードショートカット
# Shift+Tab で Default → Auto-Edit → Plan をサイクル

v0.34.0-preview.1 では Plan Mode がデフォルトで有効化されており、安定版にも今後反映される見込みである。

ワークフロー

Plan Mode のワークフローは4ステップで構成される。

ステップ1: 目標の記述

達成したいことを自然言語で記述する。

> このリポジトリにREST APIのレート制限機能を追加したい。
  既存のミドルウェア構造を活かしつつ、Redis ベースで実装してほしい。

ステップ2: リサーチと質問

Gemini CLI はリサーチサブエージェント(codebase_investigatorcli_help)を使ってコードベースを調査し、必要に応じて ask_user ツールで質問する。この段階でファイルの読み取りや Web 検索は許可されるが、ファイルの書き込みは制限される。

ステップ3: 計画策定

調査結果を基に、実装計画を Markdown ファイルとして .gemini/plans/ ディレクトリに出力する。

ステップ4: レビューと承認

計画を確認し、問題があればアノテーション機能でフィードバックを付けて修正を依頼する。Ctrl+X で外部エディタを開いて直接編集することも可能である。計画を承認すると、自動的に実装モードに切り替わる。

v0.33 の新機能: リサーチサブエージェント

v0.33 では、Plan Mode に リサーチサブエージェント が組み込まれた。codebase_investigator サブエージェントがコードベースを自律的に調査し、依存関係やアーキテクチャパターンを分析する。これにより、手動で /grep/read を繰り返す必要がなくなった。

v0.33 の新機能: アノテーション

計画に対して インラインコメント を付けてフィードバックできる。Gemini CLI はアノテーションを検出して計画を自動的に修正する。プルリクエストのレビューコメントに近い操作感で、チームでの計画策定にも適している。

モデルルーティング

Plan Mode ではデフォルトで モデルルーティング が有効になっている。計画策定時には高推論能力を持つ Pro モデルが使用され、承認後の実装フェーズでは高速な Flash モデルに自動切り替えされる。

{
  "general": {
    "plan": {
      "modelRouting": true,
      "directory": ".gemini/plans"
    }
  }
}

A2A リモートエージェント連携

v0.33 で追加された A2A(Agent2Agent)リモートエージェント 対応により、Gemini CLI から外部の AI エージェントを呼び出せるようになった。

A2A プロトコルとは

A2A(Agent2Agent)は Google が主導するエージェント間通信の標準プロトコルである。各エージェントが「Agent Card」と呼ばれるメタデータを公開し、他のエージェントがそのカードを発見して通信を開始する仕組みである。

v0.33 での強化ポイント

機能 説明
HTTP 認証サポート リモートエージェントへの認証付きアクセス
Agent Card 認証検出 認証が必要なエージェントカードの自動発見
認証状態の表示 UI 上で認証が必要な状態を明示

v0.34.0-preview.1 では、コールバックベースからイベント駆動型のツールスケジューラに移行し、A2A エージェントのタイムアウトが30分に延長されている。

MCP・ACP との統合

Gemini CLI は A2A に加えて、MCP(Model Context Protocol)ACP(Agent Client Protocol) にも対応している。v0.33 では以下の統合が追加された。

  • MCPOAuthProvider: MCP サーバーへの OAuth 認証
  • ACP スラッシュコマンド: /memory/init/extensions/restore のハンドリング
  • ACP モデル設定インターフェース: set models コマンドによるモデル切り替え

MCP サーバーの設定は settings.jsonmcpServers セクションで行う。

{
  "mcpServers": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "@example/mcp-server"],
      "env": {
        "API_KEY": "$MY_API_KEY"
      }
    }
  }
}

サンドボックス4方式の比較

サンドボックス — 4方式のセキュリティ分離

Gemini CLI は、AI エージェントが実行するシェルコマンドやファイル操作をホストシステムから分離するためのサンドボックス機能を提供する。用途とセキュリティ要件に応じて4つの方式から選択できる。

方式1: macOS Seatbelt(macOS 専用)

macOS 組み込みの sandbox-exec を利用する軽量な方式。追加のソフトウェアは不要で、即座に利用開始できる。

gemini -s
# または
export GEMINI_SANDBOX=sandbox-exec

6つのプロファイルが用意されている。

プロファイル 書き込み制限 ネットワーク
permissive-open(デフォルト) プロジェクト外への書き込みを制限 許可
permissive-proxied プロジェクト外への書き込みを制限 プロキシ経由
restrictive-open 厳格な制限 許可
restrictive-proxied 厳格な制限 プロキシ経由
strict-open 読み取り・書き込み制限 許可
strict-proxied 読み取り・書き込み制限 プロキシ経由

方式2: Docker / Podman(クロスプラットフォーム)

コンテナベースの完全なプロセス分離を提供する。Docker または Podman がインストールされている環境で利用可能である。

export GEMINI_SANDBOX=docker
gemini -s

カスタム Dockerfile を .gemini/sandbox.Dockerfile に配置することで、プロジェクト固有の依存関係を含むサンドボックスイメージを構築できる。

方式3: gVisor / runsc(Linux 専用)

gVisor はすべてのコンテナシステムコールをインターセプトし、Go で実装されたサンドボックスカーネルで処理する。4方式の中で最も強力な分離を提供する。

export GEMINI_SANDBOX=runsc
gemini -s

方式4: LXC / LXD(Linux 専用、実験的)

v0.34.0-preview.1 で追加された実験的な方式。systemd や snapd を含む完全な Linux 環境をコンテナとして実行する。事前にコンテナの作成と起動が必要である。

export GEMINI_SANDBOX=lxc
gemini -s

サンドボックスの設定優先順位

設定は以下の優先順位で適用される(上が最優先)。

  1. コマンドラインフラグ(-s / --sandbox
  2. 環境変数(GEMINI_SANDBOX
  3. settings.jsontools.sandbox 設定

GEMINI.md — プロジェクトコンテキスト管理

Gemini CLI は GEMINI.md ファイルによる階層的なコンテキスト管理をサポートしている。Claude Code の CLAUDE.md と同様の設計思想で、プロジェクト固有の指示をモデルに与える仕組みである。

ファイル階層

レベル パス 用途
グローバル ~/.gemini/GEMINI.md 全プロジェクト共通の指示
プロジェクト {project-root}/GEMINI.md プロジェクト固有の指示
サブディレクトリ {subdir}/GEMINI.md ディレクトリ固有の指示

より具体的なレベルのファイルが、一般的なレベルの内容を補完する形で読み込まれる。

分割管理

GEMINI.md が肥大化した場合、@file.md 構文でファイルを分割できる。

# プロジェクト設定

@.gemini/coding-standards.md
@.gemini/api-guidelines.md
@.gemini/testing-policy.md

現在のコンテキスト確認

読み込まれているコンテキストは /memory show コマンドで確認できる。

Claude Code との比較

ターミナル AI コーディングツールとして、Claude Code との違いを整理する。

項目 Gemini CLI Claude Code
ライセンス Apache 2.0(OSS) プロプライエタリ
無料枠 1日1,000リクエスト なし(有料プラン必須)
コンテキスト 最大1Mトークン 最大200K(Max/Team は1M対応)
Plan Mode v0.33 で大幅強化 Plan Mode 搭載
サブエージェント リサーチサブエージェント 最大7並列サブエージェント
サンドボックス 4方式(Seatbelt/Docker/gVisor/LXC) macOS サンドボックス
プロトコル MCP・A2A・ACP MCP
設定ファイル GEMINI.md CLAUDE.md
Web 検索 Google Search グラウンディング内蔵 WebSearch ツール
SWE-bench 63.2%(Gemini 2.5 Pro) 80.8%(Claude Opus 4.6)

コンテキストウィンドウの大きさと無料枠は Gemini CLI の優位点である。コーディング精度(SWE-bench Verified スコア)では Claude Code が上回る。公式ドキュメントやベンチマーク結果に基づくと、複雑なリファクタリングやデバッグには Claude Code、大規模コードベースの読解やリサーチには Gemini CLI が適している傾向がある。

v0.34.0-preview.1 の注目機能

安定版の次バージョンとなる v0.34.0-preview.1(2026年3月12日リリース)にも注目すべき機能が含まれている。

  • Plan Mode デフォルト有効化: 承認済み計画がチャット圧縮時にも保持される
  • トラッカーツール: タスクの CRUD 操作と可視化機能
  • ブラウザエージェント強化: 進捗表示、自動化オーバーレイ(青色の脈動ボーダー)
  • シェルオートコンプリート: 対話的なシェルコマンド補完
  • カスタムフッター: /footer コマンドによるフッター設定

プレビュー版は以下のコマンドでインストールできる。

npm install -g @google/gemini-cli@preview

まとめ

Gemini CLI v0.33 は、以下の3つの柱で大幅に進化した。

  • Plan Mode の拡張: リサーチサブエージェントとアノテーション機能により、設計フェーズの品質が向上した。モデルルーティングによる自動的な Pro/Flash 切り替えも効率的である
  • A2A リモートエージェント: HTTP 認証対応により、外部エージェントとのセキュアな連携が可能になった。MCP・ACP との統合も進んでいる
  • サンドボックスの多様化: macOS Seatbelt・Docker・gVisor・LXC の4方式から、環境とセキュリティ要件に応じた選択ができる

オープンソースかつ無料枠が充実している点で、AI コーディングエージェントの導入ハードルを下げる選択肢である。Claude Code や Codex と併用する「ハイブリッド運用」も現実的なアプローチとして広がっている。

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?