T-CREATOR

Gemini CLI コマンド&フラグ早見表:入出力・温度・安全設定の定番セット

Gemini CLI コマンド&フラグ早見表:入出力・温度・安全設定の定番セット

Google が提供する Gemini CLI は、ターミナルから直接 Gemini モデルにアクセスできる強力なツールです。コマンドラインフラグやスラッシュコマンドを使いこなせば、AI との対話がより効率的になりますが、初めて触る方にとっては「どのフラグを使えばいいのか」「安全に実行するにはどうすればいいのか」といった疑問が生まれるでしょう。

本記事では、Gemini CLI の コマンドライン引数スラッシュコマンド入出力オプション、そして 安全設定 に焦点を当て、実務で使える定番セットを早見表形式でご紹介します。

コマンドライン引数早見表

#フラグ短縮形説明使用例
1--model-m使用する Gemini モデルを指定gemini -m gemini-2.5-flash
2--prompt-p非対話モードでプロンプトを実行gemini -p "コードを説明して"
3--prompt-interactive-i初期プロンプト付きで対話モードを開始gemini -i "このプロジェクトについて"
4--all-files-aカレントディレクトリ内のすべてのファイルを再帰的に読み込みgemini -a
5--sandbox-sDocker サンドボックス環境でツールを実行gemini -s -p "スクリプトを実行"
6--sandbox-imageなしカスタム Docker イメージを使用gemini --sandbox-image custom:latest
7--yoloなしツール実行を自動承認gemini --yolo
8--checkpointingなしツール実行前にファイル状態を保存gemini --checkpointing
9--debug_mode-dデバッグログを出力gemini -d
10--include-directoriesなし複数のディレクトリをコンテキストに含めるgemini --include-directories ..​/​lib,..​/​docs
11--output-formatなし出力形式を指定(json / stream-json)gemini --output-format json

スラッシュコマンド早見表

対話モード中に使用できるスラッシュコマンドの一覧です。

#コマンド別名説明
1​/​help​/​?利用可能なすべてのコマンドを表示
2​/​quit​/​exitGemini CLI を終了
3​/​clearなしターミナルの表示をクリア
4​/​chatなし会話履歴を管理
5​/​memoryなしGEMINI.md から読み込まれたコンテキストを管理
6​/​toolsなし利用可能なツールの一覧を表示
7​/​mcpなし接続されている MCP サーバーを表示
8​/​restoreなし以前のプロジェクトファイル状態を復元
9​/​compressなし会話履歴を要約
10​/​statsなしセッションの使用統計を表示
11​/​themeなしCLI の外観を変更
12​/​authなし認証方法を変更
13​/​editorなし優先エディタを選択
14​/​bugなしバグレポート URL を生成
15​/​aboutなしバージョン情報を表示

特殊プレフィックス早見表

#プレフィックス説明使用例
1@<ファイル​/​ディレクトリ>ファイルやディレクトリの内容をコンテキストに含める@src​/​index.ts このファイルを解析して
2!<シェルコマンド>シェルコマンドを実行!ls -la
3! (単独)シェルモードのトグル!

入出力オプション早見表

#オプション説明使用例
1--output-format json構造化された JSON 形式で出力gemini -p "分析して" --output-format json
2--output-format stream-jsonリアルタイムで改行区切りの JSON イベントを出力gemini -p "説明して" --output-format stream-json
3パイプ入力標準入力からプロンプトを受け取るecho "質問内容" | gemini
4--include-directories指定したディレクトリをコンテキストに追加gemini --include-directories .​/​src,.​/​docs
5--all-files (-a)カレントディレクトリ内のすべてのファイルを読み込みgemini -a -p "プロジェクト全体を分析"

認証方法早見表

#認証方法環境変数説明
1OAuth ログインなしGoogle アカウントでログイン
2API キーGEMINI_API_KEY または GOOGLE_API_KEYGemini API キーを使用
3Vertex AI 認証なしGoogle Cloud の Vertex AI で認証

モデル選択早見表

#モデル名特徴使用例
1gemini-2.5-pro高性能モデル、100 万トークンのコンテキストウィンドウgemini -m gemini-2.5-pro
2gemini-2.5-flash高速で軽量なモデルgemini -m gemini-2.5-flash
3gemini-2.5-flash-latest最新の Flash モデルgemini -m gemini-2.5-flash-latest

安全設定(サンドボックスモード)早見表

