Если ваш AI-агент при каждом вопросе перечитывает одни и те же файлы, он зря тратит время и токены на задачи, ответ на которые можно получить почти мгновенно. При работе с Claude Code и другими AI-агентами над средним проектом Django часто проявляется одна и та же проблема.

Например, запрос «Какие функции вызывают эту?» заставляет агента прочёсывать значительную часть репозитория. Агент расходует тысячи токенов, работает дольше нужного и иногда всё равно пропускает вызов функции, скрытый где-то в проекте.

Именно здесь помогает codebase-memory-mcp. Вместо того чтобы каждый раз сканировать проект с нуля, он строит граф знаний вашей кодовой базы один раз. После этого агент может отвечать на структурные вопросы, обращаясь к графу, что значительно ускоряет ответы и повышает их точность.

Инструмент написан на C, распространяется как один статический бинарник, не требует зависимостей для выполнения и из коробки поддерживает 158 языков программирования.

В этом руководстве вы узнаете, как установить codebase-memory-mcp на Linux, подключить его к AI-агенту, создать первый индекс кода и начать выполнять быстрые контекстные запросы.

Что на самом деле делает codebase-memory-mcp

Прежде чем устанавливать codebase-memory-mcp, полезно понять, что именно он делает.

Это не модель искусственного интеллекта и не помощник по кодированию. Это бэкенд для анализа кода, который помогает AI-агентам в разы эффективнее понимать ваш проект.

Он использует tree-sitter для разбора исходного кода и строит граф знаний, который содержит информацию о функциях, классах, вызовах методов, импортах, HTTP-маршрутах и других взаимосвязях внутри проекта. Граф хранится локально в базе SQLite.

Когда вы задаёте вопрос AI-агенту, такие инструменты, как Claude Code, Codex CLI, Gemini CLI и другие агенты, совместимые с MCP, могут запрашивать этот граф через Model Context Protocol (MCP), вместо того чтобы каждый раз просматривать файлы проекта. Это значительно ускоряет ответы и резко сокращает расход токенов.

Результаты бенчмарков проекта наглядно демонстрируют эффект. Пять структурных запросов к коду, которые при прямом сканировании файлов обычно требовали около 412 000 токенов, при ответе из графа знаний расходовали всего около 3 400 токенов. Это сокращение расхода примерно на 99%.

Процесс индексирования также впечатляет скоростью. Судя по бенчмаркам проекта, индексация ядра Linux (около 28 миллионов строк кода в 75 000 файлах) занимает около 3 минут на Apple M3 Pro.

Ещё одно достоинство: всё работает локально на вашей машине. Проект также утверждает, что не собирает телеметрию, поэтому ваш код никогда не покидает систему.

Необходимые условия

Перед началом убедитесь, что у вас есть следующее:

  • Система Linux на архитектуре x86_64 или ARM64.
  • Уже установленный AI-агент с поддержкой MCP, например Claude Code.

Хорошая новость в том, что Docker, виртуальное окружение Python и ключи API не нужны. Установочный скрипт сам скачивает бинарник, размещает его в нужной директории и автоматически настраивает агента.

Шаг 1. Установка codebase-memory-mcp

Проще всего установить codebase-memory-mcp на любой Linux-дистрибутив с помощью однострочной команды. Бинарник не привязан к конкретному дистрибутиву, поэтому одна и та же команда работает практически во всех системах.

curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash

Вот что делает эта команда:

  • curl -fsSL скачивает установочный скрипт.
  • -f останавливает загрузку, если сервер возвращает ошибку.
  • -s скрывает прогресс загрузки.
  • -S показывает сообщение об ошибке при сбое загрузки.
  • -L переходит по редиректам с GitHub URL.
  • Наконец, скачанный скрипт передаётся напрямую в bash, который запускает установщик.

Если вы хотите также установить встроенный 3D-интерфейс визуализации графа, добавьте флаг --ui:

curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash -s -- --ui

Если установщик показывает вашего агента в разделе Detected agents, значит, интеграция с MCP настроена автоматически.

Если раздел Detected agents пуст, убедитесь, что конфигурационная директория агента существует, и запустите установщик ещё раз.

Шаг 2. Проверка установки

Сначала убедитесь, что бинарник codebase-memory-mcp доступен в PATH, выполнив:

which codebase-memory-mcp

Если установка прошла успешно, вывод будет таким:

/home/ravi/.local/bin/codebase-memory-mcp

