В этом документе описывается, как настроить и использовать режим агента Gemini Code Assist в качестве парного программиста в интегрированной среде разработки (IDE).
В режиме агента вы можете выполнять любые из следующих и более действий:
- Задавайте вопросы о своем коде.
- Используйте контекст и встроенные инструменты для улучшения создаваемого контента.
- Настройте MCP-серверы для расширения возможностей агента.
- Получайте решения сложных задач, состоящие из нескольких шагов.
- Создавайте код на основе проектной документации, проблем и комментариев
TODO
. - Управляйте поведением агента, комментируя, редактируя и утверждая планы и использование инструментов во время выполнения.
Ограничения
Некоторые функции стандартного чата Gemini Code Assist могут быть недоступны в режиме агента или работать иначе, чем в стандартном чате.
Функция декламации недоступна в режиме агента. В режиме агента Gemini не цитирует источники , и вы не можете отключить предложения кода, соответствующие цитируемым источникам .
Прежде чем начать
VS Код
- Настройте версию Gemini Code Assist, которую вы хотите использовать в своей IDE:
IntelliJ
Настройте версию Gemini Code Assist, которую вы хотите использовать в своей IDE:
Использовать режим агента
В режиме агента вы можете поручить Gemini выполнение высокоуровневых целей и сложных задач.
Чтобы максимально эффективно использовать режим агента, следуйте рекомендациям по предоставлению подсказок и предоставляйте как можно больше подробностей.
Чтобы переключиться в режим агента:
VS Код
- Чтобы открыть чат Gemini Code Assist, на панели активности вашей IDE нажмите spark Gemini Code Assist .
- Нажмите на переключатель «Агент» , чтобы перейти в режим агента. Переключатель подсвечивается при переключении в режим агента и становится серым при обычном чате.
- В чате Gemini Code Assist введите свой запрос.
Gemini отвечает на ваш запрос или запрашивает разрешение использовать инструмент.
Чтобы остановить агента, нажмите кнопку Стоп
Чтобы использовать стандартный чат Gemini Code Assist, нажмите
новый чат» , чтобы создать новый чат.Режим агента Gemini Code Assist работает на базе Gemini CLI .
IntelliJ
- Нажмите spark Gemini» на панели инструментов. При необходимости войдите в систему.
- Выберите вкладку «Агент» .
- Опишите задачу, которую должен выполнить агент.
Пока агент выполняет шаги по выполнению задачи, у вас будет возможность просмотреть и одобрить любые изменения.
Необязательно: для автоматического утверждения изменений выберите Параметры агента и установите флажок рядом с опцией Автоматическое утверждение изменений .
Настройка инструментов для режима агента
Инструменты — это широкая категория сервисов, которые агент может использовать для контекста и действий в ответ на ваш запрос. Примерами инструментов являются встроенные инструменты, такие как grep и чтение/запись файлов, локальные или удалённые серверы протокола контекста модели (MCP) и их исполняемые функции, а также специализированные реализации сервисов.
Управление использованием встроенных инструментов
Режим агента обеспечивает доступ к встроенным инструментам, таким как поиск файлов, чтение файлов, запись файлов, команды терминала и многое другое.
VS Код
Вы можете использовать настройки coreTools
и excludeTools
, чтобы контролировать, к каким инструментам Gemini будет иметь доступ в режиме агента.
-
coreTools
- Позволяет указать список инструментов, которые должны быть доступны модели. Вы также можете задать ограничения для отдельных команд инструментов, которые её поддерживают. Например, добавление следующего кода в JSON-файл настроек Gemini разрешит выполнение только команды shell
ls -l
:"coreTools": ["ShellTool(ls -l)"]
. -
excludeTools
- Позволяет указать список инструментов, которые не должны быть доступны модели. Вы также можете указать ограничения для отдельных команд инструментов, которые её поддерживают. Например, добавление следующего кода в JSON-файл настроек Gemini заблокирует использование команды
rm -rf
:"excludeTools": ["ShellTool(rm -rf)"]
.
Инструмент, указанный как в excludeTools
, так и в coreTools
, исключен.
Чтобы настроить встроенные инструменты, доступные в режиме агента, выполните следующие действия:
- Откройте JSON-файл настроек Gemini, расположенный в
~/.gemini/settings.json
, где~
— ваш домашний каталог. Чтобы ограничить использование инструментов агента списком одобренных инструментов, добавьте следующую строку в JSON-файл настроек Gemini:
"coreTools": ["TOOL_NAME_1,TOOL_NAME_2"]
Замените
TOOL_NAME_1
иTOOL_NAME_2
на названия встроенных инструментов, к которым вы хотите предоставить агенту доступ.Вы можете перечислить любое количество встроенных инструментов. По умолчанию все встроенные инструменты доступны агенту.
Чтобы ограничить использование инструмента агента определенными командами инструмента, добавьте следующую строку в JSON-файл настроек Gemini:
"coreTools": ["TOOL_NAME(COMMAND)"]
Заменить следующее:
-
TOOL_NAME
: имя встроенного инструмента -
COMMAND
: имя встроенной команды инструмента, которую должен иметь возможность использовать агент.
-
Чтобы исключить инструмент из использования агентом, добавьте следующую строку в JSON-файл настроек Gemini:
"excludeTools": ["TOOL_NAME_1,TOOL_NAME_2"]
Замените
TOOL_NAME_1
иTOOL_NAME_2
на названия встроенных инструментов, которые вы хотите исключить из использования агентом.Чтобы исключить команду инструмента из использования агентом, добавьте следующую строку в JSON-файл настроек Gemini:
"excludeTools": ["TOOL_NAME(COMMAND)"]
Заменить следующее:
-
TOOL_NAME
: имя встроенного инструмента -
COMMAND
: имя встроенной команды инструмента, которую вы хотите исключить из использования агентом.
-
Дополнительную информацию о параметрах конфигурации coreTools
и excludeTools
см. в документации по настройке Gemini CLI .
IntelliJ
Эта функция не поддерживается в Gemini Code Assist для IntelliJ или других IDE JetBrains.
Настройка MCP-серверов
VS Код
Чтобы сделать серверы MCP доступными для использования в режиме агента, добавьте конфигурацию каждого сервера в файл JSON настроек Gemini в соответствии с документацией каждого сервера.
- Установите все зависимости, требуемые добавляемыми вами серверами MCP.
- Откройте JSON-файл настроек Gemini, расположенный по адресу
~/.gemini/settings.json
, где~
— ваш домашний каталог. Настройте каждый локальный или удаленный сервер MCP в файле настроек Gemini JSON в соответствии с инструкциями каждого сервера.
В следующем примере добавляются два удаленных сервера Cloudflare MCP и настраиваются серверы GitHub и GitLab для работы на локальной машине.
{ "mcpServers": { "github": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345" } }, "gitlab": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-gitlab"] }, "cloudflare-observability": { "command": "npx", "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"] }, "cloudflare-bindings": { "command": "npx", "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"] } } }
Откройте палитру команд и выберите Разработчик: Перезагрузить окно .
Настроенные вами серверы MCP доступны агенту для использования в режиме агента.
IntelliJ
Чтобы сделать серверы MCP доступными для использования в режиме агента, добавьте конфигурацию каждого сервера в файл mcp.json
и поместите файл mcp.json
в каталог конфигурации вашей IDE.
- Установите все зависимости, требуемые добавляемыми вами серверами MCP.
- Создайте файл с именем
mcp.json
в каталоге конфигурации вашей IDE. Настройте каждый локальный или удаленный сервер MCP в файле
mcp.json
в соответствии с инструкциями каждого сервера.В следующем примере добавляются два удаленных сервера Cloudflare MCP и настраиваются серверы GitHub и GitLab для работы на локальной машине.
{ "mcpServers": { "github": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345" } }, "gitlab": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-gitlab"] }, "cloudflare-observability": { "command": "npx", "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"] }, "cloudflare-bindings": { "command": "npx", "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"] } } }
Настроенные вами серверы MCP доступны агенту для использования в режиме агента.
Аутентификация сервера MCP
Некоторые серверы MCP требуют аутентификации. Следуя документации сервера, создайте все необходимые токены пользователя и укажите их соответствующим образом. Локальные серверы могут принимать переменные среды; удалённые серверы могут принимать учётные данные в заголовках.
VS Код
Для серверов MCP, требующих аутентификации, вы можете добавить их в JSON-файл настроек Gemini.
В следующем примере показано, как указать персональный токен доступа для локального и удаленного серверов MCP GitHub:
{
"mcpServers": {
"github-remote": {
"httpUrl": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "Bearer ACCESS_TOKEN"
}
},
"github-local": {
"command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
"args": ["stdio"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
}
}
}
}
Где ACCESS_TOKEN
— токен доступа пользователя.
IntelliJ
Для серверов MCP, требующих аутентификации, вы можете добавить их в файл mcp.json
.
В следующем примере добавляется персональный токен доступа для локального сервера GitHub:
{
"mcpServers": {
"github-local": {
"command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
"args": ["stdio"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
}
}
}
}
Где ACCESS_TOKEN
— токен доступа пользователя.
Создать файл контекста
Контекст позволяет агенту генерировать более точные ответы на заданный запрос. Контекст может быть взят из файлов в вашей IDE, файлов в локальных системных папках, ответов инструментов и данных о вашем запросе. Подробнее см. в разделе Контекст режима агента .
VS Код
Создайте файл с именем
GEMINI.md
в расположении, соответствующем области действия, к которой вы хотите применить контекст. В следующей таблице указано расположение файлов контекста для различных областей действия:Объем Расположение Все ваши проекты ~/.gemini/GEMINI.md
Конкретный проект Ваш рабочий каталог или любые родительские каталоги вплоть до корня вашего проекта (обозначенного папкой .git
) или вашего домашнего каталога.Конкретный компонент, модуль или подраздел проекта Подкаталоги вашего рабочего каталога. Система памяти агента создаётся путём загрузки файлов контекста из нескольких мест. Контекст из более специализированных файлов, например, для конкретных компонентов или модулей, переопределяет или дополняет содержимое более общих файлов контекста, таких как глобальный файл контекста
~/.gemini/GEMINI.md
.Запишите любые правила, информацию о стиле или контекст, которые агент должен использовать в Markdown, и сохраните файл. Подробнее см. в примере файла контекста на GitHub .
Агент включает эту информацию в ваш контекстный файл вместе со всеми подсказками, которые вы ему отправляете.
IntelliJ
Создайте файл с именем
GEMINI.md
илиAGENT.md
в корне вашего проекта.Запишите любые правила, информацию о стиле или контекст, которые должен использовать агент в Markdown, и сохраните файл.
Агент включает эту информацию в ваш файл контекста вместе со всеми отправляемыми вами подсказками. Вы также можете добавить контекст, вручную включив файл с помощью синтаксиса @
FILENAME
, где FILENAME
— имя файла с контекстной информацией, которую вы хотите включить.
Используйте команды
Команды слеш /
позволяют быстро запускать команды, аналогичные командам в окне терминала.
VS Код
В режиме агента вы можете использовать следующие команды CLI Gemini:
-
/tools
: отображает список инструментов, доступных в сеансе режима агента. -
/mcp
: выводит список настроенных серверов Model Context Protocol (MCP), состояние их подключения, сведения о сервере и доступные инструменты.
Дополнительную информацию о командах Gemini CLI см. в разделе «Команды Gemini CLI» . Обратите внимание, что не все команды Gemini CLI доступны в режиме агента.
IntelliJ
Эта функция не поддерживается в Gemini Code Assist для IntelliJ или других IDE JetBrains.
Всегда разрешать действия агента
Вы можете автоматически разрешить все действия агента.
Чтобы автоматически разрешить все действия агента:
VS Код
Используйте режим Yolo для автоматического разрешения всех действий агента. Режим Yolo можно использовать только в доверенном рабочем пространстве .
Чтобы настроить режим yolo:
Откройте JSON-файл настроек пользователя VS Code:
- Откройте палитру команд (
ctrl
/command
+Shift
+P
). - Выберите «Настройки»: Открыть настройки пользователя (JSON) .
- Откройте палитру команд (
Добавьте следующее в JSON-файл настроек пользователя VS Code:
//other settings... "geminicodeassist.agentYoloMode": true, //other settings...
Откройте палитру команд и выберите Разработчик: Перезагрузить окно .
Режим агента использует режим Yolo и не запрашивает разрешение перед выполнением действий при отправке запроса. При использовании ограниченного рабочего пространства агент будет запрашивать разрешение перед выполнением действий независимо от этой настройки.
IntelliJ
Чтобы автоматически утверждать изменения, на вкладке агента чата Gemini выберите Настройки Параметры агента , а затем установите флажок рядом с опцией Автоматически утверждать изменения .
Режим агента автоматически одобряет все запросы и не запрашивает разрешения перед выполнением действий, когда вы отправляете ему подсказку.
Дополнительные подсказки
Попробуйте выполнить следующие подсказки, используя собственную информацию:
- «Что делает этот репозиторий? Помогите мне понять его архитектуру».
- «Что делает этот [класс/функция]?»
- «Добавить функцию в эту кодовую базу — «[ссылка-или-путь-к-кодовой-базе]».»
- «Реорганизуйте функции [A] и [B] для использования общего метода [C].»
- «Исправьте проблему с GitHub [link-to-github-issue]».
- «Создайте приложение для достижения [цели] с пользовательским интерфейсом, позволяющим пользователю выполнять [задачу] в [среде]».
- «Перенести версии библиотеки в этом репозитории из [X] в [Y]».
- «Оптимизируйте производительность этого кода Go, чтобы он работал быстрее».
- «Используйте [имя API] для реализации этой функции».
- «Реализуйте алгоритм для выполнения [x], [Y] и [Z].»
Что дальше?
- Ознакомьтесь с обзором Gemini Code Assist .
- Изучите некоторые примеры серверов MCP .
- Больше MCP-серверов можно найти на GitHub .
- Отправьте отзыв из вашей IDE .