#フラグ説明使用例
1--sandbox (-s)Docker コンテナ内でツールを安全に実行gemini -s -p "このスクリプトを実行"
2--sandbox-imageカスタム Docker イメージを指定gemini --sandbox-image myimage:tag
3--checkpointingファイル変更前にスナップショットを保存gemini --checkpointing
4​/​restore保存されたファイル状態を復元(対話モード)​/​restore

背景

Gemini CLI とは

Gemini CLI は、Google の生成 AI モデル「Gemini」をコマンドラインから利用できるオープンソースのツールです。ターミナル上で対話的に AI とやり取りできる REPL(Read-Eval-Print Loop)環境を提供し、コード生成、ファイル操作、シェルコマンド実行など、開発作業を大幅に効率化します。

主な特徴

Gemini CLI は以下のような特徴を持っています。

  • 無料で利用可能:個人の Google アカウントで毎分 60 リクエスト、1 日 1,000 リクエストまで無料
  • 高性能モデル:Gemini 2.5 Pro を使用し、100 万トークンのコンテキストウィンドウに対応
  • 豊富なツール:Google 検索グラウンディング、ファイル操作、シェルコマンド、Web フェッチなどを内蔵
  • 拡張性:MCP(Model Context Protocol)サーバーによるカスタムツール追加が可能
  • 柔軟な実行モード:対話モード、非対話モード、パイプ入力、サンドボックスモードなど多彩な実行方法

以下の図は、Gemini CLI の基本的な利用フローを示しています。

mermaidflowchart LR
  user["開発者"] -->|コマンド実行| cli["Gemini CLI"]
  cli -->|API リクエスト| gemini["Gemini モデル<br/>(2.5 Pro / Flash)"]
  gemini -->|生成結果| cli
  cli -->|ファイル操作<br/>シェル実行| tools["内蔵ツール"]
  tools -->|実行結果| cli
  cli -->|出力| user

図で理解できる要点:

  • 開発者がコマンドを実行すると、Gemini CLI が Gemini モデルに API リクエストを送信
  • モデルからの生成結果を受け取り、必要に応じて内蔵ツール(ファイル操作、シェル実行など)を実行
  • 最終的な出力が開発者に返される

活用シーン

Gemini CLI は、以下のような場面で活用できます。

  • コードレビュー:プロジェクト全体を解析し、改善点を提案
  • ドキュメント生成:コードから README やコメントを自動生成
  • デバッグ支援:エラーログを解析し、解決策を提示
  • スクリプト自動化:繰り返し作業をスクリプト化し、AI に実行を依頼
  • 学習支援:コードの仕組みや概念を質問形式で学習

課題

コマンドとフラグの選択肢が多い

Gemini CLI は多機能である反面、初めて使う際には「どのフラグを使えばいいのか」「どのコマンドが目的に合っているのか」が分かりにくいという課題があります。

以下の図は、Gemini CLI における主要な操作パターンを示しています。

mermaidflowchart TD
  start["Gemini CLI を使いたい"] --> mode{"実行モードは?"}
  mode -->|対話的に使う| interactive["対話モード<br/>`gemini`"]
  mode -->|1 回だけ実行| noninteractive["非対話モード<br/>`gemini -p`"]
  mode -->|パイプで渡す| pipe["パイプ入力<br/>`echo ... | gemini`"]

  interactive --> safety{"安全性重視?"}
  noninteractive --> safety
  pipe --> safety

  safety -->|はい| sandbox["サンドボックス<br/>`--sandbox`"]
  safety -->|いいえ| normal["通常実行"]

  sandbox --> output["出力形式選択"]
  normal --> output

  output -->|人間向け| text["テキスト出力"]
  output -->|プログラム向け| json["JSON 出力<br/>`--output-format json`"]

図で理解できる要点:

  • 実行モード(対話 / 非対話 / パイプ)を最初に選択
  • 安全性を重視する場合はサンドボックスモードを使用
  • 出力形式は人間向けかプログラム向けかで選択

入出力オプションの使い分けが不明瞭

Gemini CLI は、標準入力からのパイプ、ファイル指定、ディレクトリ指定など、さまざまな方法でコンテキストを渡せます。しかし、どの方法が効率的なのか、どのオプションを組み合わせるべきかが分かりづらいという問題があります。

安全設定の必要性が見えにくい

Gemini CLI は強力なツール実行機能を持つため、意図しないファイル削除やシステム変更が発生するリスクがあります。特に --yolo フラグは便利ですが、誤用すると危険です。安全に実行するための設定やベストプラクティスを理解する必要があります。

