README_ru.md

August 19, 2026 · View on GitHub

 ▄▀▀▀ █▀▀▄ ▄▀▀▄ █▀▀█ █▀▀▀ █▀▀▄ ▄▀▀▄ ▄▀▀▄ ▀█▀
 █ ▀▄ █▄▄▀ █▄▄█ █▄▄█ █▀▀  █▄▄▀ █  █ █  █  █
 ▀▀▀▀ ▀ ▀▀ ▀  ▀ █    ▀▀▀▀ ▀ ▀▀ ▀▀▀▀ ▀▀▀▀  ▀

Накапливающийся контекст для ИИ-ассистентов разработки

graperoot.dev · Docs · Benchmarks · Pro · Discord

PyPI License Platform Discord Stars


🌐 Читать на своём языке: English · 中文 · Español · हिंदी · Français · Deutsch · 日本語 · 한국어 · Português · Русский · العربية · Türkçe · Bahasa Indonesia


Что такое GrapeRoot?

GrapeRoot — это open-source контекстный движок, который встаёт между вами и вашим ИИ-ассистентом по разработке. Он строит семантический граф вашей кодовой базы — файлы, символы, импорты, цепочки вызовов — и автоматически загружает в каждый запрос именно тот код, который нужен, ещё до того как его увидит ИИ.

Результат: ИИ тратит токены на рассуждение, а не на исследование.

Вы запускаете: dgc /path/to/project

1. Проект сканируется → строится семантический граф (файлы, символы, импорты)
2. Вы задаёте вопрос
3. Граф определяет нужные файлы → упаковывает их в контекст
4. ИИ получает ваш вопрос + уже загруженный нужный код
5. Меньше итераций, меньше токенов, лучше ответы

Экономия токенов накапливается на протяжении сессии. Граф запоминает, какие файлы читались, редактировались и запрашивались — каждая итерация становится дешевле предыдущей.


Результаты

Протестировано на нескольких реальных кодовых базах (более 7 700 файлов) и более чем 50 инженерных промптах:

МетрикаБез GrapeRootС GrapeRoot
Стоимость на промпт$0.49$0.27
Среднее число ходов на задачу11.73.5
Среднее время ответа172s124s
Качество (оценка)76.6 / 10086.6 / 100
Доля побед по стоимости10 из 10 промптов

Снижение стоимости по типам задач

Тип задачиСнижение стоимости
Миграция и проектирование архитектурыдо 81%
Анализ производительностидо 80%
Тестирование и генерация тестовдо 76%
Full-stack отладкадо 73%
Разработка функциональностидо 71%
Объяснение и аудит кодадо 55%
Большая кодовая база (7k+ файлов, средн.)43% в среднем

Экономия накапливается на протяжении всей сессии — токен, сэкономленный на ходу 3, также исключает повторное списание за кэш на каждом следующем ходу. Качество остаётся на том же уровне или улучшается для каждого из перечисленных типов задач.

Полная методология и результаты бенчмарков: graperoot.dev/benchmarks


Поддерживаемые инструменты ИИ

ИнструментКомандаСтатус
Claude Codedgc✅ Полная поддержка
OpenAI Codex CLIdg✅ Полная поддержка
Cursorgraperoot . --cursor✅ Полная поддержка
Gemini CLIgraperoot . --gemini✅ Полная поддержка
OpenCodegraperoot . --opencode / dgo✅ Полная поддержка
GitHub Copilotgraperoot . --copilot✅ Полная поддержка
OpenClawgraperoot . --openclaw✅ Полная поддержка
Kilocodegraperoot . --kilocode✅ Полная поддержка
MiMo Codegraperoot . --mimocode✅ Полная поддержка
Antigravitygraperoot . --antigravity✅ Полная поддержка

Поддерживаемые языки программирования

TypeScript · JavaScript · Python · Go · Swift · Rust · Java · Kotlin · Scala · C# · Ruby · PHP


Установка

macOS / Linux:

curl -sSL https://raw.githubusercontent.com/kunal12203/Codex-CLI-Compact/main/install.sh | bash
source ~/.zshrc   # или ~/.bashrc / ~/.profile

Windows (PowerShell):

irm https://raw.githubusercontent.com/kunal12203/Codex-CLI-Compact/main/install.ps1 | iex

Windows (Scoop):

scoop bucket add dual-graph https://github.com/kunal12203/scoop-dual-graph
scoop install dual-graph

Требования: Python 3.10+, Node.js 18+ и один из поддерживаемых ИИ-инструментов. Установщик определяет отсутствующие компоненты и предлагает установить их автоматически.


Использование

Важно: Всегда используйте dgc (а не claude напрямую), чтобы MCP-сервер запускался корректно.

Claude Code

dgc                                      # сканировать текущую директорию, запустить Claude
dgc /path/to/project                     # сканировать конкретный проект
dgc /path/to/project "fix the login bug" # начать с готового промпта

OpenAI Codex CLI

dg                              # сканировать текущую директорию
dg /path/to/project             # сканировать конкретный проект
dg /path/to/project "add tests" # начать с готового промпта

Интерактивный выбор (новое в v3.9.99)

