Проверка вывода чата

Проверка вывода чата — первый и самый простой уровень проверки в Pastukhov Agent. Каждое действие ИИ в чате видно полностью и наглядно: что он читает, что меняет, какие команды выполняет и что из этого вышло. В отличие от обычной консольной версии Claude Code, где всё выглядит сплошным текстовым потоком, здесь каждая операция превращается в отдельный элемент интерфейса, который можно развернуть, посмотреть и проверить.

Chat output validation

Проверка действий ИИ

Каждый вызов инструмента — чтение или правка файла, выполнение команды — появляется в чате отдельным сообщением. В полном режиме отображения успешные чтения и правки свёрнуты по умолчанию, чтобы разговор оставался чистым, но любую такую операцию можно развернуть одним кликом и посмотреть, что именно произошло.

Чтение файлов

Когда модель читает файл, в чате появляется сообщение с путём к файлу. Кликните по нему, и откроется полное содержимое файла — ровно то, что получила модель. Так легко убедиться, что ИИ читает правильный файл и опирается на верные данные.

Правки файлов и diff

Сообщения о правках показывают объединённый diff — наглядное сравнение файла до и после изменения: удалённые строки помечены красным (префикс -), добавленные — зелёным (префикс +). У каждой части diff есть заголовок с номерами строк. Разверните diff и проверьте, что именно изменила модель, — так вы вовремя увидите лишние или ошибочные правки, пока они не накопились.

Компактный режим

В компактном режиме сам вызов инструмента и его результат объединяются в один сворачиваемый элемент с иконкой состояния: крутится во время обработки, зелёная галочка при успехе, красный восклицательный знак при ошибке. Клик по сообщению раскрывает полный diff или вывод. Такой режим удобен, когда операций много и нужно быстро их пролистать.

Сообщения об ошибках

Если вызов инструмента не удался, сообщение выделяется красной рамкой. В полном режиме содержимое ошибки сразу развёрнуто на весь экран — вы видите, что пошло не так, без лишних кликов. В компактном режиме ошибки ведут себя как остальные сообщения: клик раскрывает полный вывод. Повторяющиеся ошибки — не «мелочь», которую стоит игнорировать: они говорят о том, что модели не хватает нужной информации. Разберитесь, в чём дело, и попросите модель дополнить CLAUDE.md (если это особенности проекта) или текущий навык (если это общие правила). Обычно достаточно 5–10 таких циклов, чтобы даже на сложных задачах выйти на 99% точности.


Статистика по сообщениям

Каждое сообщение несёт подробные данные о расходе. Наведите курсор на сообщение, чтобы увидеть его статистику, либо посмотрите общие итоги в заголовке страницы.

  • Время обработки — сколько модель потратила на генерацию этого сообщения (в секундах, например «1.2s»);
  • Входные токены — объём запроса, отправленного модели для этого шага;
  • Выходные токены — объём текста, который модель сгенерировала в ответ;
  • Токены кэша чтения — часть запроса, взятая из кэша промпта (дешевле и быстрее);
  • Стоимость — расчёт по ценовой модели из ваших настроек окружения (входные, выходные и кэш-токены). Чтобы цифры были в долларах и соответствовали реальности, задайте корректные цены в настройках модели — без этого сумма будет условной.

В компактном режиме вызов инструмента и его результат объединены, поэтому статистика показывается суммарная — за вызов и ответ вместе.

Учтите: провайдеры часто присылают статистику не по одному сообщению, а сразу за несколько подряд (обычно для сообщений ассистента). Такие данные приходят с задержкой 1–2 секунды, потому что извлекаются из лога, — точные цифры вы увидите ближе к завершению чата либо по прошествии примерно 10 секунд с момента появления сообщения.


Статистика в заголовке чата

Пока модель работает, под заголовком плавает бейдж со сводной статистикой в реальном времени. В свёрнутом виде он показывает три показателя:

  • Число сообщений — всего сообщений в текущем чате (например «5 msg»);
  • Общая стоимость — расход по всей сессии чата (например «$0.15»);
  • Токены в секунду — скорость работы, считающаяся из выходных токенов и времени обработки.

