Главная мысль урока: всё, что агент «знает» в данный момент, должно физически помещаться в его контекстное окно — и это окно конечно. Хуже того: качество работы модели падает раньше, чем кончается место. Поэтому бо́льшая часть агентной инженерии — это борьба за контекст. Понимая её приёмы (компакция, файлы-заметки, субагенты), вы поймёте, почему Claude Code устроен именно так.
Рабочий стол, а не библиотека
Из урока 1 вы знаете: агент — это модель в цикле с инструментами. Но у каждого вызова модели есть жёсткое ограничение — контекстное окно: максимальный объём текста, который модель видит за раз. У современных моделей это 200 тысяч — 1 миллион токенов (примерно 300–1500 страниц текста — звучит много, но расходуется стремительно).
Важно понять: модель не помнит ничего между вызовами. На каждом витке цикла ей заново отправляют всё окно целиком: инструкции, историю, результаты инструментов. Контекст — это рабочий стол: что на нём лежит, то агент и «знает». Всё остальное для него не существует.
Что занимает место на столе
системный промпт
инструменты и MCP
история: диалог + результаты инструментов
свободно
Условный пример заполнения окна в середине рабочей сессии Claude Code. Точные доли зависят от настройки — свои вы увидите в практике.
Описания инструментов — каждый инструмент и каждый подключённый MCP-сервер занимают место постоянно, даже если ни разу не использовались. Десяток MCP-серверов может съесть заметный кусок окна ещё до начала работы.
История — ваши сообщения, ответы модели и, главное, результаты инструментов: прочитанные файлы, выводы команд. Это самая прожорливая часть: у рабочих агентов соотношение «вход : выход» порядка 100:1 — окно заполняется в основном результатами действий. (опыт Manus, 2025)
Context rot: агент «тупеет» раньше, чем кончается место
Интуитивно кажется: пока окно не заполнено — всё в порядке. На практике нет. По мере роста контекста внимание модели «размазывается»: она начинает упускать детали из середины, забывать исходную цель, повторяться.
Anthropic называет это context rot — деградацией контекста. Контекст — конечный ресурс с убывающей отдачей: каждый лишний токен понемногу истощает «бюджет внимания» модели. (Anthropic, Effective Context Engineering, сент. 2025)
Вы наверняка видели это сами: в конце длинной сессии Claude Code начинает ошибаться там, где в начале справлялся легко. Это не «модель устала» — это переполненный рабочий стол.
🔬 Под капотом: откуда берётся context rot
Внутри модели каждый токен «смотрит» на все остальные — этот механизм называется вниманием (attention). Чем длиннее контекст, тем больше пар токенов надо сопоставлять, а суммарный запас внимания не растёт — он размазывается всё тоньше.
Вдобавок модели обучались в основном на коротких текстах: на длине, которую модель редко «видела» в обучении, она работает менее уверенно. Хуже всего достаётся середине контекста — начало и конец модель удерживает лучше. Исследователи называют этот эффект «lost in the middle» («потерялось в середине»).
А компакция (приём 1 ниже) — это просто ещё один вызов модели: ей отдают всю историю и просят написать краткую сводку. Сводка занимает в разы меньше места, но детали при сжатии неизбежно теряются — поэтому действительно важное надёжнее сохранять в файлы (приём 2).
Три приёма борьбы за контекст
Индустрия сошлась на трёх основных техниках — все три встроены в Claude Code, и все три вы уже видели в деле:
🗜 Компакция
Когда окно почти заполнено, история сжимается в краткую сводку, и работа продолжается. Цена: детали теряются. Это та самая пауза «Compacting conversation…» в Claude Code.
📝 Заметки в файлы
Важное записывается вне окна — в файлы (TODO.md, заметки, память), и перечитывается при необходимости. Файловая система — внешняя память агента, переживающая и компакцию, и перезапуск сессии.
🤖 Субагенты
Подзадача отдаётся отдельному агенту с чистым окном. Он перелопачивает тонны материала у себя, а родителю возвращает только короткий итог. Десятки тысяч токенов поиска → сводка на одну страницу.
Насколько это серьёзно в цифрах: когда Anthropic встроила управление контекстом прямо в API (автоочистка устаревших результатов + файловая память), агентный поиск стал точнее на 39%, а 100-шаговая задача потребовала на 84% меньше токенов. (Anthropic, Managing Context, сент. 2025)
Этой дисциплине — следить, что именно лежит в окне на каждом шаге — дали имя context engineering. К 2026 году она вытеснила «промпт-инжиниринг» как главный навык построения агентов: вопрос не «какие слова написать», а «какая конфигурация контекста даёт нужное поведение». (Anthropic, Cognition, 2025)
Зачем это вам как заказчику
Когда вы заказываете у Claude Code приложение с длинными агентными задачами, теперь у вас есть конкретные вопросы для проверки архитектуры:
«Что будет, когда история диалога перестанет помещаться в окно?» — должен прозвучать ответ про компакцию или очистку старых результатов.
«Как агент сохраняет знания между сессиями?» — правильный ответ: файлы/память вне контекста, а не «всё хранится в диалоге».
«Не съедят ли описания инструментов половину окна?» — если приложение подключает много MCP-серверов, это реальный риск.
Проверьте себя
Повторение урока 1. Система «каждый понедельник: собрать статистику трёх рекламных кабинетов → свести в таблицу → отправить отчёт» — агент или workflow?
Верно, материал урока 1 усвоен! Автономность и количество шагов не делают систему агентом — агентность появляется, когда модель сама выбирает маршрут.
Вернитесь к уроку 1: агентность определяется не автономностью и не числом шагов, а тем, кто выбирает маршрут. Здесь маршрут жёсткий → workflow.
К концу долгой сессии Claude Code стал ошибаться в простых вещах, хотя контекст ещё не переполнен. Что происходит?
Именно! Отдача от контекста убывающая: чем больше в окне, тем хуже модель удерживает детали. Лекарства: компакция, новая сессия, субагенты.
Модели не устают и дело не в сервере. Это context rot — деградация качества по мере заполнения окна. Перечитайте раздел про «бюджет внимания».
Чем субагент помогает именно контексту главного агента?
Точно! Изоляция контекста — главная ценность субагентов: тонны промежуточного материала остаются в окне субагента и «умирают» вместе с ним, а родитель получает сводку.
Модель у субагента может быть той же или даже слабее, а параллельность — бонус, не суть. Суть: черновая работа остаётся в чужом окне, родителю — только итог.
Вы заказываете ассистента, который ведёт клиента онлайн-школы неделями: помнит его вопросы, прогресс, договорённости. Какое решение для «памяти» правильное?
Верно! Модель ничего не помнит между вызовами, а копить всё в окне — дорого и ведёт к context rot. Стандарт 2026: память вне окна (файлы, memory tool) + подгрузка релевантного.
Модель не помнит ничего между вызовами, а «всё в окно» — дорого (платите за каждый токен при каждом вызове) и приводит к context rot. Память живёт вне окна и подгружается по необходимости.
Практика: загляните в окно своего Claude Code
🛠 Задание на 5 минут
Откройте Claude Code в любом проекте и сразу, ничего не делая, выполните команду /context.
Изучите картину: сколько токенов заняли системный промпт, инструменты, MCP-серверы, память — ещё до начала работы. У вас подключено много MCP — есть шанс удивиться.
Поработайте 10–15 минут как обычно и снова выполните /context. Посмотрите, как выросла доля «Messages» — это и есть результаты инструментов, заполняющие окно.
Контрольные вопросы себе: какая часть окна уходит «в налог» до начала работы? Какие MCP-серверы я реально использую в этом проекте, а какие просто занимают место?
Бонус: когда окно заполнится наполовину, выполните /compact и сравните /context до и после — вы своими глазами увидите компакцию из урока.
Что дальше
В следующем уроке — инструменты и MCP: как проектируются хорошие инструменты, почему «больше инструментов» не значит «лучше», и как MCP стал общим стандартом подключения всего ко всему.