В прошлой статье мы рассказали, какие группы плагинов есть на маркетплейсе GigaIDE. Их количество постоянно растёт — как за счёт open source-плагинов, ранее доступных у JetBrains, так и за счёт собственных разработок. Именно оригинальным плагинам мы и посвятим цикл статей.

Начнём с группы ИИ-помощников — плагинов, которые используют возможности GigaCode для автоматической работы с кодом. Все они бесплатны, но для работы требуют активированный GigaCode.

Каждый из таких плагинов:

  • решает узкую задачу по обслуживанию кода и не требует работы с промптами;

  • работает как в рамках всего проекта, так и в отдельном файле;

  • использует GigaCode для генерации контента;

  • принимает решения на основе синтаксического дерева или специализированной предиктивной модели;

  • пока поддерживает только Java и Kotlin.

Все описанные ниже плагины совместимы с Community-версией GigaIDE. И все из них ставятся в GIGAIDE с маркетплейса GigaIDE по инструкции из предыдущей публикации.

Дашборд, который строит плагин Team
Дашборд, который строит плагин Team
Как установить и запустить

Каждый ИИ-помощник — это отдельный плагин. Для работы ему понадобятся:

  • Elements для построения графа кода (предустановлен в GigaIDE);

  • Активированный GigaCode для генерации контента (есть в GigaIDE Community);

  • Team — общая панель управления помощниками (устанавливается из маркетплейса).

Рассмотрим на примере плагина Documenting:

Откройте Settings → Plugins. Найдите Documenting и нажмите Install.

Панель установки
Панель установки

При этом плагин Team установится автоматически. После установки в панели инструментов рядом с Run и Debug появится новая кнопка. Нажмите её — откроется дашборд с результатами анализа и рекомендациями.

Панель инструментов с кнопкой вызова дашборда ИИ-помощников (на скрине имеет фокус)
Панель инструментов с кнопкой вызова дашборда ИИ-помощников (на скрине имеет фокус)

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

Дашборд с одним ИИ-помощником
Дашборд с одним ИИ-помощником

После установки других ИИ-помощников дашборд может выглядеть более «насыщенно».

Некоторые плагины могут требовать перезагрузки IDE. Для отображения дашборда на русском переключите на русский язык:

Settings -> Appearance & Behavior -> System Settings -> Language and Region -> Language. Выберите Russian

Сегодня мы обсудим первые три плагина.

Documenting: управление документированием кода

Пожалуй, самый простой помощник на каждый день. Documenting решает две задачи:

  • Генерирует документацию для типов и методов, в том числе для интерфейсов, анализируя их реализации.

  • Обновляет документацию «на лету» в процессе разработки.

  • Переводит существующую документацию в коде между русским и английским.

Работает в пакетном режиме и inline — можно настроить автоматическое обновление документации прямо во время написания кода. Видеообзор функциональности ниже:

Logging: управление журналированием

Помощник для оптимизации объёма журналирования в проекте. Думаю, многие согласятся, что не все точки журналирования одинаково полезны. Их избыточное количество увеличивает стоимость эксплуатации, а недостаточное — усложняет отладку.

Плагин Logging оценивает эффективность точек журналирования с помощью предиктивной модели: предлагает удалить дублирующие или бесполезные логи и добавить их там, где это действительно нужно. Он анализирует и код, и библиотеки, при необходимости переопределяя их конфигурацию. Также можно просматривать расстановку логов по цепочкам вызовов через отдельный Tool Window.

Работает как в пакетном, так и в inline-режиме, отражая рекомендации в текущем окне редактора. Видеообзор функциональности ниже:

Transactionality: управление транзакционностью вызовов

Плагин Transactionality работает с аннотацией @Transactional и её параметрами. Он ищет избыточно расставленные аннотации или методы, где их не хватает, и предлагает исправления — тоже на основе предиктивной модели. Расстановку @Transactional по цепочкам вызовов можно изучать в отдельном Tool Window.

Как и предыдущие помощники, работает в пакетном и inline-режиме. Так же доступен видеообзор функциональности:

На этом на сегодня всё. Если у вас есть вопросы или предложения по функциональности, пишите в поддержку: https://gitverse.ru/support

Автор: Андрей Слекеничс, PO GIGA IDE