Если which ничего не выводит, ваша оболочка ещё не видит директорию установки, добавьте её в PATH вручную:

export PATH="$HOME/.local/bin:$PATH"

Чтобы сделать изменение постоянным, добавьте эту строку в файл ~/.bashrc или ~/.zshrc и перезагрузите оболочку:

source ~/.bashrc

Далее проверьте, что бинарник работает и отвечает корректно:

codebase-memory-mcp --version
echo '{}' | codebase-memory-mcp

Вы должны увидеть похожий вывод:

codebase-memory-mcp v0.8.1
{"jsonrpc":"2.0","id":null,"error":{"code":-32700,"message":"Parse error"}}

Ошибка разбора JSON-RPC в данном случае ожидаема. Она означает, что бинарник работает правильно и понимает протокол MCP, но пустой JSON-объект ({}) не является корректным MCP-запросом.

Шаг 3. Перезапуск агента и индексация проекта

Перезапустите AI-агента, чтобы он загрузил новый MCP-сервер. В Claude Code для проверки подключения используйте команду:

/mcp

Вы увидите примерно такой вывод:

Убедитесь, Что Ваш MCP-Сервер Подключен
Убедитесь, Что Ваш MCP-Сервер Подключен

Наличие 14 инструментов говорит о том, что MCP-сервер загружен успешно; в их числе инструменты для индексирования, поиска, отслеживания вызовов функций и анализа архитектуры проекта.

Теперь можно проиндексировать проект.

Index this project
Создайте свой первый индекс кодовой базы
Создайте свой первый индекс кодовой базы

Индексацию можно запустить и напрямую из терминала, без использования чата:

codebase-memory-mcp cli index_repository '{"repo_path": "/home/ravi/projects/django-app"}'

Успешная индексация выдаст примерно такой результат:

Изучите сводку индексации
Изучите сводку индексации

Чтобы проверить статус индексации или просмотреть проиндексированные проекты, не блокируя терминал, выполните:

codebase-memory-mcp cli list_projects

Шаг 4. Запросы к графу

После индексации проекту можно задавать структурные вопросы. Вместо того чтобы каждый раз искать по файлам, агент обращается к графу знаний.

Граф можно также запрашивать напрямую из командной строки. Например, чтобы найти все функции, имена которых содержат Handler, выполните:

codebase-memory-mcp cli search_graph '{"name_pattern": ".*Handler.*", "label": "Function"}'

Разбор команды:

  • search_graph вызывает поисковый инструмент MCP.
  • name_pattern задаёт регулярное выражение для сопоставления имён функций или классов.
  • label ограничивает поиск конкретным типом узла, в данном случае Function.

Чтобы увидеть, какие функции вызывают заданную и какие она вызывает сама, используйте:

codebase-memory-mcp cli trace_path '{"function_name": "process_order", "direction": "both"}'

На незнакомой кодовой базе такая трассировка взаимосвязей функций экономит много времени, которое иначе ушло бы на поиск через grep и переходы по исходникам.

Поддержание в актуальном состоянии

Поскольку codebase-memory-mcp устанавливается как самостоятельный бинарник, обновлять его придётся вручную – если только вы не устанавливали его через пакетный менеджер, такой как AUR, npm или Homebrew.

Для проверки обновлений и установки свежей версии выполните:

codebase-memory-mcp update

Если установлена последняя версия, вывод будет похож на:

Current version: v0.8.1 
Latest version: v0.8.1 
Already up to date.

Сервер автоматически проверяет обновления при запуске. Если выйдет новая версия, он уведомит вас при первом обращении к одному из инструментов в текущей сессии, что позволит легко поддерживать установку в актуальном состоянии.

Заключение

Если вы регулярно применяете AI-агенты для работы с крупными проектами, codebase-memory-mcp определённо стоит попробовать. Установка проста и занимает считаные минуты, а после индексации проекта агент может отвечать на структурные вопросы значительно быстрее, обращаясь к графу знаний вместо повторного сканирования исходных файлов.

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

Если вы работаете с несколькими проектами, можно проиндексировать каждый репозиторий отдельно и командой list_projects просматривать все индексированные кодовые базы. Это упрощает управление и переключение между проектами, сохраняя преимущества быстрого контекстного анализа.

Пробовали ли вы сочетать этот инструмент с другими агентами, помимо Claude Code – например, с Aider или Gemini CLI? Если да, поделитесь в комментариях, как отличается поведение хуков в разных агентах.