graperoot          # показывает подтверждение директории + выбор инструмента стрелками
graperoot .        # то же самое, выбор из текущей директории
graperoot --version   # вывести текущую версию
graperoot --update    # принудительное самообновление

Все инструменты через graperoot

graperoot . --cursor          # Cursor
graperoot . --gemini          # Gemini CLI
graperoot . --opencode        # OpenCode
graperoot . --copilot         # GitHub Copilot
graperoot . --openclaw        # OpenClaw
graperoot . --kilocode        # Kilocode
graperoot . --mimocode        # MiMo Code
graperoot /path --gemini "add tests"   # конкретный проект + промпт

Windows

dgc .                          # из директории проекта
dgc "D:\projects\my-app"       # любой диск, любой путь
dg "C:\work\backend"           # Codex CLI
dgc --gemini "D:\projects\app" # Gemini CLI на Windows

Как это работает

  1. Сканирование графа — при первом запуске GrapeRoot извлекает файлы, функции, классы и отношения импортов в локальный граф, хранящийся в .dual-graph/.
  2. Извлечение контекста — при каждом вопросе граф ранжирует наиболее релевантные файлы и упаковывает их в промпт ещё до того, как его увидит ИИ.
  3. Память сессии — файлы, которые вы читали, редактировали или запрашивали, получают более высокий вес в следующих итерациях. Контекст накапливается.
  4. MCP-инструменты — ИИ всё ещё может углубляться с помощью граф-осведомлённых инструментов (graph_read, graph_retrieve, graph_neighbors), когда ему нужно исследовать подробнее.

Вся обработка выполняется локально. Код не покидает вашу машину.


Данные и файлы

Все данные хранятся в <project>/.dual-graph/ (автоматически добавляется в .gitignore):

ФайлОписание
info_graph.jsonСемантический граф: файлы, символы, рёбра
chat_action_graph.jsonПамять сессии: чтения, правки, запросы
context-store.jsonПостоянные решения/задачи/факты между сессиями

Глобальная установка в ~/.dual-graph/:

ФайлОписание
dgc.ps1 / dg.ps1Скрипты запуска (обновляются автоматически)
venv/Виртуальное окружение Python
version.txtУстановленная версия

Конфигурация

Все параметры опциональны и задаются через переменные окружения:

ПеременнаяЗначение по умолчаниюОписание
DG_HARD_MAX_READ_CHARS4000Максимум символов при чтении одного файла
DG_TURN_READ_BUDGET_CHARS18000Общий бюджет чтения на одну итерацию
DG_FALLBACK_MAX_CALLS_PER_TURN1Максимум резервных grep-вызовов за итерацию
DG_RETRIEVE_CACHE_TTL_SEC900TTL кэша извлечения (15 мин)
DG_MCP_PORTавто (8080–8099)Принудительно указать порт MCP-сервера

Автообновление

Лаунчер проверяет наличие обновлений при каждом запуске и обновляется в фоне автоматически. Чтобы принудительно запустить обновление:

graperoot --update

Чтобы отключить автообновление:

graperoot --no-auto-update

Чтобы снова включить:

graperoot --auto-update

Текущая версия: 3.10.16


Телеметрия

GrapeRoot собирает анонимные отчёты о сбоях для помощи в исправлении ошибок. Что отправляется: тип ошибки, на каком шаге произошёл сбой, версия ОС/Python, версия GrapeRoot. Никогда не отправляется: ваш код, пути к файлам, названия проектов или личные данные.

graperoot --no-telemetry    # disable
graperoot --telemetry       # re-enable

GrapeRoot Pro

GrapeRoot Pro добавляет расширенные возможности для опытных пользователей:

  • Режим исчерпывающих задач — глубокий многофайловый анализ для сложных рефакторингов
  • Обнаружение мёртвых экспортов — поиск неиспользуемых экспортов по всей кодовой базе
  • Поиск циклических зависимостей — обнаружение цепочек кругового импорта
  • Поиск по нескольким репозиториям — семантический поиск по нескольким проектам одновременно
  • Защита от отмены — хуки перед выполнением инструментов, защищающие от деструктивных операций

Устранение неполадок

«MCP Server Connection Failed»

Всегда используйте dgc вместо прямого вызова claude. dgc запускает MCP-сервер автоматически.

# Решение:
claude mcp remove dual-graph
dgc   # повторно регистрирует всё необходимое

Полное руководство по устранению неполадок

См. TROUBLESHOOTING.md или graperoot.dev/docs.


Вклад в разработку

Скрипты запуска (bin/) распространяются с открытым исходным кодом под лицензией Apache 2.0. Pull request'ы приветствуются — исправления ошибок, поддержка новых ИИ-ассистентов, улучшения установщика, документация.

Примечание: Графовый движок (pip-пакет graperoot) является проприетарным. Лаунчеры и инструменты в этом репозитории полностью open source.


Сообщество

Есть вопрос, нашли баг или хотите поделиться отзывом?

Присоединяйтесь к Discord →


История звёзд

Star History Chart

Лицензия

Скрипты запуска и инструменты в этом репозитории: Apache License 2.0

Графовый движок graperoot (PyPI): проприетарный. См. graperoot.dev/graperoot-pro.


Made with ❤️ · graperoot.dev · Discord