Когда в чате работают подагенты — отдельные дочерние агенты, — каждая метрика показывается в формате основной/все подагенты (например «5/12 msg • $0.15/$0.30 • 45/60 tps»): первое число — основной чат, второе — сумма по всем подагентам. При наведении бейдж раскрывает подробности: без подагентов добавляются суммы токенов кэша чтения, входных и выходных; с подагентами — две отдельные строки (основной чат и общая статистика подагентов), у каждой свои сообщения, стоимость, tps, кэш, входные и выходные токены. Таймер совокупного времени обработки (мм:сс) отображается отдельно в строке заголовка.

Когда модель создаёт подагенты, слева от таймера появляется бейдж с их количеством. Клик по нему открывает список всех чатов подагентов со статистикой каждого (сообщения, стоимость, токены/сек, коэффициент кэша). Клик по подагенту переключает вид на его чат, а кнопка со стрелкой назад возвращает к основному чату.


Управление сообщениями

Продолжить с этого сообщения

Наведите курсор на любое сообщение (кроме инструментальных) — появится кнопка с иконкой воспроизведения. Она позволяет дать модели промпт-продолжение: диалог вернётся к этой точке, а всё, что было сказано и сделано после неё, будет забыто. Промпт-продолжение включает усечённый предпросмотр исходного сообщения. Это удобно для повторной проверки: если модель пошла не туда, вы продолжаете с последнего хорошего сообщения, а не начинаете чат заново.

Скопировать сообщение

При наведении на сообщение появляется кнопка копирования. Она помещает содержимое сообщения в буфер обмена — удобно, чтобы поделиться конкретным выводом или вставить его в другой инструмент для дальнейшего разбора.

Остановить обработку

Пока модель активно работает, в заголовке видна кнопка остановки. Нажмите её, чтобы немедленно отменить текущий запрос: модель получит сигнал отмены и прекратит генерацию, а в чат добавится пометка, что обработку остановили вручную. Используйте её, когда видите, что модель движется не туда, — незачем ждать окончания заведомо плохого ответа. Остановить и поправить модель — нормально. Если модель раз за разом спотыкается об одно и то же, попросите её записать нужную информацию в CLAUDE.md или текущий навык — даже одна строка с верным направлением сэкономит часы будущих сессий и деньги.

Важно: остановка основного чата автоматически останавливает все его подагенты. Управлять подагентами по отдельности нельзя — они полностью под управлением фоновых агентов.


Очередь сообщений

Если отправлять сообщения быстро, они выстраиваются в очередь над полем ввода. Каждое отложенное сообщение — это редактируемая карточка: зелёная (активное) или оранжевая (приостановленное). Вы можете:

  • Редактировать — клик по карточке меняет текст сообщения до отправки;
  • Приостановить — отложить отправку до того момента, когда вы будете готовы;
  • Удалить — полностью убрать отложенное сообщение.

Смысл очереди — заранее записать следующие мысли, не дожидаясь конца текущего ответа. Печатайте следующую правку или вопрос, пока модель ещё работает, — сообщения из очереди запустятся по очереди автоматически. Очередь работает и как буфер: сообщения из неё всегда обрабатываются раньше Автоисправления, поэтому автоматическая проверка не влезает в чат, пока вы не отправили всё задуманное.


