Обзор крупного обновления @er77/code-graph-rag-mcp — теперь с поддержкой C++, Rust, Go, Java и производительностью x5.5.

Привет, Хабр!
Примерно месяц назад я рассказывал о проекте @er77/code-graph-rag-mcp
— инструменте, который превращает LLM из простого генератора кода в полноценного члена команды с глубоким пониманием архитектуры вашего проекта. Сегодня я рад представить самое крупное обновление, которое выводит анализ кода на совершенно новый уровень. Мы не просто добавили новые функции, мы кардинально расширили возможности инструмента, увеличили его производительность и добавили поддержку десяти языков программирования.
Что нового: от универсала к полиглоту с турбонаддувом
Главное изменение — это, без сомнения, расширение поддержки языков до десяти. Теперь, помимо глубокого анализа Python и TypeScript/JavaScript, инструмент полноценно работает с C/C++, C#, Rust, Go, Java и даже VBA. Это превращает @er77/code-graph-rag-mcp
в настоящий мульти-языковой аналитический центр.
Но и это еще не все. Производительность была и остается нашим главным приоритетом. Свежие тесты показывают, что новая версия работает в 5.5 раз быстрее, чем нативные инструменты Claude, при этом потребляя всего около 65 МБ памяти.
Метрика | Нативные инструменты Claude | MCP CodeGraph | Улучшение |
---|---|---|---|
Время выполнения | 55.84 с | <10 с | в 5.5 раз быстрее |
Использование памяти | Зависит от процесса | 65 МБ | Оптимизировано |
Функциональность | Базовые шаблоны | 13+ инструментов | Комплексный анализ |
Точность | На основе шаблонов | Семантическая | Превосходная |
Ключевые возможности: более 13 инструментов для глубокого анализа
Новая версия включает в себя более 13 продвинутых инструментов, которые позволяют:
Семантический поиск: Задавайте вопросы о коде на естественном языке, например, «Найди все функции аутентификации».
Анализ схожести кода: Обнаруживайте дубликаты и клоны для выявления возможностей рефакторинга.
Анализ влияния изменений: Оценивайте потенциальные риски перед внесением правок в код.
Рефакторинг с помощью ИИ: Получайте интеллектуальные предложения по улучшению качества кода.
Анализ "горячих" точек: Находите проблемные зоны, используя метрики сложности и связанности.
Межъязыковые связи: Отслеживайте зависимости между компонентами в полиглотных проектах.
Диагностика графа: Используйте инструменты
get_graph_health
,reset_graph
иclean_index
для поддержания актуальности и целостности данных.
Архитектура высокой производительности
Такая скорость и эффективность достигаются за счет продуманной архитектуры:
Скорость парсинга: Более 100 файлов в секунду благодаря использованию Tree-sitter.
Время отклика: Менее 100 мс на запросы благодаря оптимизированному SQLite и векторному поиску.
Многоагентная система: Координированное выполнение задач с управлением ресурсами.
Векторный поиск: Опциональная поддержка аппаратного ускорения.
Анализ AST: Точное извлечение фрагментов кода с семантическим контекстом.
Глубокая поддержка языков: от C++ до VBA
Давайте подробнее рассмотрим, что именно мы поддерживаем в новых языках:
Язык | Уровень поддержки | Ключевые особенности |
---|---|---|
Python | ✅ Продвинутый (95%) | Async/await, декораторы, более 40 магических методов, dataclasses. |
TypeScript/JS | ✅ Полный (100%) | ES6+, JSX, TSX, паттерны React. |
C/C++ | ✅ Продвинутый (90%) | Функции, классы, пространства имен, шаблоны, структуры, объединения, перечисления. |
C# | ✅ Продвинутый (90%) | Классы, интерфейсы, свойства, LINQ, async/await. |
Rust | ✅ Продвинутый (90%) | Функции, структуры, перечисления, трейты, модули. |
Go | ✅ Продвинутый (90%) | Пакеты, функции, структуры, интерфейсы, горутины, каналы. |
Java | ✅ Продвинутый (90%) | Классы, интерфейсы, дженерики, лямбда-выражения, записи (Java 14+). |
VBA | ✅ На основе Regex (80%) | Модули, процедуры, функции, пользовательские типы. |
Особое внимание было уделено C++, где мы внедрили двухуровневую архитектуру анализа (синтаксический и семантический слои) и предохранители (circuit breakers) для предотвращения перегрузки системы при анализе сложного кода, например, с глубокой рекурсией или сложными шаблонами.
Быстрый старт и интеграция
Начать работу стало еще проще.
Установка:
# Глобальная установка
npm install -g @er77/code-graph-rag-mcp
# Или использование без установки через npx
npx @er77/code-graph-rag-mcp /путь/к/вашему/проекту
Интеграция с Claude Desktop:
# Быстрая настройка (рекомендуется)
claude mcp add-json code-graph-rag ' {
"command": "npx",
"args": ["@er77/code-graph-rag-mcp", "/_work_fodler"],
"env": {
"MCP_TIMEOUT": "80000"
}
}
Мы также добавили вспомогательные скрипты для легкой интеграции с Gemini CLI и Codex CLI.
Примеры использования
С Claude Desktop:
"Какие сущности есть в моей кодовой базе?"
"Найди код, похожий на эту функцию"
"Проанализируй влияние изменения этого класса"
"Предложи рефакторинг для этого файла"
Для нескольких проектов:
"Проанализируй структуру кодовой базы frontend-app"
"Найди функции аутентификации в backend-api"
"Сравни управление пользователями во всех проектах"
Заключение
С последними обновлениями @er77/code-graph-rag-mcp
превратился в незаменимый инструмент для разработчиков, работающих со сложными и многоязычными проектами. Он дает LLM "архитектурное зрение", позволяя ей стать настоящим цифровым ассистентом, который понимает не только синтаксис, но и семантику вашего кода. Это открывает новые горизонты для автоматизации, анализа и рефакторинга.
Попробуйте сами и дайте вашей LLM суперсилу — знание вашего кода.
Ссылки: