Как перестать скармливать нейросетям лишние токены
Знакомая картина: вы общаетесь с AI-агентом в Claude Code или Cursor, просите его проанализировать логи или поправить пару багов, и через полчаса замечаете, что модель начинает «тупить». Она забывает, какой файл редактировала десять минут назад, или переспрашивает условия задачи. Причина банальна — контекстное окно забилось мусором. Один дамп логов на 500 строк или тяжелый скриншот из Playwright съедают десятки килобайт за раз.
Проект context-mode решает эту проблему довольно изящным способом. Вместо того чтобы вываливать сырые данные прямо в чат, он создает своего рода «песочницу» между инструментом и нейросетью.
В чем соль проекта
Когда AI-агент выполняет команду в терминале, он обычно получает весь вывод целиком. Если вы попросили найти ошибку в логах доступа на 45 КБ, все эти 45 КБ улетят в контекст. Через три таких итерации полезное место в «памяти» модели закончится.
Разработчики context-mode предложили другой путь:
- Данные остаются в изолированном процессе (песочнице).
- В контекст попадает только краткая выжимка или результат работы скрипта.
- Если модели все же нужны детали, она может «сходить» во встроенную базу данных SQLite и забрать конкретный кусок через поиск.
В итоге вместо 315 КБ сырого текста модель потребляет около 5 КБ. Это не просто экономия токенов (и денег), это в первую очередь выживаемость длинных сессий.
Что умеет этот MCP-сервер
Проект работает через протокол MCP (Model Context Protocol), а значит, его можно подключить почти к любому современному AI-редактору или CLI.
Умное выполнение кода
Инструмент ctx_execute поддерживает 11 языков, включая Python, TypeScript, Rust и Go. Идея в том, что нейросеть должна не сама переваривать огромные массивы данных, а писать код, который их обработает. Например, вместо чтения 50 файлов для подсчета функций, агент пишет скрипт, который делает это локально и выдает только число.
Индексация и поиск на лету
Внутри context-mode крутится SQLite с расширением FTS5. Когда вы скачиваете страницу из документации через ctx_fetch_and_index, она не падает в чат мертвым грузом. Она дробится на части, индексируется и сохраняется локально. Модель получает лишь подтверждение, что данные у нее «в подкорке», и может обращаться к ним через поиск по ключевым словам.
Сохранение состояния сессии
Это, пожалуй, самая полезная фича для тех, кто работает с Claude Code. Когда контекст все-таки переполняется и модель делает «сжатие» (compaction), она часто теряет нить повествования. Context-mode перехватывает события (правки файлов, ошибки, решения пользователя) и сохраняет их в базу. После очистки контекста он подсовывает модели краткий Session Guide — список того, что уже сделано и на чем мы остановились.
Как это устроено внутри
Архитектура завязана на локальном использовании ресурсов. Никаких облаков и сторонних API. База данных SQLite живет в вашей домашней директории. Если вы используете Node.js версии 22.13 и выше, проект автоматически переключается на встроенный модуль node:sqlite, что избавляет от проблем с компиляцией нативных аддонов.
Интересный момент с поиском: авторы используют алгоритм BM25 и Reciprocal Rank Fusion (RRF). Это позволяет объединять результаты обычного текстового поиска и поиска по подстрокам. Если вы опечатались в запросе или ввели часть названия функции, поиск все равно сработает адекватно.
Практические сценарии
Я попробовал прогнать через него несколько типичных задач, и цифры в ctx stats действительно радуют.
- Анализ истории Git. Если попросить проанализировать последние 500 коммитов в крупном репозитории вроде React, обычный агент может просто «захлебнуться». С context-mode он запускает скрипт анализа внутри песочницы и получает готовую статистику. Экономия контекста — около 99%.
- Работа с тяжелым JSON. Допустим, API возвращает ответ на 7 МБ. Вместо попытки запихнуть этот JSON в чат, инструмент сохраняет его, а модель ищет в нем нужные поля через
ctx_search. - Чтение документации. Можно скормить ему URL со спецификацией API. Инструмент скачает её, превратит в Markdown, проиндексирует и позволит модели «консультироваться» с докой по мере написания кода.
Как попробовать
Установка зависит от вашего инструмента. Для Claude Code это выглядит максимально просто:
/plugin marketplace add mksglu/context-mode
/plugin install context-mode@context-mode
Для Cursor, VS Code Copilot или Gemini CLI придется немного подправить конфиги (добавить пути к хукам), но в репозитории есть подробные инструкции под каждую платформу.
Кстати, проект умеет детектить Bun. Если он у вас установлен, выполнение JS/TS скриптов в песочнице будет работать в 3-5 раз быстрее.
Кому это нужно
Если вы используете AI-агентов только для написания функций-хелперов на 10 строк, вы вряд ли заметите разницу. Но если вы доверяете нейросети рефакторинг целых модулей, поиск багов в логах или глубокое исследование чужих репозиториев — эта штука сэкономит вам кучу нервов.
Главный плюс здесь в приватности. Все данные, индексы и логи работы остаются на вашей машине. Для корпоративной разработки, где нельзя просто так сливать содержимое файлов в облачные анализаторы контекста, это критически важный момент.
Проект активно развивается, и хотя документация местами перегружена деталями про хуки, базовая установка проходит без боли. Определенно стоит закинуть в закладки, если планируете плотно работать с MCP.

