🧠 Что это
Context Budget Optimizer — это диагностический инструмент для Claude Code, который анализирует, сколько токенов контекстного окна потребляют все загруженные компоненты: агенты, навыки, MCP-серверы, правила и файлы CLAUDE.md. Он выявляет «раздутые» или избыточные элементы и выдаёт ранжированный список рекомендаций по сокращению расхода токенов. Это позволяет разработчику осознанно управлять контекстным бюджетом, избегая деградации качества ответов и замедления работы.
⚙️ Как работает
1. Инвентаризация компонентов
Сначала утилита сканирует все каталоги и оценивает потребление токенов для каждого типа компонентов:
- Агенты (
agents/*.md): подсчёт строк и токенов (слова × 1.3), проверка длины описания в frontmatter. Флаг: файлы >200 строк (тяжёлые), описание >30 слов (раздутый frontmatter).
- Навыки (
skills/*/SKILL.md): подсчёт токенов, флаг >400 строк. Дубликаты в .agents/skills/ не учитываются дважды.
- Правила (
rules/**/*.md): подсчёт токенов, флаг >100 строк, обнаружение пересечений содержимого между файлами правил одного языкового модуля.
- MCP-серверы (
.mcp.json или активная конфигурация): подсчёт серверов и общего числа инструментов, оценка накладных расходов схемы (~500 токенов на инструмент). Флаг: серверы с >20 инструментами, а также серверы, оборачивающие простые CLI-команды (gh, git, npm, supabase, vercel).
- CLAUDE.md (проектный + пользовательский): подсчёт токенов, флаг при суммарном объёме >300 строк.
2. Классификация по необходимости
Каждый компонент помещается в одну из трёх категорий:
- Всегда нужен — упомянут в
CLAUDE.md, поддерживает активную команду или соответствует текущему типу проекта.
- Иногда нужен — доменно-специфичен (например, языковые паттерны), не упомянут в
CLAUDE.md. Рекомендуется активировать по запросу.
- Редко нужен — нет ссылок на команды, дублирующееся содержимое или очевидное несоответствие проекту. Рекомендуется удалить или загружать лениво.
3. Выявление проблемных паттернов
Утилита ищет следующие типичные проблемы:
- Раздутые описания агентов — описание >30 слов в frontmatter загружается при каждом вызове Task tool.
- Тяжёлые агенты — файлы >200 строк раздувают контекст при каждом спавне.
- Избыточные компоненты — навыки, дублирующие логику агентов, или правила, дублирующие
CLAUDE.md.
- Чрезмерная подписка MCP — >10 серверов или серверы, оборачивающие бесплатные CLI-утилиты.
- Раздутый CLAUDE.md — многословные объяснения, устаревшие разделы, инструкции, которые должны быть правилами.
4. Формирование отчёта
Результат — структурированный отчёт с таблицей потребления токенов по категориям, списком найденных проблем (ранжированных по потенциальной экономии) и топ-3 рекомендациями. Пример:
Context Budget Report
═══════════════════════════════════════
Total estimated overhead: ~63,300 tokens
Context model: Claude Sonnet (200K window)
Effective available context: ~136,700 tokens (68%)
Component Breakdown:
┌─────────────────┬────────┬───────────┐
│ Component │ Count │ Tokens │
├─────────────────┼────────┼───────────┤
│ Agents │ 16 │ 12,400 │
│ Skills │ 28 │ 6,200 │
│ Rules │ 12 │ 3,000 │
│ MCP tools │ 87 │ 43,500 │
│ CLAUDE.md │ 2 │ 1,200 │
└─────────────────┴────────┴───────────┘
WARNING: Issues Found (5):
Top 3 Optimizations:
1. Remove 3 CLI-replaceable MCP servers → save ~27,500 tokens
2. Trim agent descriptions >30 words → save ~1,800 tokens
3. Merge duplicate rules → save ~900 tokens
В verbose-режиме (--verbose) дополнительно выводятся: пофайловая разбивка токенов, построчный анализ самых тяжёлых файлов, конкретные дублирующиеся строки и список MCP-инструментов с оценкой размера схемы каждого.
🎯 Когда использовать
- Производительность сессии упала — ответы стали медленными или качество ухудшилось.
- Недавно добавлено много компонентов — навыки, агенты, MCP-серверы.
- Планируете расширение — хотите понять, есть ли место для новых компонентов.
- Перед добавлением новых MCP-серверов — проверка, не превысит ли overhead допустимый порог (рекомендуется <40%).
- Регулярные аудиты — после каждого значительного изменения конфигурации.
💡 Важно знать
- MCP — самый мощный рычаг экономии: каждый инструмент стоит ~500 токенов схемы; сервер с 30 инструментами может потреблять больше, чем все навыки вместе взятые.
- Описания агентов загружаются всегда — даже если агент не вызывается, его поле
description присутствует в контексте каждого вызова Task tool.
- Оценка токенов: для прозы используйте
слова × 1.3, для кода — символы / 4.
- Verbose-режим предназначен для отладки, не для регулярных проверок.
- Аудит после изменений — лучшая практика для предотвращения незаметного разрастания контекста.
Комментарии
Комментариев пока нет. Будьте первым.