⌨️
Gemini CLI コマンドリファレンス
2025/6/25に公開された Gemini CLIのコマンド集です。
コマンドリファレンス
基本コマンド
対話型セッションの開始
gemini
- 現在のディレクトリでGemini CLIを起動
- 対話型AIセッションが開始される
- プロンプト(
>
)が表示され、自然言語でコマンドやコマンドを入力可能
ヘルプ表示
gemini --help
- 利用可能なオプションとコマンドを表示
コマンド体系
Gemini CLIは3つのプレフィックスを使用した組み込みコマンドをサポートしています:
-
スラッシュコマンド (
/
): CLIのメタレベル制御 -
アットコマンド (
@
): ファイル・ディレクトリ内容の取り込み -
シェルコマンド (
!
): システムシェルとの直接対話
/
)
スラッシュコマンド(セッション管理
/help
または /?
- 説明: Gemini CLIのヘルプ情報を表示
- 用途: 利用可能なコマンドと使用方法の確認
/quit
または /exit
- 説明: Gemini CLIを終了
/clear
- 説明: ターミナル画面をクリア(セッション履歴とスクロールバック)
- キーボードショートカット: Ctrl+L
/stats
- 説明: 現在のセッションの詳細統計を表示
- 内容: トークン使用量、キャッシュされたトークンの節約量、セッション時間
- 注意: キャッシュトークン情報はAPIキー認証時のみ表示(OAuth認証時は非表示)
会話管理
/chat
- 説明: 会話履歴の保存・復元により、分岐した会話状態の管理
-
サブコマンド:
-
save <tag>
: 現在の会話履歴を指定したタグで保存 -
resume <tag>
: 以前保存した会話から復元 -
list
: 復元可能なタグ一覧を表示
-
/compress
- 説明: チャット全体のコンテキストを要約に置き換え
- 用途: 将来のタスクで使用するトークン数を節約しつつ、高レベルな要約を保持
/memory
-
説明: AIの指示コンテキスト(
GEMINI.md
ファイルから読み込まれる階層メモリ)を管理 -
サブコマンド:
-
add <text>
: 指定したテキストをAIのメモリに追加 -
show
: 全GEMINI.md
ファイルから読み込まれた階層メモリの内容を表示 -
refresh
: 全GEMINI.md
ファイルから階層メモリを再読み込み
-
ツール・MCP管理
/mcp
- 説明: 設定されたMCP(Model Context Protocol)サーバーの情報表示
- 内容: 接続状況、サーバー詳細、利用可能なツール
-
サブコマンド:
-
desc
/descriptions
: MCPサーバーとツールの詳細説明を表示 -
nodesc
/nodescriptions
: ツール名のみ表示(説明を非表示) -
schema
: ツールの設定パラメータのフルJSON スキーマを表示
-
- キーボードショートカット: Ctrl+Tでツール説明の表示・非表示を切り替え
/tools
- 説明: 現在利用可能なツール一覧を表示
-
サブコマンド:
-
desc
/descriptions
: 各ツールの詳細説明を表示 -
nodesc
/nodescriptions
: ツール名のみ表示
-
システム管理
/restore [tool_call_id]
- 説明: ツール実行直前の状態にプロジェクトファイルを復元
- 用途: ツールによるファイル編集の取り消し
-
使用条件:
--checkpointing
オプション付きで起動時のみ利用可能 - 引数なし実行: 復元可能なチェックポイント一覧を表示
/bug
- 説明: Gemini CLIに関するイシューを報告
-
動作:
/bug
の後に入力した文字列がバグレポートのタイトルになる -
カスタマイズ:
.gemini/settings.json
のbugCommand
設定で動作変更可能
UI・設定
/theme
- 説明: Gemini CLIの表示テーマを変更するダイアログを開く
/auth
- 説明: 認証方法を変更するダイアログを開く
/editor
- 説明: サポートされているエディタ選択のダイアログを開く
/about
- 説明: バージョン情報を表示
- 用途: イシュー報告時にこの情報を共有
@
)
アットコマンド(ファイル・ディレクトリ内容の取り込み
@<ファイル・ディレクトリのパス>
- 説明: 指定したファイルまたはディレクトリの内容をプロンプトに挿入
- 用途: 特定のコード、テキスト、ファイル群について質問する際に使用
使用例
@path/to/your/file.txt このテキストを説明してください
@src/my_project/ このディレクトリのコードを要約してください
このファイルについて教えてください @README.md
詳細仕様
- 単一ファイル: 指定ファイルの内容を読み込み
- ディレクトリ: ディレクトリ内とサブディレクトリ内のファイル内容を読み込み
-
パスの空白: バックスラッシュでエスケープ(例:
@My\ Documents/file.txt
) -
内部動作:
read_many_files
ツールを使用してコンテンツを取得 -
Git対応フィルタリング: デフォルトでgit無視ファイル(
node_modules/
、dist/
、.env
、.git/
など)を除外 -
フィルタ設定:
fileFiltering
設定で動作変更可能 - ファイル形式: テキストベースファイル用。バイナリファイルや大きなファイルはスキップまたは切り詰められる場合がある
@
(単独のアット記号)
-
説明: 単独の
@
記号の場合、クエリはそのまま Geminiモデルに渡される -
用途: プロンプト内で
@
記号自体について言及する場合
エラーハンドリング
- パスが見つからない: エラーメッセージ表示、クエリは送信されないかファイル内容なしで送信
-
ツールエラー: 権限問題などの
read_many_files
ツールエラーを報告
!
)
シェルモード・パススルーコマンド(システムシェルとの直接対話
!<シェルコマンド>
-
説明: 指定した
<シェルコマンド>
をシステムのデフォルトシェルで実行 - 動作: コマンドの出力やエラーをターミナルに表示
使用例
!ls -la # ls -laを実行してGemini CLIに戻る
!git status # git statusを実行してGemini CLIに戻る
!
(シェルモード切り替え)
-
説明: 単独の
!
でシェルモードを切り替え -
シェルモード入場:
- 異なる色付けと「シェルモードインジケータ」を表示
- 入力するテキストは直接シェルコマンドとして解釈
-
シェルモード終了:
- UIが標準表示に戻り、通常のGemini CLI動作を再開
注意事項
- 権限: シェルモードで実行するコマンドは、ターミナルで直接実行するのと同じ権限と影響を持つ
- セキュリティ: コマンド実行時は十分注意すること
実用的な使用例
プロジェクト分析
# プロジェクト構造を分析
@src/ このプロジェクトのアーキテクチャを説明してください
# 特定ファイルのコードレビュー
@components/Header.jsx このコンポーネントを改善してください
Git操作と連携
# Git状況確認
!git status
# 変更内容を分析
!git diff | clipboardに変更内容をコピーし、改善提案をしてください
会話管理の活用
# 重要な状態を保存
コードリファクタリングの方針を決定しました
/chat save refactoring-decision
# 後で復元
/chat resume refactoring-decision
まとめ
多様なコマンドが用意されているため、高度な使い方が可能になっています。開発者の生産性を大きく向上させることが期待されます。
Discussion