Skip to content

Оптимизация производительности: повышение скорости отклика ​

Чему вы научитесь ​

  • Выбирать подходящую модель в зависимости от сложности задачи, балансируя стоимость и производительность
  • Эффективно управлять окном контекста, избегая достижения лимитов
  • Правильно настраивать MCP-серверы для максимизации доступного контекста
  • Использовать стратегическое сжатие для сохранения логической连贯ности диалога

Ваша текущая проблема ​

Claude Code отвечает медленно? Окно контекста быстро заполняется? Не знаете, когда использовать Haiku, Sonnet или Opus? Эти проблемы серьёзно снижают эффективность разработки.

Основная идея ​

Суть оптимизации производительности — использовать правильный инструмент в правильное время. Выбор модели, управление контекстом, настройка MCP — всё это поиск баланса: скорость vs интеллект, стоимость vs качество.

Ключевое понятие

Окно контекста — это длина истории диалога, которую Claude может «запомнить». Текущие модели поддерживают около 200k токенов, но это значение зависит от количества MCP-серверов, количества вызовов инструментов и других факторов.

Распространённые проблемы производительности ​

Проблема 1: Медленная скорость отклика ​

Симптомы: Простые задачи требуют долгого ожидания

Возможные причины:

  • Использование Opus для простых задач
  • Слишком длинный контекст, требующий обработки большого объёма исторической информации
  • Включено слишком много MCP-серверов

Решения:

  • Используйте Haiku для лёгких задач
  • Регулярно сжимайте контекст
  • Уменьшите количество включённых MCP

Проблема 2: Быстрое заполнение окна контекста ​

Симптомы: После непродолжительной работы требуется сжатие или перезапуск сессии

Возможные причины:

  • Включено слишком много MCP-серверов (каждый MCP занимает контекст)
  • Своевременное сжатие истории диалога не выполняется
  • Использование сложных цепочек вызовов инструментов

Решения:

  • Включайте MCP по необходимости, используйте disabledMcpServers для отключения неиспользуемых
  • Используйте стратегическое сжатие, вручную сжимайте на границах задач
  • Избегайте ненужного чтения файлов и поиска

Проблема 3: Быстрое расходование токенов ​

Симптомы: Квота быстро исчерпывается, высокая стоимость

Возможные причины:

  • Постоянное использование Opus для всех задач
  • Повторное чтение большого количества файлов
  • Неоптимальное использование сжатия

Решения:

  • Выбирайте модель в зависимости от сложности задачи
  • Используйте /compact для активного сжатия
  • Используйте strategic-compact hooks для умных напоминаний

Стратегия выбора модели ​

Выбор подходящей модели в зависимости от сложности задачи может значительно повысить производительность и снизить стоимость.

Haiku 4.5 (90% возможностей Sonnet, 3x экономия) ​

Сценарии использования:

  • Лёгкие агенты, частые вызовы
  • Парное программирование и генерация кода
  • Worker-агенты в многоагентных системах

Пример:

markdown
Простые изменения кода, форматирование, генерация комментариев
Используйте Haiku

Sonnet 4.5 (лучшая модель для кодирования) ​

Сценарии использования:

  • Основная разработка
  • Координация многоагентных рабочих процессов
  • Сложные задачи кодирования

Пример:

markdown
Реализация новых функций, рефакторинг, исправление сложных багов
Используйте Sonnet

Opus 4.5 (максимальные возможности рассуждения) ​

Сценарии использования:

  • Сложные архитектурные решения
  • Задачи, требующие максимальной глубины рассуждения
  • Исследовательские и аналитические задачи

Пример:

markdown
Проектирование системы, аудит безопасности, диагностика сложных проблем
Используйте Opus

Совет по выбору модели

В конфигурации агента укажите модель через поле model:

markdown
---
name: my-agent
model: haiku  # или sonnet, opus
---

Управление окном контекста ​

Чрезмерное использование окна контекста влияет на производительность и может привести к сбою задач.

Задачи, требующие избегания последних 20% окна контекста ​

Для этих задач рекомендуется сначала сжать контекст:

  • Масштабный рефакторинг
  • Реализация функций, охватывающих несколько файлов
  • Отладка сложных взаимодействий

Задачи с низкой чувствительностью к контексту ​

Эти задачи не требуют большого контекста и могут продолжаться при приближении к лимиту:

  • Редактирование одного файла
  • Создание независимых инструментов
  • Обновление документации
  • Исправление простых багов

Важное напоминание

Окно контекста зависит от следующих факторов:

  • Количество включённых MCP-серверов
  • Количество вызовов инструментов
  • Длина истории диалога
  • Файловые операции в текущей сессии

Оптимизация конфигурации MCP ​

MCP-серверы — важный способ расширения возможностей Claude Code, но каждый MCP занимает контекст.

Основные принципы ​

Согласно рекомендациям README:

json
{
  "mcpServers": {
    "mcp-server-1": { ... },
    "mcp-server-2": { ... }
    // ... больше конфигураций
  },
  "disabledMcpServers": [
    "mcp-server-3",
    "mcp-server-4"
    // отключите неиспользуемые MCP
  ]
}

Лучшие практики:

  • Можно настроить 20-30 MCP-серверов
  • Включайте не более 10 для каждого проекта
  • Поддерживайте количество активных инструментов ниже 80

Включение MCP по необходимости ​

Выбирайте соответствующие MCP в зависимости от типа проекта:

Тип проектаРекомендуется включитьОпционально
Frontend-проектVercel, MagicFilesystem, GitHub
Backend-проектSupabase, ClickHouseGitHub, Railway
Fullstack-проектВсе-
Библиотека инструментовGitHubFilesystem

Как переключать MCP

В конфигурации проекта (~/.claude/settings.json) используйте disabledMcpServers:

