Карта проекта: агенты знают, куда смотреть, ещё до чтения

Получив новую задачу, агент обычно сначала делает grep, а потом читает файлы один за другим. Карта проекта сокращает этот поиск: AgentVera индексирует на вашем компьютере символы проекта, импорты и файлы, которые меняются вместе, а агенты просят у MCP-инструментов agentvera-map нужные файлы, их пользователей и их тесты.

Что индексируется

Карта строится с помощью tree-sitter. В файлах TypeScript, TSX, JavaScript, Python и Go извлекаются функции, классы, методы, интерфейсы, типы, перечисления и константы вместе с диапазонами строк, сигнатурами и первым предложением документации. Ещё около 30 языков, например Rust, Java, PHP и Ruby, попадают на карту по пути к файлу.

  • Импорты разрешаются до файлов проекта; тесты связываются с файлами, которые они импортируют, и с исходниками с совпадающими именами.
  • Change together: файлы, изменявшиеся вместе минимум в двух из последних 500 коммитов, объединяются в пары; коммиты, затрагивающие более 40 файлов, игнорируются.
  • Файлы находятся через git ls-files, .gitignore учитывается; папки вроде node_modules, dist и build, файлы больше 1 МБ, а также сгенерированные и минифицированные файлы пропускаются.
  • В репозиториях с более чем 20 000 файлов индексируются только папки с исходниками (src, lib, app, packages/*/src…).

Инструменты agentvera-map

Карта добавляется агенту как MCP-сервер. Его инструкции велят агенту начинать задачу с map_related, смотреть map_outline перед чтением файла и map_usages перед изменением кода. В инструкции нового агента также попадает краткая сводка модулей проекта, точек входа и команды запуска тестов.

  • map_related: файлы, которые задача, скорее всего, затрагивает, с ранжированием и причинами. Турецкие слова задачи (sepet, kupon, ödeme…) тоже совпадают с английскими именами в коде.
  • map_outline: символы файла с диапазонами строк, число файлов, которые его импортируют, и его тесты.
  • map_usages: где символ определён и вызывается, файлы, которые его импортируют, и его тесты; для файла: его импортёры и их импортёры.
  • map_find: нечёткий поиск по именам символов и файлов с видом, file:line и сигнатурой.
  • map_overview: модули, точки входа и команда запуска тестов. map_api читает реальный API установленной в node_modules версии пакета из его файлов .d.ts.

Свежая и локальная

На каждую папку (проект или worktree) приходится одна карта, общая для всех работающих там агентов. За изменениями файлов следят, коммиты запускают пересчёт файлов, меняющихся вместе, а файл, о котором спрашивает агент, перепроверяется перед ответом. Карта строится на вашем компьютере и не тратит токены; каждый агент может читать только карту своей папки.

Граф и влияние

Вкладка Project map на странице Details проекта рисует файлы графом, раскрашенным по модулям: импорты серым, файлы, меняющиеся вместе, пунктирными оранжевыми линиями. Введите задачу и нажмите «Show», чтобы увидеть файлы, которые просмотрел бы агент, с причинами. Карточка «Project map impact» во вкладке AI ROI сравнивает разговоры с картой и без неё по успешности, прохождению с первого раза, токенам на задачу и доработкам.

Как включить

  1. 1

    Убедитесь, что переключатель «Project map» в Settings → Token savings включён; по умолчанию он включён.

  2. 2

    Откройте проект или запустите агента: карта строится один раз, затем следует за изменениями.

  3. 3

    Посмотрите граф в Details → Project map и введите задачу, чтобы увидеть, какие файлы просмотрел бы агент.

  4. 4

    Чтобы исключить карту для одного агента, снимите флажок «Project map» в диалоге редактирования этого агента.

Вопросы

Какие агенты используют карту?

Каждый CLI-агент, поддерживающий MCP-серверы: Claude Code, Codex, opencode, Copilot, Gemini, Cursor и остальные. Агентам на удалённых (SSH) хостах она не добавляется.

Отправляет ли карта мой код куда-либо?

Нет. Карта строится на вашем компьютере и хранится в сжатом виде в папке данных приложения. То, что агент читает из ответа инструмента, уходит его собственному провайдеру модели, как и всё остальное, что он читает.

Для каких языков извлекаются символы?

TypeScript, TSX, JavaScript, Python и Go. Файлы на других языках попадают на карту по пути и со связями «меняются вместе».

Что, если карта ещё не готова?

Ответы сообщают, насколько продвинулась карта. Агент ждёт не больше нескольких секунд, после чего ему говорят продолжать обычными инструментами.

Чем это отличается от карты кода?

Окно карты кода показывает вам зависимости модулей и файлы, которые агенты трогают чаще всего. Карта проекта это живой индекс, к которому агенты обращаются сами.

Связанные возможности

Связанные термины:MCP (Model Context Protocol)Контекстное окно

Все возможностиПосмотреть 18 поддерживаемых агентов для кода

Соберите своих агентов за одним столом.

Начните с бесплатного тарифа. Скачайте приложение, добавьте папку проекта и откройте первого агента.