本文說明 Gemini Code Assist 的代理程式模式。
您可以在 VS Code 整合式開發環境 (IDE) 中使用代理程式模式。如要開始使用代理程式模式,請參閱將代理程式即時通訊當成結對程式設計師。
VS Code 中的代理程式模式採用 Gemini CLI。
使用代理程式模式,你可以執行下列操作:
- 詢問程式碼相關問題。
- 運用背景資訊和內建工具,改善生成的內容。
- 設定 MCP 伺服器,擴充代理程式的功能。
- 取得多步驟複雜工作的解決方案。
- 根據設計文件、問題和
TODO
註解生成程式碼。 - 在執行期間,您可以透過註解、編輯及核准計畫和工具使用情形,控制代理程式行為。
代理程式模式的運作方式
在代理程式模式中,系統會將提示連同可用工具清單傳送至 Gemini API。Gemini API 會處理提示並傳回回覆。回覆內容可能是直接答案,也可能是要求使用可用工具。
當代理程式要求使用工具時,會準備使用工具,並檢查是否允許在有或沒有明確權限的情況下使用工具:
- 如果工具要求會修改檔案系統,或對任何資源執行變動作業,Gemini 會要求你允許該作業,除非你已將 Gemini 設定為一律允許該工具或工具。
- 唯讀工具要求可能不會在完成工作前要求權限。
系統要求允許使用工具時,您可以選擇允許或拒絕這項操作。服務專員也可能會提供選項,讓您一律允許工具或伺服器,或允許類似作業。詳情請參閱「一律允許代理程式動作」。
獲得或自行授予工具使用權後,代理程式會使用工具完成必要動作,並將動作結果傳回 Gemini API。Gemini 會處理工具動作的結果,並生成其他回覆。這類行動和評估的循環會持續進行,直到工作完成為止。
如果是複雜工作,Gemini 可能會顯示高階計畫,請先核准。開始流程前,你可以在對話中微調計畫並提出問題。如果對企劃書感到滿意,可以核准。核准計畫後,代理程式就會開始處理第一項工作,並在執行計畫時視需要要求您提供說明或權限。
代理模式脈絡
背景資訊可讓代理程式根據特定提示生成更優質的回覆。你可以從 IDE 中的檔案、本機系統資料夾中的檔案、工具回應和提示詳細資料取得情境資訊。
視 IDE 和設定而定,代理程式可用的情境可能有所不同。
以下分頁說明如何為不同 IDE 收集內容。
VS Code
在代理程式模式下,Gemini Code Assist 通常可透過下列方式取得內容:
- IDE 工作區中的資訊。
- 來自 grep、終端機、檔案讀取或檔案寫入等內建工具的工具回應。
- Google 搜尋回覆。
- 提示或工具中提供的特定網址內容。
- 以 Markdown 建立的脈絡檔案。
服務專員記憶體
VS Code 中的 Gemini Code Assist 代理程式模式會運用 Gemini CLI 記憶體探索服務,尋找並載入可為代理程式提供背景資訊的 GEMINI.md
檔案。記憶體探索服務會從目前的工作目錄開始,依階層搜尋這些檔案,然後向上移動至專案根目錄和主目錄。也會搜尋子目錄。
您可以建立全域、專案層級和元件層級的情境檔案,這些檔案會合併,為模型提供最相關的資訊。
您可以使用 /memory show
指令查看所有已載入 GEMINI.md
檔案的合併內容,並使用 /memory refresh
指令重新載入這些檔案。
Gemini CLI 擴充功能
您可以使用 Gemini CLI 擴充功能,設定及擴充 Gemini Code Assist 代理程式模式功能。
代理程式會在兩個位置尋找擴充功能:
WORKSPACE/.gemini/extensions
,其中WORKSPACE
是目前的工作區。~/.gemini/extensions
,其中~
是主目錄。
代理程式會從這兩個位置載入所有擴充功能,但如果兩者都有同名擴充功能,工作區目錄中的擴充功能優先。每個擴充功能都是包含 gemini-extension.json
檔案的目錄。這個檔案包含擴充功能的設定。
詳情請參閱「Gemini CLI 擴充功能」。
IntelliJ
IntelliJ 或其他 JetBrains IDE 的 Gemini Code Assist 不支援這項功能。
工具
工具是廣泛的服務類別,代理程式可用於回應提示時的背景資訊和動作。例如 grep 和檔案讀取/寫入等內建工具、本機或遠端 Model Context Protocol (MCP) 伺服器及其可執行的函式,以及專屬服務實作項目。