ИИ-агенты обучены на миллионах репозиториев — студенческих работах, туториалах, типовых демо-проектах вроде Petclinic. Когда разработчик просит сгенерировать JPA-сущность или настроить Spring Security, агент выдаёт синтаксически корректный код. Проблема в другом: этот код отражает усреднённые решения из публичных источников, а не соглашения конкретной команды. Lombok или нет? @IdClass или @EmbeddedId? Record или классический класс? Агент не знает и либо угадывает, либо начинает анализировать весь проект через grep.

Prompt engineering частично решает проблему: можно прикладывать примеры сущностей и описывать архитектурные правила в каждом запросе. Но это ручная работа, которую приходится повторять снова и снова. Интеграция в IDE с выбором файлов через @ немного улучшает ситуацию, однако не устраняет необходимость постоянно напоминать агенту о контексте проекта.

SkillНазначениеСтатус
Spring PlanningДекомпозиция задач с учётом архитектурыДоступен
Spring ExploreГлубокий анализ проектаДоступен
Spring Data JPAЛучшие практики кодогенерации JPAДоступен
DTO CreatorГенерация DTO в стиле проектаДоступен
CRUD REST ControllerГенерация CRUD-контроллеровДоступен
Java DebugОтладка Java-кодаВ разработке

Для решения этой проблемы существует механизм Skills — постоянных инструкций, которые агент подгружает автоматически при решении определённых задач. Без Skills агент создаёт Spring Data JPA-репозиторий «как принято в интернете». Со Skills — сначала смотрит, как это сделано в текущем проекте, и только потом применяет свои знания. Однако Skills из публичных агрегаторов вроде SkillHub нередко конфликтуют между собой: один предписывает один стиль, другой — противоположный.

Skills — постоянные инструкции, которые агент подгружает автоматически при решении определённых задач.

Команда Amplicode совместно с сообществом Spring АйО собрала Spring Agent Toolkit — набор Skills и MCP-сервер, изначально спроектированные как единая система. В отличие от случайного набора скиллов из разных источников, здесь всё протестировано на совместимость. MCP-сервер работает через плагин Amplicode для IntelliJ IDEA и OpenIDE и предоставляет агенту специализированные инструменты: list_spring_beans_tool для анализа бинов, get_entity_details для изучения доменной модели, create_migration_script для работы с миграциями, а также возможность запускать и отлаживать приложение прямо из агентного режима.

Среди доступных Skills: Spring Planning для декомпозиции задач с учётом архитектуры, Spring Explore для глубокого анализа проекта, Spring Data JPA с лучшими практиками кодогенерации, DTO Creator для генерации DTO в стиле, уже принятом в проекте, CRUD REST Controller и Java Debug (последний пока в разработке). Набор продолжает пополняться — актуальный список доступен в репозитории на GitHub.

Установка Skills глобально для всех обнаруженных агентов выполняется одной командой: npx skills add Amplicode/spring-skills -g. Для выборочной установки под конкретные агенты — Claude Code, Codex или Gemini CLI — используется флаг -a. Обсуждение и обратная связь ведутся в телеграм-каналах Spring АйО и Amplicode.