Dmitriy Kononov
Обсудим задачуСвязаться

Новости и разборы

Контекст AI-агента: индекс кода, поиск и рабочее состояние решают разные задачи

JetBrains, Microsoft, Vercel и Merge показывают разные слои контекста агента. Как не перепутать поиск, память и исходные данные при проектировании системы.

Увеличение контекстного окна не устраняет необходимость управлять информацией агента. Ему нужны точные связи в коде, релевантные документы и сохранённое состояние работы. Эти три слоя имеют разные источники истины и правила обновления. Их смешение обходится дороже, чем лишние токены: агент начинает уверенно действовать по устаревшей версии задачи.

JetBrains 15 октября описала интеграцию своего движка анализа кода в работу агентов Netflix. Microsoft в тот же день представила Python API vector stores и context providers, сохранив экспериментальный статус API и alpha/beta у пакетов интеграции. Vercel объявила общую доступность Drives для Sandbox. Ранее опубликованный разбор Merge о контексте компании связывает знания с актуальностью, инструментами и доступом. Ни одна публикация не подтверждает совместимость всех четырёх решений между собой.

Индекс не заменяет поиск, а поиск не заменяет состояние

Индекс кода отвечает на структурные вопросы: где определён символ, кто его использует, какие зависимости связаны с вызовом. Семантический поиск помогает найти близкий по смыслу документ, но близость текста не доказывает правильность ссылки на функцию. Сохранённая рабочая папка удерживает файлы между запусками, однако наличие файла не делает его утверждённой версией результата.

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

Цена ошибки здесь различается. Пропущенная функция создаёт лишний поиск. Устаревшая инструкция меняет поведение. Перепутанное состояние запуска может повторить внешнее действие. Поэтому единый показатель «качество контекста» мало полезен без разложения на конкретные операции.

Долговечность требует правил устаревания

Повторное использование индекса или файлов экономит подготовительную работу, но создаёт обязанность распознавать изменения. Индекс должен соответствовать версии репозитория. Извлечённая политика должна иметь дату и владельца. Сохранённый результат должен указывать, для каких входов он получен. Иначе быстрый доступ лишь ускоряет повторение старой ошибки.

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

Есть отдельная проблема доступа: права меняются быстрее, чем документы исчезают из индекса. Фильтрация по организации и пользователю нужна при извлечении, а не только при загрузке данных. Хранение состояния также должно разделять арендаторов и рабочие ветки. Физическое сохранение папки не является системой разрешений.

Условный сценарий: изменение расчёта стоимости

Представим команду, которая меняет формулу цены в существующем приложении. Это проектный пример. Агент использует индекс, чтобы найти точки расчёта; поиск, чтобы получить утверждённые бизнес-правила; рабочее хранилище, чтобы продолжить задачу после перезапуска. В журнале сохраняются версия кода, документ с правилами и перечень ещё не принятых решений.

За ночь заказчик меняет округление. Новый запуск должен обнаружить новую редакцию правила и пометить прежний расчёт как требующий пересмотра. Он не должен механически повторять вчерашний тест и объявлять работу завершённой. Сохранённые файлы полезны именно потому, что их происхождение можно восстановить.

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

Практическую основу продолжения работы объясняет статья о фоновых задачах и повторных попытках. Кейс Python-обработки данных из API связывает тему с конкретным типом интеграционной работы. Можно обсудить, какие знания и состояния нужны вашему агенту, прежде чем расширять ему контекстное окно.