Начало работы с расширениями Gemini CLI

1. Введение

Gemini CLI — это агент с открытым исходным кодом, работающий на основе искусственного интеллекта и предназначенный для вашего терминала, который переносит возможности моделей Gemini непосредственно в командную строку. Хотя он и сам по себе достаточно мощный, его истинный потенциал раскрывается благодаря расширениям Gemini CLI Extensions .

Расширения — это официальный и стандартизированный способ расширения возможностей Gemini CLI. До появления расширений настройка CLI часто включала ручное редактирование конфигурационных файлов, таких как settings.json , что могло быть «сложным и чреватым ошибками процессом».

Рассматривайте расширение как «транспортный контейнер» для настроек Gemini CLI. Это самодостаточный, версионируемый и легко распространяемый пакет, объединяющий все компоненты, необходимые для обучения Gemini новому набору навыков. Этот «транспортный контейнер» может включать в себя:

  • Настройки сервера MCP: Эти настройки позволяют Gemini подключаться к внешним инструментам и API, таким как API Google Cloud или сторонние сервисы.
  • Контекстные файлы (GEMINI.md): это «сценарии», содержащие конкретные инструкции и рекомендации по эффективному использованию новых инструментов.
  • Пользовательские слэш-команды (.toml-файлы): они преобразуют сложные многошаговые запросы в простые и удобные в использовании команды, например, /deploy.
  • Ограничения на использование инструментов (excludeTools): Эти ограничения позволяют отключить встроенные инструменты для создания более безопасной или целенаправленной рабочей среды.

Основная ценность расширений заключается в превращении Gemini CLI из личного помощника в масштабируемую, готовую к использованию в корпоративной среде платформу. Команда может объединить весь свой облачный стек в одно расширение, что позволяет новым разработчикам начать работу с помощью одной команды.

В этом практическом занятии вы научитесь использовать эту мощную экосистему. Вы не будете создавать расширения, но установите и используете четыре различных расширения, которые добавят в ваш терминал возможности развертывания приложений, анализа безопасности, анализа данных и инфраструктуры как кода.

Что вы будете делать

  • Установите и настройте Gemini CLI и необходимые для его работы компоненты Google Cloud.
  • Чтобы найти расширения, просмотрите официальную галерею расширений Gemini CLI.
  • Используйте интерфейс командной строки gemini extensions для установки, отображения списка и управления расширениями.
  • Ознакомьтесь с несколькими расширениями Gemini CLI.

Что вы узнаете

  • Что представляют собой расширения Gemini CLI и почему они являются стандартом для настройки интерфейса командной строки.
  • Как найти и установить расширения из галереи расширений или по ссылке на GitHub.
  • Функции команд управления клавишами: gemini extensions install , gemini extensions list и gemini extensions update .
  • Установка и использование нескольких расширений Gemini CLI.

Что вам понадобится

  • Веб-браузер Chrome
  • Аккаунт Gmail
  • Облачный проект с включенной функцией выставления счетов.

Этот практический курс предназначен для пользователей и разработчиков всех уровней (включая начинающих). Предполагается, что вы уже знакомы с Gemini CLI, хотя будут предоставлены шаги по установке Gemini CLI с нуля. Если вы хотите познакомиться с Gemini CLI, попробуйте пройти практический курс: Практическое занятие по Gemini CLI.

2. Прежде чем начать

Создать проект

  1. В консоли Google Cloud на странице выбора проекта выберите или создайте проект Google Cloud.
  2. Убедитесь, что для вашего облачного проекта включена функция выставления счетов. Узнайте, как проверить, включена ли функция выставления счетов для проекта .
  3. Вы будете использовать Cloud Shell — среду командной строки, работающую в Google Cloud и поставляемую с предустановленным bq. Нажмите «Активировать Cloud Shell» в верхней части консоли Google Cloud.

Изображение кнопки «Активировать Cloud Shell»

  1. После подключения к Cloud Shell необходимо проверить, прошли ли вы аутентификацию и установлен ли идентификатор вашего проекта, используя следующую команду:
gcloud auth list
  1. Выполните следующую команду в Cloud Shell, чтобы убедиться, что команда gcloud знает о вашем проекте.
gcloud config list project
  1. Если ваш проект не задан, используйте следующую команду для его установки:
gcloud config set project <YOUR_PROJECT_ID>
  1. Включите необходимые API с помощью команды, указанной ниже. Это может занять несколько минут, поэтому, пожалуйста, наберитесь терпения.
gcloud services enable cloudresourcemanager.googleapis.com \
                       servicenetworking.googleapis.com \
                       run.googleapis.com \
                       cloudbuild.googleapis.com \

После успешного выполнения команды вы должны увидеть сообщение, похожее на показанное ниже:

Operation "operations/..." finished successfully.

Если какой-либо API отсутствует, вы всегда можете включить его в процессе реализации.

Для получения информации о командах gcloud и их использовании обратитесь к документации. Прежде чем приступать к настройке и запуску Gemini CLI, создадим папку, которая будет использоваться в качестве домашней папки для всех проектов, которые вы можете в ней создать. Это отправная точка для работы Gemini CLI, хотя она также будет ссылаться на некоторые другие папки в вашей системе, к которым вы вернетесь позже по мере необходимости.

Создайте тестовую папку ( gemini-cli-projects ) и перейдите в неё с помощью команд, показанных ниже. Если вы предпочитаете использовать другое имя папки, пожалуйста, сделайте это.

mkdir gemini-cli-projects

Давайте перейдём в эту папку:

cd gemini-cli-projects

Вы можете запустить Gemini CLI напрямую с помощью команды gemini в новом терминале Cloud Shell, или же он уже должен быть запущен в отдельном терминале Cloud Shell.

Наше первое взаимодействие с Gemini CLI

Нам необходимо убедиться, что с нашей средой командной строки Gemini всё в порядке, поэтому мы можем ввести первую команду, как показано ниже:

Give me a famous quote on Artificial Intelligence and who said that?

Вы заметите, что наш запрос привел к запуску инструмента GoogleSearch (встроенного инструмента в Gemini CLI). Другими словами, вы уже использовали один из мощных встроенных инструментов Gemini CLI, а именно GoogleSearch , который формирует свои ответы на основе информации, полученной из интернета. Вы должны получить ответ на свой запрос.

Давайте теперь перейдём к расширениям.

3. Что такое расширение?

Расширение — это самодостаточный, версионируемый и легко распространяемый пакет. Представьте его как «контейнер для доставки» ваших настроек Gemini CLI, объединяющий все необходимое для конкретного рабочего процесса в один аккуратный пакет.

3e38c14fd2fa563d.png

Расширение может включать в себя любую комбинацию следующих элементов:

  • Пользовательские команды со слэшем (ваши файлы .toml).
  • Настройки сервера MCP (которые ранее находились в файле settings.json).
  • Контекстные файлы (GEMINI.md) содержат конкретные инструкции и указания для модели.
  • Ограничения на использование инструментов (excludeTools) для создания более безопасной и целенаправленной рабочей среды.

Зачем использовать расширения? Основные преимущества.

Использование расширений для персонализации предоставляет ряд существенных преимуществ:

  • Установка одной командой : это ключевой момент. Вместо многоэтапной ручной настройки пользователь может установить полный, сложный набор инструментов одной командой: gemini extensions install <URL> или gemini extensions install --path=some/local/path . <URL> в приведенной выше команде может быть URL-адресом Github, где размещено расширение.
  • Упрощенное распространение : делиться результатами своей работы стало так же просто, как поделиться одним URL-адресом репозитория Git. Больше не нужно передавать отдельные файлы и фрагменты конфигурации.
  • Управление версиями и зависимостями : Поскольку расширения обычно размещаются в репозиториях Git, вы получаете контроль версий бесплатно. Для обновления расширения до последней версии можно использовать gemini extensions update command .
  • Доступность и экосистема : Расширения являются основой для богатой и открытой экосистемы, подобной магазинам расширений для VS Code или Chrome. Механизм расширений может стать основой для будущего рынка, где эти расширения будут доступны для проверки, загрузки и многого другого, в истинном стиле сообщества.