以下の図は、Gemini CLI における安全性レベルと対応するフラグを示しています。

mermaidflowchart LR
  level1["レベル 1<br/>最も安全"] -->|"--sandbox<br/>--checkpointing"| container["Docker コンテナ内で実行<br/>ファイル変更前に保存"]
  level2["レベル 2<br/>通常"] -->|デフォルト| confirm["ツール実行時に確認"]
  level3["レベル 3<br/>注意が必要"] -->|"--yolo"| auto["自動承認<br/>(確認なし)"]

  container --> restore["/restore で復元可能"]
  confirm --> manual["手動で承認"]
  auto --> risk["誤操作のリスク"]

図で理解できる要点:

  • レベル 1(最も安全):サンドボックス + チェックポイントで安全性を確保
  • レベル 2(通常):ツール実行時に確認を求める
  • レベル 3(注意が必要):自動承認モードは便利だが誤操作のリスクあり

温度設定やモデルパラメータの調整方法が不明

一般的な LLM API では temperaturetop_p などのパラメータを調整できますが、Gemini CLI におけるこれらの設定方法が公式ドキュメントでは明示的に示されていません。現時点では、コマンドライン引数として直接指定する方法は確認されておらず、設定ファイル(settings.json)を通じたカスタマイズが推奨されています。

解決策

コマンドライン引数の体系的な整理

Gemini CLI のコマンドライン引数を 目的別 に整理し、早見表として提供することで、必要なフラグを素早く見つけられるようにします。

以下は、コマンドライン引数の分類です。

実行モード関連

実行モードを制御するフラグは、対話モードと非対話モードを切り替える基本的なオプションです。

bash# 対話モード(デフォルト)
gemini
bash# 非対話モード
gemini -p "このコードを説明して"
bash# 初期プロンプト付き対話モード
gemini -i "このプロジェクトについて教えて"

モデル選択関連

使用する Gemini モデルを指定するフラグです。

bash# 高速な Flash モデルを使用
gemini -m gemini-2.5-flash
bash# 高性能な Pro モデルを使用
gemini -m gemini-2.5-pro

コンテキスト読み込み関連

AI に渡すコンテキスト(ファイルやディレクトリの内容)を指定するフラグです。

bash# カレントディレクトリのすべてのファイルを再帰的に読み込み
gemini -a
bash# 特定のディレクトリを指定
gemini --include-directories ../lib,../docs
bash# 対話モード中に特定ファイルを参照
@src/index.ts このファイルのバグを見つけて

安全設定関連

ツール実行の安全性を制御するフラグです。

bash# サンドボックスモード(Docker コンテナ内で実行)
gemini -s -p "このスクリプトを実行して"
bash# ファイル変更前にスナップショットを保存
gemini --checkpointing
bash# ツール実行を自動承認(注意が必要)
gemini --yolo

出力形式関連

AI の応答をどのような形式で受け取るかを指定するフラグです。

bash# JSON 形式で出力
gemini -p "分析結果を教えて" --output-format json
bash# ストリーミング JSON 形式で出力
gemini -p "説明して" --output-format stream-json

デバッグ関連

デバッグ情報を出力するフラグです。

bash# デバッグモードを有効化
gemini -d

スラッシュコマンドの活用

対話モード中に使用できるスラッシュコマンドを活用することで、セッション管理やツール操作がスムーズになります。

以下は、主要なスラッシュコマンドの使用例です。

ヘルプとバージョン確認

bash# 利用可能なコマンド一覧を表示
/help
bash# バージョン情報を表示
/about

セッション管理

bash# 会話履歴を圧縮
/compress
bash# ターミナルをクリア
/clear
bash# 使用統計を表示
/stats

ツールと MCP サーバー管理

bash# 利用可能なツールを表示
/tools
bash# 接続されている MCP サーバーを表示
/mcp

コンテキスト管理

bash# GEMINI.md のコンテキストを管理
/memory

ファイル復元

bash# 以前のファイル状態を復元
/restore

入出力オプションの使い分け

入出力オプションを適切に使い分けることで、効率的に AI とやり取りできます。

以下の表は、入出力方法の選択基準を示しています。

#用途推奨オプション使用例
1プロジェクト全体を解析--all-files (-a)gemini -a -p "プロジェクト全体を分析"
2特定ディレクトリのみ解析--include-directoriesgemini --include-directories .​/​src
3対話中に特定ファイル参照@<ファイルパス>@README.md このファイルを要約して
4パイプでプロンプトを渡す標準入力echo "質問" | gemini
5JSON 形式で結果を取得--output-format jsongemini -p "分析" --output-format json

