Найти в Дзене
In Data We Trust

Обзор Gemini CLI

Gemini CLI — ИИ агент от Google, который запускается в терминале, и позволяет решать широкий спектр задач, от общения как с GPT, до автоматизации разработки, тестирования аналитики и т.д. Для установки потребуется Node.js, начиная с версии 18 и выше. Скачать можно на официальном сайте. После установки Node.js открываем Power Shell и запускаем команду: npm install -g @google/gemini-cli По завершению выполнения должно появиться сообщение вида: added 431 packages in 13s
123 packages are looking for funding`
run `npm fund` for details Gemini CLI установлен. Теперь его можно запустить в любой момент из терминала командой gemini При этом Gemini может "подхватывать" в своей контекст данные из той папки, в которой он запущен. Во время первого запуска Gemini Cli предложит выбрать цветовую схему. А затем выбрать способ авторизации. На выбор 3 способа: через Google (не подходит, если страна аккаунта Россия), API-ключ, который можно получить на сайте AI Studio (или купить на каком-нибудь маркетпл
Оглавление

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

Установка Gemini CLI на Windows 11

Для установки потребуется Node.js, начиная с версии 18 и выше. Скачать можно на официальном сайте.

-2

После установки Node.js открываем Power Shell и запускаем команду:

npm install -g @google/gemini-cli

По завершению выполнения должно появиться сообщение вида:

added 431 packages in 13s
123 packages are looking for funding`
run `npm fund` for details

Gemini CLI установлен. Теперь его можно запустить в любой момент из терминала командой

gemini

При этом Gemini может "подхватывать" в своей контекст данные из той папки, в которой он запущен.

Во время первого запуска Gemini Cli предложит выбрать цветовую схему.

-3

А затем выбрать способ авторизации. На выбор 3 способа: через Google (не подходит, если страна аккаунта Россия), API-ключ, который можно получить на сайте AI Studio (или купить на каком-нибудь маркетплейсе) и через Vertex AI.

-4

Я использовал API ключ, который надо добавить в переменную .env. В Power Shell это можно сделать командой:

$env:GEMINI_API_KEY="YOUR_API_KEY"

Бесплатная версия Gemini позволяет отправить 60 запросов в минуту и до 1000 запросов в сутки. Более подробно можно прочитать в документации Google.

Основные команды Gemini CLI

У Gemini CLI есть несколько типов команд.

-5

Системные команды (/)

  • /help — выводит список основных команд.
  • /docs — открывает в браузере официальный Github репозиторий.
  • /clear — очищает историю сообщений.
  • /theme — выбор цветовой схемы.
  • /auth — выбор способа авторизации.
  • /editor — вывести список поддерживаемых редакторов кода.
  • /privacy — выводит информацию о конфиденциальности
  • /stats — выводит статистику по текущей сессии
  • /mcp — вывести список настроенных серверов Model Context Protocol (MCP).
  • /memory — управление контекстном обучения. Добавить текст в память (/memory add <text>). Показать содержимое памяти (/memory show). Перезагрузить память (/memory refresh)
  • /tools — список инструментов доступных Gemini CLI.
  • /about — выводит информацию о Gemini CLI.
  • /bug — открывает страницу баг репорта.
  • /chat [тег] — команда работы с чатом. Сохранить (/chat save <tag>). Возобновить с последнего сохранения (/chat resume <tag>). Получить список сохраненных чатов (/chat list).
  • /quit — выход из Gemini CLI
  • /compress — оптимизирует текущий контекст, сжимая его до краткого описания.

Промптинг

Можно отправить любое сообщение, тогда активируется режим промптинга, как с любым GPT инструментом.

Shell команды (!)

Если ввести в чате восклицательный знак, Gemini перейдет в режиме командной строки.

At команды (@)

  • Команды используются для указания на конкретный файл или папку. Пример команды: @path/to/your/file.txt Объясни о чем этот файл.

Важно: Пробелы в пути экранируются обратным слешем (\)

Конфигурация Gemini CLI

Конфигурация определяется в порядке возрастания значимости:

1. Значения по умолчанию.

2. Файл настроек пользователя: Глобальные настройки для текущего пользователя. Находится в файле /users/<username>/.gemini/settings.json. Применяется ко всем сеансам Gemini CLI.

3. Файл с настройками проекта: Настройки для конкретного проекта. Находится в файле .gemini/settings.json в корневом каталоге вашего проекта. Применяется только при запуске Gemini CLI из конкретного проекта.

4. Переменные среды: общесистемные или специфичные для сеанса переменные, которые могут загружаться из .env файлов.

Описание возможных параметров settings.json по ссылке в документации.

5. Аргументы командной строки: Значения, переданные при запуске интерфейса командной строки.

Параметры запуска Gemini CLI

Для получения списка и описания всех параметров запуска Gemini CLI используется команда:

gemini --help
-6
  • -m, --model — задаёт модель, с которой будет запущен Gemini. По умолчанию используется модель "gemini-2.5-pro". Список моделей Gemini.
  • -p, --prompt — отправить промпт без запуска интерфейса.
  • -s, --sandbox — запуска Gemini в песочнице. Нужен установленный Docker.
  • -d, --debug — запуск в режиме отладки, который наглядно показывает процесс взаимодействия с системой.
-7
  • -a, --all_files — включает все файлы из каталога в котором запущен gemini в контекст запроса.
  • --show_memory_usage — показывает количество памяти, которое использует gemini.
  • -y, --yolo — запускает Gemini с правами на запуск инструментов без дополнительных запросов.
  • --telemetry — показывает дополнительные данные о производительности. Подробнее в документации.
  • -c, --checkpointing — включает создание контрольных точек. Подробнее в документации.
  • -v, --version — выводит информацию об установленной версии Gemini CLI.

GEMINI.MD

GEMINI.MD - это не обязательный файл с инструкциями, о которых Gemini должен знать во время взаимодействия.

CLI может прочитать несколько файлов GEMINI.MD, объединив их инструкции.

Что может содержаться в файле:

1. Общие инструкции.

2. Требования к стилю.

3. Описание рабочих файлов.

4. Зависимости.

Вот пример содержимого GEMINI.MD из документации:

-##

Общие инструкции:#

Проект: Моя потрясающая библиотека TypeScript При создании нового кода TypeScript, пожалуйста, следуйте существующему стилю кодирования.
- Убедитесь, что все новые функции и классы имеют комментарии JSDoc.
- При необходимости отдавайте предпочтение парадигмам функционального программирования.
- Весь код должен быть совместим с TypeScript 5.0 и Node.js 18+.

## Стиль кодирования:

- Используйте 2 пробела для отступов.
- Имена интерфейсов должны начинаться с `I` (например, `IUserService`).
- Имена закрытых членов класса должны начинаться с подчеркивания (`_`).
- Всегда используйте строгое равенство (`===` и `!==`).

## Конкретный компонент: `src/api/client.ts`

- Этот файл обрабатывает все исходящие запросы API.
- При добавлении новых функций вызова API убедитесь, что они включают надёжную обработку ошибок и ведение журнала.
- Используйте существующую утилиту `fetchWithRetry` для всех запросов GET.

## Что касается зависимостей:

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

Я написал статью с подробным разбором GEMINI.MD, с которой можно ознакомиться по ссылке.

Что еще почитать по теме Gemini Cli