repo-graph — граф кода для навигации агента
repo-graph
MCP-сервер строит граф сущностей, связей и потоков кода, и агент находит нужные файлы, не читая репозиторий целиком
- 50 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Сервер читает исходники репозитория и пишет кэш в .glia/graph
- Команда install правит конфигурацию агентов и выдает автоматическое разрешение на вызовы
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/repo-graphОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Сервер читает исходники репозитория и пишет кэш в .glia/graph
- Команда install правит конфигурацию агентов и выдает автоматическое разрешение на вызовы
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
repo-graph один раз сканирует репозиторий и строит граф: модули, классы, функции, маршруты, сервисы и компоненты, а также связи между ними, то есть импорты, вызовы и межстековые HTTP-запросы. Агент работает с шестью инструментами: `orient`, `find`, `impact`, `trace`, `read` и `refresh`. Он получает карту проекта в несколько сотен токенов вместо тысяч строк кода. Граф связывает вызов `fetch` или `axios` на фронтенде с маршрутом и обработчиком на бэкенде, даже если у сторон нет общей строки. То же делают gRPC, GraphQL, WebSocket, очереди и события. Поддерживаются Go, Rust, TypeScript, React, Angular, Vue, Python, Java и Kotlin, Scala, C#, Ruby, PHP, Swift, C и C++, Dart, Elixir, Solidity и Terraform. Инструмент `impact` считает радиус поражения правки, `trace` проводит функцию от маршрута до данных, а `find` принимает и текст ошибки или стектрейс. Если ответа нет, сервер отличает факт от эвристики. Каждый инструмент работает и как команда оболочки, например uvx mcp-repo-graph `find` `checkout`.
Для кого. Разработчикам монорепозиториев, многосервисных систем и унаследованного кода, где агент тратит контекст на чтение лишних файлов.
Подходит, если
- Монорепозиторий с фронтендом и бэкендом на разных языках, а ошибка идет через границу HTTP-вызова
- Незнакомый унаследованный проект, где неясно, что и чем затронуто
- Нужен радиус поражения правки в сервисе платежей до того, как ее вносить
- Падает тест, и стектрейс надо превратить в список файлов для чтения
- Функциональность проходит через очередь, событие и gRPC между несколькими сервисами
Не подходит, если
- Небольшой проект на одном языке с понятной задачей: модель прочтет файлы сама, и граф будет лишним слоем
- Цель в экономии токенов: сам слой MCP добавляет постоянную стоимость на каждый ход
- Нужен анализ языка вне списка: для него граф получится неполным, и инструмент `orient` покажет слепые зоны
- Код нельзя сканировать на локальной машине, а запускать нужно только удаленно
Пример запроса к агенту
Проведи вход пользователя от маршрута до базы данных и покажи, что сломается, если я изменю UserService.MCP
- Транспорт
- stdio
- Авторизация
- не нужна
Переменные окружения
REPO_GRAPH_WATCH- Значение 0 отключает наблюдатель за файлами
Ограничения
Нужны Python 3.11 и uv для запуска через uvx, колеса с движком на Rust есть для Linux, macOS и Windows. Наблюдатель за файлами держит граф в памяти: около 165 МБ на проекте в 3,5 тысячи узлов и до 940 МБ на очень большом, REPO_GRAPH_WATCH=0 его отключает.
Первый запуск в каждом репозитории разбирает все заново. Ссылки между сторонами строятся эвристикой, поэтому сервер помечает слепые зоны и вид ответа: факт или предположение. Выигрыш по токенам автор показал на одном случае, исправлении оператора в проекте на Go и Angular, и обобщать его на любой репозиторий нельзя.
Как отключить. Выполните uvx mcp-repo-graph `uninstall`: команда уберет конфигурацию, блок инструкций и разрешения у всех агентов и оставит данные графа в папке .glia/graph. Папку можно удалить вручную.
Частые вопросы
Как поставить repo-graph одной командой?
Команда uvx mcp-repo-graph install находит Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Codex, Gemini CLI, `opencode` и Kiro, пишет их MCP-конфигурацию и добавляет блок инструкций. С флагом --dry-run команда лишь показывает план и ничего не меняет.
Нужен ли MCP-сервер, чтобы пользоваться графом?
Нет. Каждый из шести инструментов доступен командой оболочки, например uvx mcp-repo-graph `trace` `login`. Постоянный MCP-сервер удобен в долгой сессии агента, а команды выгодны для CI и редких вопросов: загрузка графа занимает около 0,6 секунды на проекте в три тысячи узлов.
Что делает инструмент `impact`?
Показывает радиус поражения правки: что она затронет вперед или от чего зависит назад, с причиной связи в каждой строке. Большой радиус выдается обзором из 25 строк, дальше ответ сужают через `scope` или просят все строки флагом `full`.
Отправляются ли мой код и граф куда-нибудь?
Нет. Телеметрии, проверок обновлений и сбора данных нет, граф лежит в .glia/graph проекта. Сеть нужна только для установки пакетов и при указании git-адреса в --repo.
На каких языках работает граф?
Go, Rust, TypeScript с React, Angular и Vue, Python, Java и Kotlin, Scala, Clojure, C#, Ruby, PHP, Swift, C и C++, Dart, Elixir, Solidity, Terraform и SCSS. Какие места извлечены не полностью, показывает `orient` в слепых зонах.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыCodeGraph на Rust
codegraph-rust
Граф кода для агента на Rust: четыре MCP-инструмента показывают, что заденет правка, как устроена архитектура и где хрупкие места проекта
Граф кода и память проекта в одной программе на Rust: агент получает выдержки из файлов со ссылкой на строки
Локальный граф структуры кода: строит карту репозитория через tree-sitter и отдает агенту по MCP только тот контекст, который относится к правке
Локальный граф кода для агентов: MCP-сервер отдает точки входа, связи символов и радиус влияния изменений за один вызов
Deep Graph MCP — граф кода репозитория для агента
Deep Graph MCP
MCP-сервер дает агенту граф кода репозитория: поиск функций по смыслу, связи символов и список мест, которые заденет правка
CLI и MCP-сервер строят граф кода через Tree-sitter, чтобы агент при ревью читал только нужные функции и тратил меньше токенов
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| repo-graph — граф кода для навигации агента (эта карточка) | нет | не нужна | 50 | |
| CodeGraph | нет | не нужна | 77 481 | граф кода без упора на связи между языками и сервисами |
| Serena | нет | не нужна | 31 335 | семантические операции через языковые серверы, у repo-graph граф строится движком на Rust |
Коротко о README
README объясняет проблему траты контекста на ориентацию, затем показывает демо на проекте с Go и Angular: 75 308 токенов и 4 минуты 36 секунд без графа против 29 838 токенов и около 30 секунд с ним. Дальше таблица языков, установка по клиентам, справочник инструментов, принцип работы, формат данных и политика конфиденциальности.