本文說明 Gemini Code Assist 的代理程式模式。
代理程式模式適用於 VS Code 和 IntelliJ 整合式開發環境 (IDE)。如要開始使用代理程式模式,請參閱將代理程式即時通訊當成結對程式設計師。
VS Code 中的代理程式模式是由 Gemini CLI 支援。
IntelliJ 中的代理程式模式不會使用 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
指令重新載入這些檔案。
IntelliJ
在代理程式模式下,Gemini Code Assist 通常可透過下列方式取得內容:
- IDE 專案中的資訊,包括檔案、索引符號,以及專案中符號的使用情形。
- 來自 grep、檔案讀取或檔案寫入等內建工具的工具回應。
- IntelliJ 版本管控。
- 已設定的 MCP 伺服器和工具
- 以 Markdown 建立的脈絡檔案。
您可以在代理程式模式的聊天提示區域,透過內容抽屜查看代理程式可用的內容。

工具
工具是廣泛的服務類別,代理程式可用於回應提示時的背景資訊和動作。代理程式可透過工具呼叫 API 端點或其他代理程式,存取最新資訊。工具可能只提供一項功能,也可能提供多項相關功能。
例如 grep 和檔案讀取/寫入等內建工具、本機或遠端模型內容通訊協定 (MCP) 伺服器及其可執行函式,以及 RESTful API 呼叫。
內建工具
在代理程式模式下,Gemini 可以存取內建的系統工具。選取 IDE,即可查看 Gemini 在代理程式模式中可用的內建工具清單。
VS Code
Gemini Code Assist 的代理模式可使用所有 Gemini CLI 內建工具。
IntelliJ
read_file
- 使用檔案的絕對路徑擷取文字內容。
write_file
- 將指定文字寫入指定檔案,如果檔案不存在,則會建立檔案。
analyze_current_file
- 分析編輯器中開啟的檔案,找出錯誤和警告。
find_files
- 根據檔案名稱或部分路徑尋找檔案的絕對路徑
grep
- 找出專案中含有特定文字模式或規則運算式的所有檔案。
list_files
- 列出指定絕對路徑中的所有檔案和目錄。
resolve_symbol
- 將特定符號參照項目解析為原始宣告。
find_usages
- 在專案中搜尋指定符號宣告的所有參照。
git
- 執行 Git 指令列介面 (CLI) 指令,並傳回結果。
list_vcs_roots
- 傳回目前專案中的所有版本管控系統 (VCS) 根目錄,例如 Git 存放區。
限制
標準 Gemini Code Assist 對話的部分功能可能無法在代理程式模式中使用,或運作方式與標準對話不同。
朗讀功能不適用於代理模式。在代理程式模式下,Gemini 不會引用資料來源,且無法停用與引用來源相符的程式碼建議。