Appearance
Code-агенты: исследование и анализ кода
Семейство Code-агентов в Unishift Platform предназначено для глубокого исследования кодовой базы, анализа архитектуры и межсервисных зависимостей, инспекции схем баз данных и проведения автоматизированного код-ревью.
Все агенты семейства поддерживают наследование MCP (Model Context Protocol): инструменты поиска по коду, чтения файлов и работы с репозиторием подтягиваются автоматически из контекста чата, рабочего пространства или зарегистрированных в платформе MCP-серверов.
Каталог Code-агентов
| Агент | Идентификатор (slug) | Назначение | Ключевые инструменты |
|---|---|---|---|
| Code Architect | code-architect | Исследование архитектуры, выявление паттернов и построение диаграмм | create_drawio, read_drawio, update_drawio, search_knowledge_base, MCP-поиск кода |
| Code Relations | code-relations | Анализ графа связей, зависимостей микросервисов и структуры вызовов | search_tables, get_table, search_knowledge_base, MCP-поиск кода |
| Code Reviewer | code-reviewer | Проверка кода на безопасность, надёжность, производительность и стиль | search_knowledge_base, ask_user, search_tasks, get_task, MCP-чтение кода |
| DB Inspector | db-inspector | Анализ схем PostgreSQL, индексов, внешних ключей и генерация миграций | search_tables, get_table, list_table_rows, create_file, MCP-поиск миграций |
Наследование MCP-инструментов
В отличие от узкоспециализированных встроенных агентов (генераторов документов или презентаций), Code-агенты спроектированы для работы с внешними инструментами исследования кода через MCP (например, Code Context Engine / CCE, git-серверами или поисковыми утилитами).
Как работает доступ к инструментам
- Контекст чата и пространства: Если в чате пространства или в настройках чата подключены MCP-серверы (например,
cce,gateway,gitlab), агент автоматически получает доступ к их инструментам (mcp__{slug}__{tool}). - Глобальный fallback: Если у чата не задан индивидуальный список серверов, агент обнаруживает активные серверы в MCP Gateway.
- Сохранение инструментов: Роутер инструментов платформы гарантированно сохраняет инструменты исследования (
context_search,expand_chunk,grep,read_file,session_recall,related_context) для запросов к Code-агентам, предотвращая их исключение из контекста модели.
1. Code Architect (code-architect)
Агент отвечает за высокоуровневый архитектурный анализ репозиториев, декомпозицию систем на компоненты и визуализацию структуры сервисов.
Инструменты
- Схемы draw.io:
create_drawio,read_drawio,update_drawio— автоматическая генерация диаграмм компонентов и потоков данных. - База знаний (RAG):
search_knowledge_base— поиск по внутренней технической документации и архитектурным решениям (ADR). - MCP:
context_search,expand_chunk,related_context— навигация по файлам репозитория.
Типичные запросы
- «Как устроена авторизация и валидация токенов в сервисе gateway?»
- «Исследуй модуль платежей и сгенерируй C4-диаграмму компонентов в draw.io»
- «Какие архитектурные паттерны используются в ai-router при обработке сообщений?»
Формат ответа
- Назначение модуля/сервиса: краткое описание ответственности.
- Ключевые компоненты: таблицы, сервисные структуры, обработчики.
- Взаимодействие и зависимости: внутренние и внешние интеграции.
- Архитектурная схема: сгенерированный файл
.drawioс визуализацией.
2. Code Relations (code-relations)
Агент специализируется на построении графа связей: цепочки вызовов функций, маршруты прохождения событий NATS, зависимости между сервисами и схемы внешних ключей в базе данных.
Инструменты
- База данных:
search_tables,get_table— инспекция структуры таблиц и внешних ключей. - База знаний:
search_knowledge_base— поиск описания зависимостей в документации. - MCP: поиск импортов, вызовов функций, маршрутов REST и NATS-топиков через
context_search.
Типичные запросы
- «Какие микросервисы зависят от сервиса storage и какие методы они вызывают?»
- «Построй граф вызовов для функции RunSubAgentTurn»
- «Где в коде используется таблица ai_chat_agents и какие поля читаются чаще всего?»
Формат ответа
- Цель анализа: исследуемый узел или интерфейс.
- Граф связей: входящие и исходящие зависимости.
- Оценка влияния (Blast Radius): какие модули затронет изменение сигнатуры или схемы.
- Рекомендации по безопасному изменению: шаги по рефакторингу без поломки обратной совместимости.
3. Code Reviewer (code-reviewer)
Агент выполняет структурированное ревью кода или предложенных изменений (diff / pull request) по стандартам безопасности, надёжности и производительности.
Категории проверки
- Безопасность: SQL-инъекции, path traversal, утечка учетных данных, отсутствие валидации входящих параметров.
- Производительность: N+1 запросы к базе данных, утечки памяти, неэффективные блокировки и циклы.
- Надёжность: обработка ошибок, горутинные утечки, race conditions, корректность таймаутов контекста.
- Стандарты проекта: соблюдение кодстайла, конвенций логирования (
log/slog) и именования.
Формат замечаний
Каждая находка оформляется в стандартизированном виде:
text
[SEVERITY: critical | high | medium | low] ПУТЬ_К_ФАЙЛУ:СТРОКА
Проблема: краткое описание обнаруженного дефекта
Стандарт: ссылка на правило или соглашение команды
Влияние: к чему приведет дефект в продакшене
Исправление: конкретный фрагмент кода с исправлением4. DB Inspector (db-inspector)
Агент предназначен для анализа реляционных схем PostgreSQL, аудита индексов и составления безопасных миграций баз данных.
Инструменты
search_tables— поиск таблиц по маске или префиксу.get_table— получение структуры колонок, первичных ключей, ограничений и индексов.list_table_rows— просмотр выборок данных и справочников.create_file— формирование готовых файлов миграций (SQL или Go-миграций).
Типичные запросы
- «Покажи схему таблицы ai_chat_agents со всеми индексами и ограничениями»
- «Составь безопасную миграцию добавления колонки metadata с типом JSONB в таблицу tasks»
- «Проверь, есть ли нехватающие индексы для часто используемых фильтров в chat_repository»