json
{
  "disabledMcpServers": ["cloudflare-observability", "clickhouse-io"]
}

Стратегическое сжатие ​

Автоматическое сжатие может произойти в любой момент и прервать логику задачи. Стратегическое сжатие выполняется вручную на границах задач, сохраняя логическую连贯ность.

Зачем нужно стратегическое сжатие ​

Проблемы автоматического сжатия:

  • Часто срабатывает в середине задачи, теряя важный контекст
  • Не понимает границы логики задачи
  • Может прервать сложные многошаговые операции

Преимущества стратегического сжатия:

  • Сжимает на границах задач, сохраняя ключевую информацию
  • Более чёткая логика
  • Избегает прерывания важных процессов

Лучшие моменты для сжатия ​

  1. После завершения исследования, перед выполнением — сжимайте исследовательский контекст, сохраняя план реализации
  2. После завершения этапа — перезапуск для следующего этапа
  3. Перед переключением задач — очистите исследовательский контекст, подготовьтесь к новой задаче

Strategic Compact Hook ​

Этот плагин включает strategic-compact skill, который автоматически напоминает, когда нужно сжать.

Как работает хук:

  • Отслеживает количество вызовов инструментов
  • Напоминает при достижении порога (по умолчанию 50 вызовов)
  • Затем напоминает каждые 25 вызовов

Настройка порога:

bash
# Установка переменной окружения
export COMPACT_THRESHOLD=40

Конфигурация хука (уже включена в hooks/hooks.json):

json
{
  "matcher": "tool == \"Edit\" || tool == \"Write\"",
  "hooks": [{
    "type": "command",
    "command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/hooks/suggest-compact.js\""
  }]
}

Советы по использованию ​

  1. Сжатие после планирования — после утверждения плана сжимайте и начинайте заново
  2. Сжатие после отладки — очистите контекст решения ошибок, переходите к следующему шагу
  3. Не сжимайте во время реализации — сохраняйте контекст связанных изменений
  4. Следите за напоминаниями — хук говорит «когда», вы решаете «сжимать ли»

Просмотр текущего состояния

Команда /checkpoint позволяет сохранить текущее состояние перед сжатием сессии.

Чек-лист производительности ​

В повседневном использовании регулярно проверяйте следующие пункты:

Использование моделей ​

  • [ ] Простые задачи выполняются с Haiku, а не Sonnet/Opus
  • [ ] Сложные рассуждения выполняются с Opus, а не Sonnet
  • [ ] В конфигурации агента указана подходящая модель

Управление контекстом ​

  • [ ] Включено не более 10 MCP
  • [ ] Регулярно используется /compact для сжатия
  • [ ] Сжатие выполняется на границах задач, а не в середине

Конфигурация MCP ​

  • [ ] В проекте включены только необходимые MCP
  • [ ] disabledMcpServers используется для управления неиспользуемыми MCP
  • [ ] Регулярно проверяется количество активных инструментов (рекомендуется < 80)

Часто задаваемые вопросы ​

Q: Когда использовать Haiku, Sonnet или Opus? ​

A: В зависимости от сложности задачи:

  • Haiku: лёгкие задачи, частые вызовы (например, форматирование кода, генерация комментариев)
  • Sonnet: основная разработка, координация агентов (например, реализация функций, рефакторинг)
  • Opus: сложные рассуждения, архитектурные решения (например, проектирование системы, аудит безопасности)

Q: Что делать, если окно контекста заполнилось? ​

A: Немедленно используйте /compact для сжатия сессии. Если включён strategic-compact hook, он напомнит вам в подходящий момент. Перед сжатием можно использовать /checkpoint для сохранения важного состояния.

Q: Как узнать, сколько MCP включено? ​

A: Проверьте конфигурацию mcpServers и disabledMcpServers в ~/.claude/settings.json. Количество активных MCP = общее количество - количество в disabledMcpServers.

Q: Почему мои ответы особенно медленные? ​

A: Проверьте следующее:

  1. Используется ли Opus для простых задач?
  2. Быстро ли заполняется окно контекста?
  3. Включено ли слишком много MCP-серверов?
  4. Выполняются ли масштабные файловые операции?

Итоги урока ​

Суть оптимизации производительности — «использовать правильный инструмент в правильное время»:

  • Выбор модели: выбирайте Haiku/Sonnet/Opus в зависимости от сложности задачи
  • Управление контекстом: избегайте последних 20% окна, своевременно сжимайте
  • Конфигурация MCP: включайте по необходимости, не более 10
  • Стратегическое сжатие: вручную сжимайте на границах задач, сохраняя логическую连贯ность

Связанные курсы ​


Приложение: ссылки на исходный код ​

Нажмите, чтобы раскрыть расположение исходного кода

Время обновления: 2026-01-25

ФункцияПуть к файлуСтроки
Правила оптимизации производительностиrules/performance.md1-48
Skill стратегического сжатияskills/strategic-compact/SKILL.md1-64
Конфигурация Hookshooks/hooks.json1-158
Strategic Compact Hookhooks/hooks.json46-54
Скрипт Suggest Compactscripts/hooks/suggest-compact.js-
Пример конфигурации MCPmcp-configs/mcp-servers.json-

Ключевые правила:

  • Выбор модели: Haiku (лёгкие задачи), Sonnet (основная разработка), Opus (сложные рассуждения)
  • Окно контекста: избегайте использования последних 20%, своевременно сжимайте
  • Конфигурация MCP: включайте не более 10 для каждого проекта, активные инструменты < 80
  • Стратегическое сжатие: вручную сжимайте на границах задач, избегайте прерывания автоматическим сжатием

Ключевые переменные окружения:

  • COMPACT_THRESHOLD: порог количества вызовов инструментов (по умолчанию: 50)