Другая половина проблемы контекста.
Каждый вызов инструмента MCP в Claude Code сбрасывает необработанные данные в контекстное окно размером 200 КБ. Снимок драматурга стоит 56 КБ. Двадцать выпусков GitHub стоят 59 КБ. Один журнал доступа — 45 КБ. Через 30 минут 40% вашего контекста исчезнет.
Вдохновлено Cloudflare Кодовый режим — который сжимает определения инструментов из миллионов токенов в ~1000 — мы спросили: а как насчет другого направления?
Контекстный режим — это сервер MCP, который находится между Claude Code и этими выходами. 315 КБ становятся 5,4 КБ. Снижение 98%.
cc-04.mp4
claude mcp add context-mode -- npx -y context-mode
Перезапустите Клод Код. Сделанный.
Установка плагина (включает навык автоматической маршрутизации + перехват субагента)
/plugin marketplace add mksglu/claude-context-mode
/plugin install context-mode@claude-context-mode
Устанавливает сервер MCP + навык, автоматически маршрутизирующий большие выходные данные через контекстный режим + ловушку PreToolUse, которая вводит маршрутизацию контекстного режима в подсказки субагента. Никаких подсказок не требуется.
Местное развитие
claude --plugin-dir ./path/to/context-mode
MCP стал стандартным способом использования внешних инструментов для агентов ИИ. Но в его основе есть напряжение: каждое взаимодействие с инструментом заполняет контекстное окно с обеих сторон — определения на входе, необработанный вывод на выходе.
С Активно более 81 инструмента, 143 тыс. токенов (72%) расходуются до вашего первого сообщения.. И тогда инструменты начинают возвращать данные. Один снимок драматурга занимает 56 КБ. А gh issue list сбрасывает 59 КБ. Запустите набор тестов, прочитайте файл журнала, получите документацию — каждый ответ съедает то, что осталось.
Режим кода показал, что определения инструментов можно сжать на 99,9%. Контекстный режим применяет тот же принцип к выводам инструмента — обрабатывает их в песочнице, чтобы в модель попадали только сводные данные.
| Инструмент | Что он делает | Контекст сохранен. |
|---|---|---|
batch_execute |
Запуск нескольких команд + поиск по нескольким запросам за ОДИН вызов. | 986 КБ → 62 КБ |
execute |
Запускайте код на 10 языках. Только стандартный вывод входит в контекст. | 56 КБ → 299 Б |
execute_file |
Обработка файлов в песочнице. Необработанный контент никогда не уходит. | 45 КБ → 155 Б |
index |
Чанк уценки в FTS5 с рейтингом BM25. | 60 КБ → 40 Б |
search |
Запрос индексированного контента с помощью нескольких запросов за один вызов. | Извлечение по требованию |
fetch_and_index |
Получить URL-адрес, преобразовать в уценку, индексировать. | 60 КБ → 40 Б |
stats |
Отслеживание токенов сеанса с разбивкой по каждому инструменту. | — |
Каждый execute вызов порождает изолированный подпроцесс со своей собственной границей процесса. Скрипты не могут получить доступ к памяти или состоянию друг друга. Подпроцесс запускает ваш код, захватывает стандартный вывод, и только этот стандартный вывод входит в контекст диалога. Необработанные данные — файлы журналов, ответы API, снимки — никогда не покидают «песочницу».
Доступны десять языковых сред выполнения: JavaScript, TypeScript, Python, Shell, Ruby, Go, Rust, PHP, Perl, R. Bun автоматически определяется для ускорения выполнения JS/TS в 3–5 раз.
Аутентифицированные CLI работают через сквозную передачу учетных данных — gh, aws, gcloud, kubectl, docker наследовать переменные среды и пути конфигурации, не раскрывая их в диалоге.
Когда выходные данные превышают 5 КБ и intent предоставляется, контекстный режим переключается на фильтрацию на основе намерений: он индексирует весь вывод в базу знаний, ищет разделы, соответствующие вашему намерению, и возвращает только соответствующие совпадения со словарем доступных для поиска терминов для последующих запросов.
index Инструмент разбивает содержимое уценки на блоки по заголовкам, сохраняя при этом блоки кода нетронутыми, а затем сохраняет их в файле. SQLite FTS5 (Полнотекстовый поиск 5) виртуальная таблица. Поиск использует Рейтинг БМ25 — алгоритм вероятностной релевантности, который оценивает документы на основе частоты терминов, обратной частоты документов и нормализации длины документа. Портер стемминг применяется во время индекса, поэтому «running», «runs» и «run» соответствуют одной и той же основе.
Когда ты звонишь searchон возвращает соответствующие фрагменты контента, ориентированные на соответствие условиям запроса, а не полные документы и не приблизительные значения, а фактический проиндексированный контент с умным извлечением того, что вы ищете. fetch_and_index распространяет это на URL-адреса: выборка, преобразование HTML в уценку, фрагмент, индекс. Необработанная страница никогда не входит в контекст.
В результатах поиска вместо усечения используется интеллектуальное извлечение. Вместо того, чтобы возвращать первые N символов (которые могут пропустить важную часть), контекстный режим определяет, где в содержимом появляются термины вашего запроса, и возвращает окна вокруг этих совпадений. Если ваш запрос — «токен аутентификации JWT», вы получите абзацы, в которых действительно встречаются эти термины, а не произвольный префикс.
search Инструмент включает в себя прогрессивное регулирование для предотвращения переполнения контекста из-за чрезмерных отдельных вызовов:
- Вызовы 1-3: Нормальные результаты (2 на запрос)
- Звонки 4-8: Сокращенные результаты (1 на запрос) + предупреждение
- Звонки 9+: Заблокировано — перенаправляет на
batch_execute
Это поощряет пакетную обработку запросов через search(queries: ["q1", "q2", "q3"]) или batch_execute вместо того, чтобы делать десятки отдельных звонков.
stats Инструмент отслеживает потребление контекста в режиме реального времени. Полезно для отладки использования контекста во время длительных сеансов.
| Метрика | Ценить |
|---|---|
| Время работы сеанса | 2,6 мин. |
| Вызовы инструментов | 5 |
| Байты возвращены в контекст | 62,0 КБ (~ 15,9 тыс. токенов) |
| Проиндексировано байт (осталось в песочнице) | 140,5 КБ |
| Коэффициент экономии контекста | 2,3x (снижение на 56%) |
| Инструмент | Звонки | Используемый контекст |
|---|---|---|
| пакетное_выполнение | 4 | 58,2 КБ |
| поиск | 1 | 3,8 КБ |
При установке в качестве плагина контекстный режим включает в себя перехватчик PreToolUse, который автоматически вводит инструкции маршрутизации в подсказки субагента (инструмента задач). Субагенты учатся использовать batch_execute в качестве основного инструмента и search(queries: [...]) для последующих действий — без ручной настройки.
Измерено в реальных сценариях:
Снимок драматурга — 56,2 КБ в необработанном виде → 299 Б контекста (сохранено 99%)
Проблемы с GitHub (20) — 58,9 КБ в необработанном виде → 1,1 КБ в контексте (сохранено 98%).
Журнал доступа (500 запросов) — 45,1 КБ в необработанном виде → 155 Б контекста (сохранено 100 %)
Документация Context7 React — 5,9 КБ в необработанном виде → 261 Б контекста (сохранено 96%)
Аналитика CSV (500 строк) — 85,5 КБ в необработанном виде → 222 Б контекста (сохранено 100 %)
Журнал Git (153 коммита) — 11,6 КБ в необработанном виде → 107 Б контекста (сохранено 99%)
Тестовый вывод (30 комплектов) — 6,0 КБ в необработанном виде → 337 Б контекста (сохранено 95%)
Исследование РЕПО (субагент) — 986 КБ необработанных данных → 62 КБ контекста (сохранено 94 %, 5 вызовов против 37)
За полный сеанс: 315 КБ необработанных данных превращаются в 5,4 КБ. Время сеанса до замедления составляет от ~30 минут до ~3 часов. Остаток контекста через 45 минут: 99% вместо 60%.
Полные сравнительные данные по 21 сценарию →
Эти подсказки работают «из коробки». Бегать /context-mode stats после каждого, чтобы увидеть экономию.
Глубокое исследование репо — 5 звонков, контекст 62 КБ (необработанные: 986 КБ, сохранено 94%)
Research https://github.com/modelcontextprotocol/servers — architecture, tech stack,
top contributors, open issues, and recent activity. Then run /context-mode stats.
Анализ истории Git — 1 звонок, контекст 5,6 Кб
Clone https://github.com/facebook/react and analyze the last 500 commits:
top contributors, commit frequency by month, and most changed files.
Then run /context-mode stats.
Парсинг веб-страниц — 1 звонок, контекст 3,2 КБ
Fetch the Hacker News front page, extract all posts with titles, scores,
and domains. Group by domain. Then run /context-mode stats.
Поиск документации — 2 звонка, контекст 1,8 КБ
Fetch the React useEffect docs, index them, and find the cleanup pattern
with code examples. Then run /context-mode stats.
- Node.js 18+
- Клод Код с поддержкой MCP
- Необязательно: Bun (определяется автоматически, JS/TS в 3–5 раз быстрее)
git clone https://github.com/mksglu/claude-context-mode.git
cd claude-context-mode && npm install
npm test # run tests
npm run test:all # full suite
С
2026-02-25 06:23:00
1772006353
#mksgluclaudecontextmode #не #теряйте #контекст #при #больших #выходных #данных
По теме
