Gemini CLI 實戰教學:讓 AI 駐紮在你的終端機

1. 課程簡介 (Introduction)

Gemini CLI 是 Google 推出的開源命令行工具,它將強大的 Gemini AI 模型直接帶入開發者最熟悉的環境——終端機 (Terminal)

為什麼要學習 Gemini CLI?

不同於網頁版的 Chatbot,Gemini CLI 具備以下獨特優勢:
- 情境感知 (Context Awareness):可以直接讀取本地端的檔案 (@filename),不需要複製貼上程式碼。
- 直接行動 (Actionable):可以直接在你的電腦上執行 Shell 指令 (!command)、建立檔案與修改程式碼。
- 無縫整合 (Integration):適合整合進開發工作流,無需在瀏覽器與編輯器間頻繁切換。


2. 環境建置 (Installation)

在開始之前,我們需要先準備好執行環境。

2.1. 前置需求:Node.js

Gemini CLI 是基於 Node.js 開發的,因此你的電腦必須先安裝 Node.js 18.0.0 或更高版本。

2.2. 安裝 Gemini CLI

打開終端機 (Terminal / PowerShell / CMD),輸入以下指令進行全域安裝:

npm install -g @google/gemini-cli

2.3. 啟動與登入

安裝完成後,輸入以下指令啟動:

gemini

首次啟動時,系統會引導你進行設定:
1. 選擇主題 (Theme):依個人喜好選擇。
2. 身分驗證 (Auth Method)
* 推薦選擇 Login with Google
* 這會開啟瀏覽器視窗,請登入你的 Google 帳號授權。
* 註:此方式目前提供免費額度(每分鐘 60 次請求,每天 1000 次),適合個人學習使用。


3. 基礎操作指南 (Basic Operations)

啟動 gemini 後,你就可以用自然語言與它對話。以下是幾個最關鍵的操作符號:

3.1. 核心指令

符號/指令 功能說明 範例
@ 引用檔案。讓 AI 讀取本地檔案內容作為上下文。 解釋 @app.py 的程式邏輯
! 執行 Shell 指令。直接在終端機執行指令。 !ls -la (列出檔案), !python app.py
/tools 查看目前可用的工具清單 (如 GoogleSearch, WebFetch 等)。 /tools
/clear 清除當前對話歷史 (開啟新話題時使用)。 /clear
/help 查看幫助選單。 /help

4. 實戰應用範例 (Hands-on Examples)

以下我們將透過 4 個不同層次的範例,帶你實際體驗 Gemini CLI 的強大之處。

🔰 Level 1: 程式碼解釋與學習 (Code Explanation)

情境:你接手了一個陌生的 Python 專案,想快速了解某個檔案在做什麼。

  1. 準備一個範例檔案 (或使用你現有的檔案)。假設有一個 data_process.py
  2. 在 Gemini CLI 中輸入:
    text 請解釋 @data_process.py 的主要功能,並用條列式列出它的輸入與輸出。
  3. AI 行為:Gemini 會自動讀取該檔案內容,並根據程式碼邏輯生成清晰的解釋。這比複製貼上整段程式碼到網頁版快得多。

🔧 Level 2: 自動化重構與除錯 (Refactoring)

情境:你的程式碼缺乏錯誤處理 (Error Handling),希望 AI 幫你補強。

  1. 輸入提示:
    text @main.js 目前沒有錯誤處理機制。請幫我重構這段程式碼,加入 try-catch 區塊,並將錯誤記錄輸出到 console。請直接幫我修改檔案。
  2. AI 行為
    • Gemini 會分析程式碼。
    • 它會生成修改後的程式碼建議。
    • 關鍵點:它會詢問你是否要套用變更 (Apply changes?)。輸入 y 確認後,它會直接使用 replacewrite_file 工具修改你的本地檔案。

🌐 Level 3: 聯網搜尋與生活應用 (Web Search & Life Hacks)

除了寫程式,Gemini CLI 也是強大的生活助手。透過 GoogleSearch (搜尋) 與 WebFetch (讀取網頁內容),你可以不用離開終端機就完成許多生活任務。

💡 情境 A:旅遊規劃助手 (Travel Planning)