Полезные приёмы проверки

  • Исправляйте причину, а не следствие. Если модель ошиблась или не находит нужное, не ограничивайтесь замечанием в текущем сообщении. Попросите её обновить CLAUDE.md (знания о проекте) или текущий навык (общие правила). Даже одна строка правильной инструкции предотвратит ту же ошибку во всех будущих сессиях.
  • Доводите до безошибочности по шагам. Повторяющиеся ошибки означают, что модели не хватает контекста. Чтобы выйти на 99% точности даже на сложных задачах, обычно нужно 5–10 итераций дополнения CLAUDE.md и навыков. Автор продукта запускает модели часами без присмотра — но только после того, как вложил десятки итераций в правильные файлы. Полезно и перезапускать чат с нуля, чтобы добиться чистой работы, а ошибки по пути фиксировать в CLAUDE.md и навыках — особенно при переходе на новые типы задач.
  • Смотрите на картину в целом. Разворачивайте diff’ы и проверяйте результаты выборочно, без маниакальной построчной ревизии. Цель — быстро увидеть повторяющиеся паттерны ошибок и устранить их в источнике (в CLAUDE.md или навыках), а не вычитывать каждую строку вручную.
  • Следите за ростом контекста. Чем длиннее чат, тем медленнее и дороже каждый шаг — модели приходится обрабатывать всю историю. Новый чат часто быстрее и дешевле, чем продолжение разросшегося, даже с учётом восстановления контекста.
  • Обращайте внимание на подозрительно высокие расходы. Резкий скачок стоимости за шаг обычно означает низкий коэффициент попадания в кэш — модель по новой обрабатывает бо́льшую часть запроса вместо дешёвых кэшированных токенов. Часто это признак проблем на стороне клиента или провайдера. Если такой режим затягивается, провайдер может принять меры. Остановитесь, изучите аналитику, сравните с прошлыми периодами и сообщите о находках провайдеру — возможно, дело на их стороне.
  • Предпочитайте новый чат продолжению со старого сообщения. Если модель ушла не туда, новый чат обычно эффективнее «продолжить с сообщения»: он начинается с чистого фокусированного контекста и стоит дешевле за шаг, чем тащить багаж разросшегося разговора. Многократное «исправь» в одном чате — расточительство: новый чат чаще даёт мгновенное решение, а старый — циклы повторных ошибок.
  • Останавливайте плохие ответы рано. Если в статистике заголовка видно, что модель обрабатывает долго и генерирует много токенов, — проверьте, что она делает, и остановите, если она плодит лишний контент или ушла в сторону. Модели иногда зацикливаются на самоанализе, и подсказка не всегда помогает выйти из цикла. Чаще всего самый быстрый выход — начать заново.

Про более широкий анализ производительности читайте в разделе Аналитика и контроль. О контроле объёма контекста — в Использовании контекста, а полная справка по функциям чата — на странице Чат.


Извлекайте уроки из трудных чатов

После особенно мучительной ошибки или задачи на сотни сообщений обязательно попросите модель вынести урок: обновить CLAUDE.md, создать или улучшить навык, зафиксировать нехватку контекста, из-за которой шла борьба. Это гарантия, что та же боль не повторится. Если пропустить этот шаг, почти наверняка скоро возникнет та же проблема: модель повторит ошибки, и вы снова сожжёте те же сообщения. Несколько минут на запись урока экономят часы в будущих сессиях.


Звуковой отклик

Pastukhov Agent проигрывает отдельный звук для каждого типа события, чтобы вы могли запускать длинные задачи, не глядя в экран:

  • Сообщение — на каждое прибывающее сообщение, подтверждая, что модель продолжает работать;
  • Завершено — когда чат закончил обработку;
  • Уведомление — когда чат ждёт вашего решения или одобрения (например, вопрос от модели);
  • Ошибка — когда чат споткнулся о неудачу.

У каждого типа звука свой уровень громкости — он настраивается в разделе Настройки → Звуки, а полностью отключить звук можно иконкой динамика в заголовке. Любой встроенный звук можно заменить: положите MP3-файл с тем же именем в папку .pastukhov/sounds/ проекта — например, message.mp3, complete.mp3, error.mp3. Сервер сначала отдаёт ваши файлы, а встроенные использует только там, где своих нет. Со временем вы начнёте ощущать рабочий процесс на слух: ровный ритм «пингов» сообщений — всё идёт как надо, а внезапная тишина, уведомление или звук ошибки — пора посмотреть на экран. Автор использует Bluetooth-наушники и на время задач уходит от компьютера — с хорошим адаптером можно ходить по дому, не привязываясь к рабочему месту. Подробности настройки и полный каталог звуков — на странице Проверка звуковым откликом.