Внедрение фреймворка расширений ясно свидетельствует о том, что Gemini CLI превращается из мощного автономного инструмента в по-настоящему расширяемую платформу.

4. Понимание основ расширений

В этом разделе рассматриваются аспекты экосистемы расширений, с которыми взаимодействуют пользователи: поиск расширений и управление ими .

Галерея расширений — это центральная площадка для поиска всех официальных расширений, разработанных Google, а также сторонних разработчиков:

  1. Откройте в браузере следующий URL-адрес: https://geminicli.com/extensions/browse/ .
  2. Эта галерея служит инструментом поиска информации в экосистеме. Здесь вы можете увидеть расширения от таких компаний, как GitHub, Redis и DynaTrace, демонстрирующие широкий спектр доступных инструментов.
  3. Прокрутите вниз и найдите карточку расширения для Cloud Run.
  4. Обратите внимание, что карточка содержит описание, автора (Google) и кнопку Copy install » для быстрого доступа. Это самый простой способ получить команду установки для расширения.

Расширения Gemini CLI — Команды управления

Команда gemini extensions — это точка входа для управления локальными расширениями.

Запустите эту команду в терминале, чтобы увидеть список доступных команд.

bb066717359d2199.png

Команды довольно простые (install/uninstall, list, update, enable/disable и т. д.), и некоторые из них мы будем использовать в этом практическом занятии.

Проверьте ваше текущее состояние

Прежде чем что-либо устанавливать, давайте начнем с чистого листа.

  1. Выполните команду gemini extensions list :
  2. Вы должны увидеть следующий вывод, подтверждающий, что никакие расширения еще не установлены.
No extensions installed.

5. Расширение Cloud Run (развертывание приложения)

Расширение Cloud Run, доступное в галерее расширений Gemini CLI, представляет собой MCP-сервер, позволяющий развертывать приложения в Cloud Run.

Ниже представлена ​​карточка расширения Cloud Run из галереи расширений:

ed9b19eac1fbde78.png

Для начала установим расширение Cloud Run, нажав на кнопку «Скопировать команду установки» , как показано выше. Затем вставьте эту команду в терминал Cloud Shell (она должна выглядеть примерно так):

gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp

После выполнения указанной выше команды вам потребуется подтвердить действие. Подтвердите это. После этого расширение Cloud Run должно успешно установиться.

Installing extension "cloud-run".
**Extensions may introduce unexpected behavior. Ensure you have investigated the extension source and trust the author.**
This extension will run the following MCP servers:
  * cloud-run (local): npx -y @google-cloud/cloud-run-mcp
This extension will append info to your gemini.md context using gemini-extension/GEMINI.md
Do you want to continue? [Y/n]: Y
Extension "cloud-run" installed successfully and enabled.

Если теперь выполнить команду gemini extensions list, вы должны увидеть установленное расширение Cloud Run, как показано ниже:

✓ cloud-run (1.0.0)
 Path: <HOME_FOLDER>/.gemini/extensions/cloud-run
 Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: github-release)
 Release tag: v1.5.0
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  <HOME_FOLDER>/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
 MCP servers:
  cloud-run

Если вы сейчас запустите Gemini CLI и выполните команду /mcp , вы увидите следующее:

bb0a7b7a5c79b764.png

Теперь вернёмся к Cloud Shell и попробуем развернуть приложение. Для этого нам сначала понадобится простое приложение для развертывания в Cloud Run. Следуйте приведенным ниже шагам:

Убедитесь, что вы находитесь в папке, которую мы создали ранее, то есть gemini-cli-projects . Создайте внутри этой папки еще одну папку с именем gemini-cloud-run и перейдите в нее.

mkdir gemini-cloud-run

cd gemini-cloud-run

Теперь создайте в этой папке два файла ( app.py и requirements.txt ), содержимое которых приведено ниже:

app.py

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
  return 'Hello from Gemini and Cloud Run!'
if __name__ == "__main__":
  app.run(debug=True, host='0.0.0.0', port=8080)

requirements.txt

Flask
gunicorn

Теперь запустите Gemini CLI из папки gemini-cloud-run , и как только терминал будет готов, введите следующую команду:

/deploy --project="PROJECT_ID" --location="PROJECT_LOCATION" --name="SERVICE_NAME"

Вам потребуется указать PROJECT_ID (идентификатор проекта Google Cloud), PROJECT_LOCATION и SERVICE_NAME . Если вы этого не укажете, команда Cloud Run запустит соответствующие инструменты, которые помогут вам их выбрать.

В рамках этого процесса будет выбран подходящий инструмент из установленного нами расширения Cloud Run MCP Server Extension. Например, вы должны увидеть сообщение примерно такого вида:

4142356c89a6e898.png

Разрешите использовать этот инструмент.

Вот и всё! Gemini CLI теперь располагает всей необходимой информацией, а также вашими разрешениями на выполнение инструментов. Теперь он выполнит весь конвейер развертывания: сборку образа Docker, его отправку в реестр артефактов, настройку и развертывание новой службы Cloud Run.

Через несколько мгновений (точнее, через 2-3 минуты) вы увидите сообщение об успешном завершении с URL-адресом сервиса. Пример выполнения показан ниже:

The Cloud Run service SERVICE_NAME has been deployed from the current folder in project PROJECT_ID.
  You can view the service in the Cloud Console: https://console.cloud.google.com/run/detail/PROJECT_LOCATION/SERVICE_NAME?project=PROJECT_ID
  The service is accessible at: https://SERVICE_NAME-SOME-ID.a.run.app

Смело переходите по этой ссылке. Вы должны увидеть, как приложение Flask отображает главную страницу:

e20308c96f980b8.png

Это демонстрирует возможности расширения Gemini CLI (в данном случае Cloud Run), которое полностью инкапсулирует сложность команд gcloud CLI и просто берет на себя все детали.

Вы можете ознакомиться и с другими инструментами, доступными на сервере Cloud Run MCP.

6. Расширение BigQuery (для анализа больших наборов данных)

Для выполнения этих инструкций вам понадобится:

  • Проект Google Cloud с включенным API BigQuery.
  • Разрешения IAM:
  • Пользователь BigQuery (roles/bigquery.user)
  1. Выполните эту команду, чтобы установить переменную среды BIGQUERY_PROJECT . Это проект, который будет выполнять задания BigQuery, а не обязательно тот, где хранятся ваши данные (хотя это может быть и один и тот же проект).
export BIGQUERY_PROJECT=<YOUR_GCP_PROJECT_ID>
  1. Установите расширение BigQuery Data Analytics с помощью приведенной ниже команды. Предоставьте ему разрешение на установку. После успешной установки в вашей системе будет установлено 2 расширения: cloud-run и bigquery-data-analytics .
gemini extensions install https://github.com/gemini-cli-extensions/bigquery-data-analytics
  1. Давайте снова запустим Gemini CLI с помощью следующей команды:
gemini

Интерфейс командной строки Gemini должен запуститься в вашем терминале: 86bd2b0af03b8f40.png

Следующие команды следует ввести в терминал Gemini CLI.

  1. Убедитесь, что расширение BigQuery установлено и готово к работе, введя следующую команду с косой чертой:
/extensions list

Вы также должны увидеть в списке расширение bigquery-data-analytics .

65bd3c1e7e9f89d1.png

  1. Выполните следующую команду, чтобы проверить наличие доступных инструментов.
/mcp list

e2dae10ef6bcfb67.png

  1. Давайте зададим простой аналитический вопрос о общедоступном наборе данных BigQuery: Look eCommerce. Этот набор данных содержит информацию о клиентах, товарах и заказах для вымышленного сайта электронной коммерции одежды. Введите следующую подсказку в Gemini CLI:
Look at BigQuery's the look ecommerce public dataset. Identify the top 5 products that had the most orders.
  • Gemini CLI спросит, согласны ли вы разрешить выполнение инструментов BigQuery. Для продолжения выберите третий вариант: Yes, always allow all tools from server "bigquery_data_analytics" . 3ef4579b11a363fc.png
  • Внутри системы Gemini сгенерирует соответствующий SQL-запрос, запустит инструмент execute_sql и вернет ответ на естественном языке вместе с вашими данными:

adc85c0049493736.png

  1. Теперь мы попросим Gemini спрогнозировать процент возврата товаров на основе исторических данных. Для этой команды Gemini CLI не должен пытаться генерировать многословный SQL-запрос для создания прогноза, он должен вызвать инструмент forecast с сервера MCP, который будет использовать встроенную функцию AI.Forecast из BigQuery:
Forecast what the return rate will be next month.
  • Вы должны увидеть ответ примерно такого вида:

86c79ab7391acd2e.png

7. Расширение Google Workspace (для повседневных рабочих процессов)

Расширение Google Workspace доступно в виде MCP-сервера, который интегрируется с приложениями Google Workspace, такими как Docs, Chat, Calendar, Drive и другими. Ключевой особенностью этого расширения является локальная модель выполнения. MCP-сервер работает на компьютере пользователя, а не в облаке. Он использует собственные учетные данные OAuth пользователя для прямой связи с API Google.

Ниже представлена ​​карточка расширения Google Workspace из галереи расширений:

aecc4672f27f10b7.png

Чтобы установить расширение Google Workspace, нажмите кнопку «Копировать» и вставьте эту команду в терминал Cloud Shell (она должна выглядеть примерно так):

gemini extensions install https://github.com/gemini-cli-extensions/workspace

После выполнения указанной выше команды появится запрос на подтверждение. Подтвердите его. После этого расширение Google Workspace должно успешно установиться.

Если теперь выполнить команду gemini extensions list, вы должны увидеть установленное расширение Google Workspace, как показано ниже (или аналогичный вывод):

✓ google-workspace (v0.0.3)
 ID: 40be7ad1253320a38aba2f107f21349b41a458416fd4616550c832ff1d3b7dce
 name: a1f88ed96997755f9cd591bb26d8e1087e5969979caabe19fcde7b3544ea1a1e
 Path: /Users/romin/.gemini/extensions/google-workspace
 Source: https://github.com/gemini-cli-extensions/workspace (Type: github-release)
 Release tag: v0.0.3
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  /Users/romin/.gemini/extensions/google-workspace/WORKSPACE-Context.md
 MCP servers:
  google-workspace

Если вы запустите Gemini CLI сейчас, вам придётся выполнить самый важный шаг в процессе настройки этого расширения — аутентификацию . В отличие от простого скрипта, который может использовать статический ключ API, расширение Workspace Extension действует как авторизованный агент от имени пользователя, требуя доступа к конфиденциальным областям (Диск, Почта, Календарь).

Расширение запускает процесс аутентификации OAuth 2.0. Выберите свою учетную запись, после чего Google отобразит список разрешений (областей действия), запрашиваемых расширением. Этот список обширен и включает в себя ключевые из них, как показано ниже:

32a6b0d6c57a2ba9.png

После завершения этого процесса аутентификации OAuth 2.0, все готово.

Проверить успешность установки расширения можно, запустив Gemini и используя команду /mcp list . Это должно показать, что расширение установлено и команды доступны в качестве инструментов MCP. Скриншот этого показан ниже:

5fb5ab11d7f9f4bc.png

Инструменты рабочей области

Расширение сопоставляет конкретные конечные точки API Google Workspace с «инструментами», которые могут быть использованы студентами магистратуры. Эти инструменты не случайны; они подобраны таким образом, чтобы охватывать основные виды работы с информацией:

  • Управление файлами (Диск)
  • Создание документов (Docs)
  • Управление временем (календарь)
  • Общение (Gmail/Чат)