目標:不需要打開瀏覽器切換多個分頁,快速整理出台南一日遊的推薦景點與美食。

  1. 搜尋推薦
    text 請幫我 Google 搜尋 "2025 台南 私房景點 美食",並列出 5 個評分較高的地方。
  2. 深入讀取與整理
    • Gemini 會列出搜尋結果。假設其中有一個結果是某篇部落格文章 https://blog.example.com/tainan-trip
    • 你可以接著下指令讀取該文章細節:
      text 請讀取這個網頁:https://blog.example.com/tainan-trip ,並幫我把裡面提到的所有店家整理成一個表格,包含「店名」、「地址」和「必點招牌」。

💡 情境 B:購物決策與規格比較 (Shopping Comparison)

目標:想買新的降噪耳機,但懶得看一堆評測影片,希望能直接看重點比較。

  1. 搜尋熱門產品
    text 請搜尋 "Sony WH-1000XM5 vs Bose QC45 comparison review",並告訴我它們主要的優缺點差異。
  2. 製作比較表
    text 根據搜尋結果,請幫我製作一個 Markdown 表格,比較這兩款耳機的「價格」、「電池續航力」、「降噪能力」和「重量」。

💡 情境 C:高效率閱讀與學習 (Smart Reading)

目標:看到一篇很長的技術文章或新聞報導,想先知道是不是自己需要的內容。

  1. 獲取文章重點
    text 請讀取這篇關於 AI 發展的文章:https://www.example.com/ai-news ,並用繁體中文摘要出三個核心觀點,以及它對軟體工程師的影響。
  2. 翻譯與學習
    text 這篇文章中有提到 "RAG (Retrieval-Augmented Generation)" 技術,請詳細解釋這個術語的意思,並舉一個生活中的例子來說明。

🚀 Level 4: 快速建立專案原型 (Prototyping)

情境:你想做一個簡單的「待辦事項清單 (Todo List)」網頁,包含 HTML、CSS 和 JavaScript。

  1. 建立專案資料夾 (建議先在外部 Terminal 建立):
    bash mkdir todo_app && cd todo_app # 然後再輸入 gemini 啟動 gemini

  2. 下達指令生成原型
    ```text
    請幫我建立一個簡單的 Todo List 應用程式。
    需求如下:

    1. 一個 index.html,包含輸入框和新增按鈕。
    2. 一個 style.css,使用現代化的簡約風格,按鈕要圓角的。
    3. 一個 app.js,處理新增事項、點擊完成、刪除事項的邏輯。
      請直接為我建立這些檔案。
      ```
  3. AI 行為

    • Gemini 會規劃這三個檔案的內容。
    • 它會依序呼叫 write_file 工具來建立 index.html, style.css, app.js
    • 每建立一個檔案,它都會請求你的確認。
  4. 驗證成果

    • 檔案建立完成後,你可以直接打開 index.html 查看結果。
    • 如果不滿意(例如顏色不好看),可以直接說:「@style.css 的按鈕顏色太暗了,請改成活潑一點的藍色」,它會再次修改檔案。

5. 進階技巧:專案專屬設定

你可以透過在專案根目錄建立一個 GEMINI.md 檔案,來「客製化」AI 在這個專案中的行為。這就像是給 AI 的「員工手冊」。

範例 GEMINI.md 內容:

# 專案指引

1. **程式風格**:所有的變數命名請使用 snake_case (例如 user_name)。
2. **語言**:請一律使用繁體中文回答。
3. **測試**:每次修改程式碼後,請建議一個測試案例。

當 Gemini CLI 在這個目錄啟動時,它會自動讀取這個檔案,並遵循裡面的規則來協助你。


6. 學習總結

透過 Gemini CLI,我們改變了與電腦互動的方式:

建議練習

  1. 安裝並登入 Gemini CLI。
  2. 嘗試使用 GoogleSearch 查詢本週的熱門科技新聞。
  3. 找一篇你感興趣的英文技術文章,用 WebFetch 請 AI 幫你翻譯並摘要。
  4. 嘗試讓 AI 幫你寫一個簡單的 Python Hello World 腳本並存檔。

祝你在終端機的 AI 之旅愉快!