crg CLI
CLI и MCP-сервер строят граф кода через Tree-sitter, чтобы агент при ревью читал только нужные функции и тратил меньше токенов
- 76 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Граф хранится на диске и содержит структуру и фрагменты вашего кода
- В HTTP-режиме открывается порт, а Docker-вариант закрыт токеном и слушает только loopback
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/crgОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Граф хранится на диске и содержит структуру и фрагменты вашего кода
- В HTTP-режиме открывается порт, а Docker-вариант закрыт токеном и слушает только loopback
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
crg разбирает код через Tree-sitter и строит граф функций, классов и импортов. Агент получает точный контекст изменения и читает только то, что важно, без обхода всего дерева репозитория. Основной интерфейс — команда `crg`, MCP-сервер идет вторым. Команда `crg graph build --full-rebuild --repo-root /path` собирает граф, `crg query search --search-query "authentication"` ищет по нему. Семантический поиск по умолчанию идет через локальный реестр ONNX-моделей из fastretrieval, без ключа API и настройки. Облачную цепочку эмбеддингов можно включить отдельно. Поиск по нескольким словам, разрешение вызовов по полному имени и постраничный вывод исправлены относительно исходного code-review-graph. Версия 2.0 добавила во все узлы и ребра временные столбцы `valid_from_sha` и `valid_to_sha` и необязательный сканер безопасности. В репозитории лежат скиллы `build-graph`, `review-delta` и `review-pr`, которые вызывают CLI напрямую и не требуют MCP. Для постоянного режима есть HTTP-сервер: `n24q02m-crg server start` слушает `127.0.0.1:8000/mcp`, а Docker-вариант закрыт токеном и публикуется только на loopback.
Для кого. Разработчикам и командам, у которых агент делает ревью больших репозиториев и сжигает токены на чтении целых файлов.
Подходит, если
- Ревью PR в большом репозитории, где агенту нужны только измененные функции и их вызовы
- Поиск по смыслу в коде без ключа API, на локальной модели
- Нужно понять, какие функции затрагивает изменение: помогает разрешение вызовов по полному имени
- Граф должен помнить состояние по коммитам: во всех узлах есть столбцы `valid_from_sha`
- Один и тот же граф нужен нескольким агентам через общий HTTP-сервер с токеном
Не подходит, если
- Нужен простой текстовый поиск: хватит `grep`, граф для него избыточен
- Вы не можете поставить Python 3.13 или `uv`
- Код на языке, которого нет в наборе Tree-sitter проекта
Пример запроса к агенту
Построй граф репозитория и найди функции, которые связаны с авторизацией, затем покажи, что затрагивает мой последний коммит.Ограничения
Нужен Python 3.13. Дистрибутив на PyPI называется `n24q02m-crg`, старое имя `better-code-review-graph` осталось псевдонимом команды. Релиз 2.0 ломает совместимость: схема базы мигрирует при первом открытии, копия старой базы сохраняется в `<graph_db>.pre-2.0.bak`, возврат на 1.x включается через `CRG_DOWNGRADE_TO_1_X=1`. Сканер безопасности ставится экстрой `[security]`. Хостинга нет, HTTP-режим работает только на вашей машине. Для моделей чата, rerank и эмбеддингов заданы отдельные провайдеры в `[models.<task>]`.
Как отключить. Удалите плагин командой `/plugin uninstall crg`, MCP-запись командой `claude mcp remove crg` и пакет командой `pip uninstall n24q02m-crg`. Графы лежат в каталоге конфигурации `~/.crg`, его можно удалить.
Частые вопросы
Как запустить crg без установки?
Командой `uvx --python 3.13 --from n24q02m-crg crg graph build --full-rebuild --repo-root /path/to/repo`. Короткое имя `crg` требует явного `--from`.
Как подключить crg к Claude Code по MCP?
Командой `claude mcp add crg -- uvx --python 3.13 n24q02m-crg` или через плагин из маркетплейса n24q02m/claude-plugins.
Нужен ли ключ API для семантического поиска?
Нет. По умолчанию работает локальная модель ONNX без ключа. Облачные эмбеддинги включаются через `EMBEDDING_MODELS`.
Чем crg отличается от code-review-graph?
Это форк с исправленным поиском по нескольким словам, разрешением вызовов по полному имени, режимами эмбеддингов, постраничным выводом и готовым CI.
Что делать при обновлении до версии 2.0?
Схема мигрирует сама при первом открытии графа, копия старой базы остается рядом. Подробности и откат описаны в `BREAKING_CHANGES.md`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыЛокальный граф структуры кода: строит карту репозитория через tree-sitter и отдает агенту по MCP только тот контекст, который относится к правке
Локальный граф знаний о коде с историей версий: MCP-сервер отвечает агенту, кто вызывает функцию и что сломается от правки
Deep Graph MCP — граф кода репозитория для агента
Deep Graph MCP
MCP-сервер дает агенту граф кода репозитория: поиск функций по смыслу, связи символов и список мест, которые заденет правка
DevLens строит граф репозитория один раз, и агент по MCP получает ранжированные файлы, вызовы и радиус изменений
MCP-сервер строит граф знаний о коде: поиск по смыслу, граф вызовов, трассировка HTTP-маршрутов и анализ влияния правок.
MCP-сервер, который строит граф кода: функции, классы, вызовы и маршруты, и отвечает на структурные запросы агента локально
Коротко о README
Описаны переименование проекта, миграция на версию 2.0, установка в агентов, режимы stdio и HTTP, настройка моделей по задачам, CLI, возможности и модель доверия.