Решил я открыть /context в Claude Code. У меня чистая сессия, ноль заданных вопросов, а 67k токенов уже потрачены и это целая треть окна в 200k, а я даже ничего не написал. Куда всё улетело?
Для тех кто не в теме: контекстное окно - это рабочая память модели. Всё что Claude "видит" когда отвечает: твой вопрос, история чата, файлы, инструменты.
Да 200k токенов может звучать много, но это общий бюджет. Чем больше забито на старте, тем меньше остаётся на работу. А когда место кончается - Claude сжимает историю и теряет 60-70% деталей.
Начинает переспрашивать, перечитывать файлы, предлагать то что ты уже отверг. Короче говоря - тупеет.
Замеры от Anthropic: точность поиска информации на 256K - 93%. На полном миллионе - 76%. Чем длиннее контекст, тем хуже модель находит нужное. А у меня окно 200k, и треть уже занята мусором.
Вот что съедало мои 67k на старте:
1. System tools - 33 000. Встроенные инструменты + 90 MCP тулзов от семи серверов. Playwright, Railway и ещё пять. Все загрузились на старте, но ни один не нужен прямо здесь и сейчас.
2. Отдельная боль - файл навигации в Memory files. Вышло на 6 800 токенов. Один файл со ссылками и больше чем системный промпт Claude Code. Грузился каждую сессию.
3. Девять агентов на 7 900. У каждого по 30-50 тригер фраз на двух языках, примеры, списки книг. Claude и так понимает что "код норм?" - это code review. Ему не нужно пятьдесят синонимов.
4. Скиллов ±60 шт на 4 800. Двадцать дубликатов - плагин стоял и в user, и в project.
Это всё похоже на то, что я решил сесть за стол, а на нём 67 открытых книг. Половина не по теме, штук двадцать - дубликаты. А место для работы - вон та щёлочка с краю.
Для меня 67k токенов критично и я решил всё это дело оптимизировать. Сначала убрал NAVIGATION.md из автозагрузки, т.к. Claude сам найдет файл через grep.
Главный файл - CLAUDE.md ужал с 283 строк до 39, вынес онбординг и чеклист безопасности, они дублировали. Отключил четыре плагина и парочку MCP, всё-равно они никогда не запускались. Я ставил для тестов и забыл...
Самое жирное - это агенты. Выкинул триггер фразы, примеры, списки книг. Оставил одну строку "что делает". С 7 900 до 1 300 токенов. Шесть с половиной тысяч на ровном месте.
Изначальные 67k превратились в 21k, минус 46k или же 69%.
Тем самым свободного места стало 179k. Всё убранное осталось в проекте - не на столе, а на полке.
Не планируй и не кодь в одной сессии. Пусть Opus продумает детально задачу и запишет план в файл, разобьёт на фазы.
Дальше чистая сессия, можно на Sonnet: "прочти plan.md, сделай фазу 1". История планирования не висит мёртвым грузом, контекст чистый, модель сфокусирована на одной задаче.
(Пока ковырялся, нашёл 12 устаревших файлов. К токенам не относится, но приятно когда чисто.)
Поэтому проверь стартовый контекст у себя:
1. /context - MCP tools показывает тысячи? Включи defer_loading
2. Memory files - не нужно каждую сессию? Убирай
3. Агенты - одна строка работает не хуже пятидесяти триггер фраз
4. CLI вместо MCP где можешь. gh, playwright cli. Разница между ними до 32x
Открой
/context и скинь скриншот - посмотрим у кого больше мусора на старте 👇
