ブログ一覧に戻る

Gemini CLI入門:ターミナルで完結する次世代のAIコーディング

Gemini CLI入門:ターミナルで完結する次世代のAIコーディング

この記事では、Gemini CLIの基本的な使い方から、あなたの開発ワークフローを劇的に変える応用的な機能まで、具体的な使用例をふんだんに盛り込みながら、体系的な「完全活用ガイド」として徹底的に解説していきます。このガイドを使って早速やってみるべし。


Gemini CLIとは? - ターミナルが主役のAIエージェント

Gemini CLIは、一言で言えば「ターミナル上で対話的に利用できる、ローカル環境と連携するAIエージェント」です。

Webブラウザで利用する一般的なチャットAIとの決定的な違いは、あなたのローカルマシンにあるファイルやディレクトリ構造を直接認識し、文脈として理解できる点にあります。

  • プロジェクト全体を把握: あなたのコードベース全体を俯瞰し、「この関数はどこで使われている?」といった質問に答えます。
  • ファイルを直接編集: 「このファイルのAPIを書き換えて」という指示で、コードを自動で修正します。
  • コマンドを実行: 「テストを実行して結果を教えて」という言葉で、ターミナルコマンドを実行します。

これにより、Gemini CLIは単なる「質問応答ツール」ではなく、開発プロセスに深く入り込み、能動的に作業を補助する「エージェント(代理人)」として機能します。


クイックスタート - 3分で始める未来の開発体験

Gemini CLIを使い始めるのに、複雑な手順は一切不要です!めちゃめちゃ簡単。

前提条件

  • Node.js v18以上がインストールされていること。
    (ターミナルで node -v を実行してバージョンを確認できます)

インストールと起動

方法1: npx を使ってすぐに試す(推奨)

最も手軽な方法です。インストール作業なしで、常に最新版を利用できます。
ターミナルを開き、以下のコマンドを一度実行するだけです。

npx https://github.com/google-gemini/gemini-cli

方法2: グローバルにインストールする

gemini という短いコマンドでいつでも起動したい場合は、グローバルインストールが便利です。

npm install -g @google/gemini-cli

これで、どのディレクトリからでも gemini と打ち込むだけで起動できます。

初回設定

初めて起動すると、以下の2つの設定が求められます。

  1. テーマの選択:
    CLIの見た目のカラースキームを選びます。矢印キーで選択し、Enterキーで決定してください。いつでも /theme コマンドで変更可能です。
  2. Googleアカウント認証:
    ブラウザが自動で開き、Googleアカウントでのログインを求められます。指示に従って認証を完了させてください。

認証が完了すると、gemini > というプロンプトが表示されます。これであなた専用のAIエージェントとの対話を開始できます。


コア機能徹底解説 - Gemini CLIの真価を引き出す

Gemini CLIの強力な機能を、具体的なコマンドと共に詳しく見ていきましょう。

@ コマンド: ローカルファイルとの対話

Gemini CLIの心臓部とも言える機能です。プロンプトに @ を付けてファイルやディレクトリのパスを指定すると、その内容をAIが読み込み、コンテキストとして完全に理解します。

具体例

  • コードレビューとリファクタリング
    gemini > @src/components/UserProfile.tsx このコンポーネントの可読性が低いので、カスタムフックを使ってロジックを分離する形でリファクタリングして。
  • テストコードの自動生成
    gemini > @src/utils/stringUtils.ts このファイルに含まれる全ての関数のテストケースを、Jestを使って網羅的に記述して。
  • ドキュメントからの情報抽出
    gemini > @docs/API_SPEC.md このAPI仕様書を読んで、ユーザー情報を取得するエンドポイントのURLと必須パラメータを教えて。

.gitignore を自動で尊重するため、node_modules のような不要なファイルがコンテキストに含まれる心配はありません。

! コマンド: ターミナル操作の自動化

プロンプトに ! を付けると、シェルコマンドを直接実行できます。AIに「やりたいこと」を伝えるだけで、適切なコマンドを生成・実行してくれます。

具体例

  • 複雑なコマンドの生成
    gemini > !このディレクトリ内にある全ての`.jpeg`画像を、幅を800pxにリサイズして、ファイル名の末尾に `_resized` を付けて保存するコマンドを教えて。
  • Git操作の補助
    gemini > !1週間前の状態にブランチを切り替えたいんだけど、どうすればいい?

    AIは git log でコミットハッシュを探し、git checkout するコマンドを提案してくれます。

  • シェルモードへの切り替え
    ! を単体で入力すると、シェルモードに切り替わります。以降の入力はすべてシェルコマンドとして扱われ、exit でGeminiの対話モードに戻れます。連続してコマンドを実行したい場合に便利です。

GEMINI.md: プロジェクト固有のAIチューニング