安全設定のベストプラクティス

安全にツールを実行するためのベストプラクティスは以下の通りです。

レベル 1:最も安全(本番環境や重要なプロジェクト)

サンドボックスモードとチェックポイント機能を組み合わせて使用します。

bash# サンドボックス + チェックポイント
gemini -s --checkpointing -p "このスクリプトを実行して"

レベル 2:通常(開発環境)

デフォルトの確認モードを使用します。ツール実行時に毎回確認が求められます。

bash# デフォルト(確認あり)
gemini -p "ファイルを編集して"

レベル 3:高速実行(テストや繰り返し作業)

自動承認モードを使用しますが、誤操作のリスクがあるため注意が必要です。

bash# 自動承認モード(注意)
gemini --yolo -p "定型作業を実行"

温度設定とモデルパラメータのカスタマイズ

現時点では、コマンドライン引数として --temperature などのパラメータは公式にサポートされていません。より詳細なモデル制御が必要な場合は、設定ファイル(settings.json)を編集するか、Gemini API を直接使用することが推奨されます。

ただし、モデルの選択によって応答の速度と品質を調整できます。

bash# 高速で軽量な応答(Flash モデル)
gemini -m gemini-2.5-flash
bash# 高品質で詳細な応答(Pro モデル)
gemini -m gemini-2.5-pro

具体例

例 1:プロジェクト全体を解析してバグを探す

プロジェクト全体のコードを読み込み、潜在的なバグを探す場合は以下のようにします。

bash# すべてのファイルを読み込み、対話モードで質問
gemini -a

対話モード中に以下のように質問します。

bashこのプロジェクト全体を解析して、潜在的なバグやセキュリティ上の問題を教えてください

例 2:特定のファイルを修正し、安全に実行する

特定のファイルを修正する際に、サンドボックスとチェックポイントを使用して安全性を確保します。

bash# サンドボックス + チェックポイントで実行
gemini -s --checkpointing -p "@src/utils.ts この関数のパフォーマンスを改善して"

もし変更が意図しないものであれば、対話モード中に ​/​restore コマンドで復元できます。

例 3:JSON 形式で結果を取得し、スクリプトで処理する

AI の応答を JSON 形式で取得し、他のスクリプトで処理する場合は以下のようにします。

bash# JSON 形式で出力
gemini -p "このコードの問題点を教えて" --output-format json > result.json

出力された result.json を別のスクリプトで処理できます。

javascript// Node.js での処理例
const fs = require('fs');
const result = JSON.parse(
  fs.readFileSync('result.json', 'utf-8')
);
console.log(result);

例 4:パイプを使ってログファイルを解析する

ログファイルの内容を AI に渡して解析する場合は、パイプを使用します。

bash# ログファイルを Gemini に渡す
cat error.log | gemini

対話モード中に以下のように質問します。

bashこのエラーログを解析して、原因と解決策を教えてください

例 5:高速モデルで繰り返し質問する

繰り返し質問する場合は、高速な Flash モデルを使用すると効率的です。

bash# Flash モデルで対話モードを開始
gemini -m gemini-2.5-flash

対話モード中に複数の質問を連続して行えます。

例 6:スラッシュコマンドで統計情報を確認する

セッション中に使用したトークン数や API 呼び出し回数を確認する場合は、​/​stats コマンドを使用します。

bash# 対話モード中に統計情報を表示
/stats

まとめ

本記事では、Gemini CLI のコマンドとフラグを体系的に整理し、早見表形式でご紹介しました。

コマンドライン引数 では、実行モード、モデル選択、コンテキスト読み込み、安全設定、出力形式、デバッグの各カテゴリに分けて、目的に応じたフラグを素早く見つけられるようにしました。

スラッシュコマンド では、対話モード中に使用できる便利なコマンドを一覧化し、セッション管理やツール操作をスムーズに行えるようにしました。

入出力オプション では、プロジェクト全体の解析、特定ディレクトリの指定、パイプ入力、JSON 出力など、用途に応じた使い分け方を示しました。

安全設定 では、サンドボックスモード、チェックポイント、自動承認モードの 3 つのレベルに分け、それぞれの用途とリスクを明確にしました。

これらの情報を活用すれば、Gemini CLI を効率的かつ安全に使いこなせるでしょう。ぜひ実際のプロジェクトで試してみてください。

関連リンク