Рассмотрим несколько примеров, которые вы можете попробовать, используя различные доступные инструменты. Для тестирования этих инструментов предполагается наличие нескольких писем в подключенном аккаунте Gmail, расписания в календаре, файлов в Google Диске и т. д.

Диск и Документы: База знаний

Если у вас в Google Диске есть проектный документ или интересный документ, вы можете попробовать выполнить поиск и составить краткое описание документа, используя примерную подсказку:

Search for <DOC_NAME> in Google Drive

После того, как документ(ы) будут найдены, Gemini CLI выведет список документов вместе с их идентификатором. Затем вы можете запросить у программы краткое описание документа следующим образом:

Summarize <DOC_ID> for me

Давайте выполним упражнение, которое мы обычно делаем, когда нам нужна информация. Мы ищем информацию в интернете, а затем вставляем её в документ Google Docs.

Придумайте примерно такой вопрос:

Lookup information on The Richat Structure (Eye of Africa) and create a 1-pager document for me with relevant information about

В результате выполнения этой команды Gemini CLI запускает инструмент поиска Google для получения информации из интернета, а после получения информации синтезирует её в одностраничный документ, как мы и просили, и создаёт новый документ Google Docs в Google Drive.

Зайдите в Google Drive, откройте свою учетную запись и посмотрите созданный документ. Приведенный ниже документ является примером работы программы.

8b82e5f213e54e27.png

Календарь

Используйте инструменты календаря, доступные в расширении, чтобы превратить его в помощника руководителя, который будет управлять вашим временем.

Для получения информации вы можете использовать команду /calendar:get-schedule или просто использовать запросы на естественном языке.

Давайте начнём с самых основ, чтобы выяснить, как выглядит ваше расписание на сегодня. Введите следующую команду, и вы увидите, что она получила доступ к вашему календарю на сегодня и отобразила запланированные на этот день события (убедитесь, что у вас действительно есть несколько запланированных событий в календаре на этот день).

What does my schedule look like for today?

Затем вы можете попробовать следующее:

Укажите конкретный временной промежуток в своем расписании на этот день, и если вас устроят предложенные варианты, вы даже можете попросить систему создать событие на этот день. Попробуйте.

Коммуникации: Gmail и чат

Вы можете использовать инструмент /gmail:search для поиска в электронных письмах и получения контекста из переписки.

Например, если вы получаете еженедельные электронные письма от определенной команды и т. д., попробуйте выполнить поиск этих писем с помощью следующего запроса:

/gmail:search "Project Phoenix updates"

Затем вы можете попросить его кратко изложить содержание конкретного письма и отправить его в пространство Google Чата, используя примерно такой запрос:

Send a chat message to <SPACE_NAME> and highlight the key points from the email.

Выше приведены лишь некоторые примеры. Рассмотрим более сложные рабочие процессы, например:

Find the 'Project Phoenix Design Doc' in Drive,
read the section on API authentication,
and help me scaffold the middleware based on those specs.
Send a message to the ‘Core Eng' chat space letting them know the deployment is starting now.

Лучший способ использовать подобные расширения — это протестировать их на своих файлах, календаре, Gmail и т. д., чтобы создать сценарии автоматизации или просто найти более эффективный способ избежать переключения контекста и сэкономить время.

8. Дальнейшие исследования

На этом завершается наш практический урок, в ходе которого мы рассмотрели, что такое расширения Gemini CLI, основные команды для работы с ними, а также изучили несколько расширений: cloud-run и bigquery-data-analytics .

Посетите галерею расширений Gemini по адресу https://geminicli.com/extensions/, чтобы ознакомиться с доступными на данный момент расширениями (более 100 на момент написания статьи), которые вы можете использовать. Каждая карточка расширения содержит информацию о типе расширения (MCP, Context и т. д.), а также ссылку на его репозиторий GitHub и команду для установки расширения в вашей среде.

777e0293d5bd51e9.png

9. Поздравляем!

Поздравляем, вы успешно освоили расширения Gemini CLI и научились устанавливать и использовать различные расширения Gemini CLI.

Справочная документация