プロジェクトのルートディレクトリに GEMINI.md というファイルを作成しておくと、Gemini CLIはその内容を「カスタム指示」として常に記憶します。これにより、AIの振る舞いをプロジェクトに合わせて最適化できます。

# GEMINI.md - inovie-website プロジェクトの指示書

## このプロジェクトについて
このプロジェクトは、Next.js(App Router), TypeScript, Tailwind CSS, microCMSで構築された公式サイトです。

## コーディング規約
- コンポーネントは `src/components` ディレクトリに配置し、ファイル名はPascalCaseとします。
- スタイリングにはCSS Modulesではなく、Tailwind CSSのユーティリティクラスを直接使用してください。
- API通信のロジックは `src/lib/microcms.ts` に集約します。

## AIへの指示
- コードを生成する際は、必ずTypeScriptの型定義を厳密に記述してください。
- ユーザーにフレンドリーで、少しユーモアのある口調で回答してください。

このファイルを設置するだけで、AIはこれらのルールを遵守したコードや回答を生成するようになります。まさに、プロジェクト専属のAIアシスタントを育てる感覚です。

/ コマンド: 対話を快適にするユーティリティ

対話モード中に / から始まるコマンドを使うことで、様々な補助機能を利用できます。

  • /help: 利用可能な全コマンドの一覧を表示します。
  • /chat save <タグ名>: 現在の会話履歴に名前を付けて保存します。
  • /chat resume <タグ名>: 保存した会話を呼び出して再開します。
  • /clear: 画面をクリアします。
  • /stats: 現在のセッションでのトークン使用量などを確認できます。
  • /compress: 長くなった会話履歴をAIに要約させ、トークンを節約します。

実践!ユースケース別活用ガイド

理論は十分です。ここからは、実際の開発シーンでGemini CLIがどのように役立つか、具体的なシナリオで見ていきましょう!

シナリオ1: 巨大なOSSのコードベースを初めて触る

あなたは新しいプロジェクトにアサインされ、巨大なオープンソースリポジトリの改修を担当することになりました。どこから手をつけていいか分かりません。

# リポジトリをクローンしてGeminiを起動
git clone https://github.com/some/huge-repository.git
cd huge-repository
gemini

# まずは全体像を掴む
gemini > このプロジェクトのアーキテクチャについて、主要なディレクトリ構造とそれぞれの役割を説明して。

# 認証周りの実装を深掘りする
gemini > ユーザー認証はどのファイルで処理されている?OAuth 2.0を使っているなら、どのライブラリに依存しているか教えて。

# 特定の機能を改修するための足がかりを探す
gemini > @src/features/ ここにある機能の中で、'Real-time Collaboration' に関連するファイルはどれ?その主要な関数をリストアップして。

このように、AIと対話しながら進めることで、一人でドキュメントを読み解くよりも遥かに速く、効率的にコードベースの全体像を理解できます。

シナリオ2: 画像の一括変換とAPIの書き換え

「サイト内の全ブログ記事のサムネイル画像をWebP形式に変換し、古い画像APIのエンドポイントを新しいものに一括で書き換えよ」というタフな依頼が来ました。

# まずは画像変換
gemini > !/assets/images/blog/ ディレクトリ内の全ての.pngと.jpgファイルを、品質80のWebP形式に変換して、元のファイルは削除するコマンドを生成して実行して。

# 次にAPIのエンドポイントを検索
gemini > @src `https://api.example.com/v1/images` という文字列が使われているファイルを全てリストアップして。

# AIがリストアップしたファイルを確認し、一括置換を指示
gemini > 今見つかった全てのファイルで、`https://api.example.com/v1/images` を `https://cdn.new-api.com/images` に書き換えて。変更差分を提示してほしい。

手作業なら数時間はかかる面倒な作業も、Gemini CLIなら数分で、しかも安全に完了させることができます。


おわりに

この記事の草稿は、何を隠そう、紹介したGemini CLIの機能をフル活用して作成しました。構成案をAIに相談し、参考情報のURLを渡して要約させ、コマンドの具体例を生成させる。まさに、AIとペアプログラミングならぬ「ペアライティング」をする感覚でした。
(最初はCLI?そんなのないよ。といわれましたがGoogle公式の記事とGithubを読み込ませたら訂正してきました笑)

Gemini CLIは、単にコードを書く時間を短縮するツールではありません。Google検索とのシームレスな連携、GEMINI.mdによるプロジェクトごとのチューニング、そして何より、ターミナルから離れずに思考を続けられるその体験は、私たちの開発プロセスそのものの質を高めてくれます

まだGemini CLIを試していない方は、ぜひこのガイドを片手に始めてみてください!!

この記事はほぼGemini CLI に書いてみてもらいましたので間違いがあれば教えください。