Gemini CLI 使用手冊
首頁
命令列介面
核心概念
工具執行
開源貢獻
報名課程
首頁
命令列介面
核心概念
工具執行
開源貢獻
報名課程
  • 工具
  • 檔案系統工具
  • 多檔案讀取工具
  • Shell 工具
  • 網站擷取工具
  • 網路搜尋工具
  • 記憶工具
  • MCP 伺服器

工具

Gemini CLI 包含內建工具,Gemini 模型可使用這些工具與您的本機環境互動、存取資訊並執行動作。這些工具擴充了 CLI 的功能,使其不僅能產生文字,還能協助處理各種任務。

Gemini CLI 工具總覽

在 Gemini CLI 的情境中,工具是 Gemini 模型可以要求執行的特定函式或模組。例如,如果您要求 Gemini「摘要 my_document.txt 的內容」,模型可能會判斷需要讀取該檔案,並要求執行 read_file 工具。

核心元件 (packages/core) 會管理這些工具、向 Gemini 模型呈現其定義 (結構描述)、在收到要求時執行它們,並將結果傳回模型以進一步處理成使用者可見的回應。

這些工具提供以下功能:

  • 存取本機資訊: 工具可讓 Gemini 存取您的本機檔案系統、讀取檔案內容、列出目錄等。
  • 執行指令: 透過 run_shell_command 等工具,Gemini 可以執行 shell 指令 (具備適當的安全措施和使用者確認)。
  • 與網路互動: 工具可以從網址擷取內容。
  • 採取行動: 工具可以修改檔案、寫入新檔案,或在您的系統上執行其他動作 (同樣地,通常會有安全防護措施)。
  • 讓回應有所依據: 透過使用工具擷取即時或特定的本機資料,Gemini 的回應可以更準確、更相關,並以您的實際情境為基礎。

如何使用 Gemini CLI 工具

若要使用 Gemini CLI 工具,請向 Gemini CLI 提供提示。流程如下:

  1. 您向 Gemini CLI 提供提示。
  2. CLI 會將提示傳送至核心。
  3. 核心會連同您的提示和對話記錄,將可用工具及其說明/結構描述的清單傳送至 Gemini API。
  4. Gemini 模型會分析您的要求。如果判斷需要使用工具,其回應將會包含執行特定工具並附帶特定參數的要求。
  5. 核心會收到此工具要求、進行驗證,並 (通常在敏感操作前會要求使用者確認) 執行該工具。
  6. 工具的輸出會傳回給 Gemini 模型。
  7. Gemini 模型會使用工具的輸出來擬定最終答案,然後再透過核心傳回 CLI 並顯示給您。

您通常會在 CLI 中看到訊息,指出正在呼叫哪個工具,以及該工具成功或失敗。

安全性與確認

許多工具,特別是那些可以修改您的檔案系統或執行指令 (write_file、edit、run_shell_command) 的工具,在設計時都已考量到安全性。Gemini CLI 通常會:

  • 要求確認: 在執行潛在的敏感操作之前提示您,並顯示即將採取的動作。
  • 利用沙盒: 所有工具都受到沙盒強制執行的限制 (請參閱 Gemini CLI 中的沙盒)。這表示在沙盒中操作時,您希望使用的任何工具 (包括 MCP 伺服器) 都必須在沙盒環境中可用。例如,若要透過 npx 執行 MCP 伺服器,npx 執行檔必須安裝在沙盒的 Docker 映像檔中,或在 sandbox-exec 環境中可用。

在允許工具繼續執行之前,請務必仔細檢閱確認提示。

進一步了解 Gemini CLI 的工具

Gemini CLI 的內建工具大致可分為以下幾類:

  • 檔案系統工具: 用於與檔案和目錄互動 (讀取、寫入、列出、搜尋等)。
  • Shell 工具 (run_shell_command): 用於執行 shell 指令。
  • 網頁擷取工具 (web_fetch): 用於從網址擷取內容。
  • 網頁搜尋工具 (web_search): 用於搜尋網路。
  • 多檔案讀取工具 (read_many_files): 一種專門用於從多個檔案或目錄讀取內容的工具,通常由 @ 指令使用。
  • 記憶工具 (save_memory): 用於跨工作階段儲存和擷取資訊。

此外,這些工具還包含:

  • MCP 伺服器:MCP 伺服器作為 Gemini 模型與您的本機環境或其他服務 (如 API) 之間的橋樑。
  • 沙盒:沙盒會將模型及其變更與您的環境隔離,以降低潛在風險。
Last Updated: 7/6/25, 2:17 PM
Contributors: doggy8088
Next
檔案系統工具
本網站由 Will 保哥 翻譯、建置與維護,歡迎追蹤我的
歡迎追蹤我的 Will 保哥的技術交流中心 粉絲團