---
title: "Автоисправление"
id: "351"
type: "page"
slug: "autofix"
published_at: "2026-05-19T11:30:47+00:00"
modified_at: "2026-10-04T01:20:40+00:00"
url: "https://pastukhov.com/agents/agent/docs/autofix"
markdown_url: "https://pastukhov.com/agents/agent/docs/autofix.md"
excerpt: "Автоисправление — это режим, в котором агент сам следит за проверками вашего проекта и сразу…"
---

# Автоисправление

[https://pastukhov.com/agents/agent/docs/autofix.md](https://pastukhov.com/agents/agent/docs/autofix.md)

Автоисправление — это режим, в котором агент сам следит за проверками вашего проекта и сразу исправляет найденные ошибки. Оно связано с вашими [сборками](/agents/agent/docs/build-deploy)
 (автоматическими проверками качества кода): когда сборка сообщает об ошибке или предупреждении, Автоисправление упаковывает этот текст в сообщение чата и отправляет модели ИИ на исправление. Получается замкнутый цикл: модель правит код, сборки снова его проверяют, ошибки возвращаются обратно — и так повторяется, пока всё не пройдёт чисто.

Для вас это означает, что вручную проверять и чинить код нужно только *после* того, как агент закончит все свои автоматические исправления. Реализация крупной функции может занять 30–60 минут ожидания, но всё это время полностью ваше: можно заниматься другими задачами или просто отдохнуть. Это и удобство, и спокойствие — вам не нужно реагировать на каждую мелкую ошибку компиляции, линтера или тестов. Вы возвращаетесь к проекту, когда код уже чистый, протестированный и рабочий.

## Как включить и выключить

Переключатель **Автоисправление** находится в области ввода сообщений — это обычный выключатель вкл/выкл:

 ![Переключатель Автоисправление в области ввода сообщений чата](https://pastukhov.com/wp-content/uploads/2026/06/autofix-toggle.png) - **Включено** — агент периодически проверяет сборки. Находит ошибки или предупреждения — добавляет их в чат как сообщение, чтобы модель ИИ их исправила.
- **Выключено** — агент не следит за сборками. Ошибки появляются в [панели сборки](/agents/agent/docs/build-deploy) , а вы решаете их вручную: правите сами, спрашиваете ИИ в чате или нажимаете кнопку **Отправить** в окне результата сборки.

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

Если переключатель вам не нужен в панели ввода, его можно убрать: в настройках (Автоматизация → Автоисправление) есть переключатель «Показывать переключатель автоисправления». Само Автоисправление при этом продолжает работать по своему состоянию (включено или выключено).

## Карточка «Автоисправление»

Все настройки Автоисправления собраны в одном месте — карточке **«Автоисправление»** группы **Автоматизация** в центре настроек (шестерёнка в шапке). Она открывает отдельное окно с четырьмя настройками:

- **Показывать переключатель автоисправления** — оставлять ли выключатель в области ввода сообщений;
- **Автоисправление в новых чатах** — выполнять каждую задачу в отдельном новом чате (как сейчас по умолчанию) или отправлять в последний активный чат;
- **Коммит перед автоисправлением** — перед отправкой ошибок молча сохранить и отправить в удалённый репозиторий все незакоммиченные изменения. Включено по умолчанию: если правки агента испортят код, к прежнему состоянию можно вернуться. Выключено — задача стартует на текущем состоянии файлов, без коммита;
- **Модель автоисправления** — на какой модели работают чаты автоисправления. Пустое значение показано как **«Последняя использованная»**: задачи идут на той же модели, что вы в последний раз выбирали в чате. Рядом есть сброс к этому значению.

## Как это работает

Автоисправление — это фоновая служба: она сама, без вашего участия, периодически опрашивает сборки. Вот что происходит по шагам:

1. **Опрос сборок** — агент проверяет все сборки по очереди, в порядке зависимостей. Он ищет первую сборку с ошибками или предупреждениями и дожидается, пока завершатся все сборки, от которых она зависит.
2. **Приоритет ошибкам** — если проблемы есть в нескольких сборках, агент сначала берётся за ошибки, а не за предупреждения. Все ошибки (или все предупреждения) одной сборки отправляются за раз — так модель может исправить их все сразу.
3. **Проверка дубликатов** — перед отправкой агент смотрит последние 10 ваших сообщений в текущем чате. Если такое же содержимое ошибки уже отправлялось недавно, он пропускает его — чтобы не возникало бесконечных циклов.
4. **Добавление в чат** — разобранные ошибки помещаются в блок кода с именем файла `build.log` и уходят как обычное сообщение. Для предупреждений добавляется указание «исправь предупреждения, не игнорируй их». По умолчанию каждая задача выполняется в **отдельном новом чате**, который создаётся без навыка, — так фоновые исправления не смешиваются ни с вашей текущей работой, ни с навыком, выбранным в ней; в заголовке такого чата обычно видно, что это автоисправление, а переключатель «Автоисправление в новых чатах» (Настройки → Автоматизация → Автоисправление) возвращает старое поведение — отправлять всё в последний активный чат.
5. **Модель правит код** — получив контекст ошибки, модель анализирует проблему, читает нужные исходные файлы и вносит правки.
6. **Сборки перезапускаются** — любое изменение файлов автоматически запускает соответствующие [сборки](/agents/agent/docs/build-deploy) , а их результаты снова разбираются на ошибки и предупреждения.
7. **Цикл повторяется или завершается** — когда сборка прошла успешно, цикл заканчивается, и [развёртывание](/agents/agent/docs/build-deploy) (запуск приложения) автоматически перезапускается уже с исправленным кодом. Если ошибки остались, Автоисправление подхватит их при следующей проверке, и цикл продолжится.

Автоисправление работает только тогда, когда модель свободна: оно ждёт, пока агент закончит текущий ответ и обработает все ваши сообщения из очереди, и только потом добавляет сообщения об ошибках. Так автоматические исправления не мешают вашей работе в чате. [Промпт-сборки](/agents/agent/docs/validation/prompt-builds)
 (сборки с тяжёлыми задачами для ИИ) всегда запускаются только после успешного прохождения обычных сборок — чтобы перед сложной работой код был заведомо в порядке.

## Ошибки и предупреждения

С ошибками и предупреждениями агент работает по-разному:

- **Ошибки** — отправляются модели как есть. Модель видит текст ошибки и пытается устранить её причину.
- **Предупреждения** — отправляются с дополнением «исправь предупреждения, не игнорируй их». Так модель не отмахнётся от них как от несущественных, а реально устранит.

Если есть и ошибки, и предупреждения, агент сначала разбирается с ошибками и не трогает предупреждения, пока все ошибки не исправлены. Сначала решаются самые важные проблемы.

Тексты ошибок и предупреждений берутся из [парсера сборки](/agents/agent/docs/build-deploy)
 — того же разобранного вывода, который вы видите в окне результата сборки. Это значит, что Автоисправление использует каждый шаблон парсера, который вы добавили: чем больше инструментов охватывают ваши сборки, тем больше типов ошибок агент способен исправить сам.

## Ручная отправка ошибок

Включать Автоисправление не обязательно, чтобы попросить ИИ исправить ошибки сборки. В окне результата каждой сборки есть кнопка **Отправить**, которая делает то же самое:

- Откройте окно результата сборки (нажмите название сборки в [панели сборки](/agents/agent/docs/build-deploy) );
- Перейдите на вкладку **Ошибки** или **Предупреждения**;
- Нажмите **Отправить** — содержимое помещается в блок кода `build.log` и уходит в текущий чат как сообщение.

Это удобно, когда Автоисправление выключено, но вы хотите показать модели конкретные ошибки, или когда нужно самому выбрать, что именно отправить, а не отдавать агенту всё подряд.

Есть и более быстрый способ починить сам парсер: выделите любой текст в окнах результатов сборки, развёртывания или скриптов (и в панелях, и в диалогах) — появится плавающая кнопка **Исправить парсер**. Нажатие отправляет выделенный текст модели с подсказкой для нужного файла парсера (`build.parser`, `deploy.parser` или `output.parser`), и модель сама добавит недостающие шаблоны.

## Чем следить за работой

Автоисправление трудится в фоне, но за ним всегда можно наблюдать:

- **История чата** — автоматические сообщения появляются в отдельном новом чате (или в последнем активном — если переключатель «Автоисправление в новых чатах» выключен). Откройте его, чтобы увидеть контекст ошибки, ответ модели и внесённые правки.
- **Панель сборки** — видно, как сборки запускаются, выполняются и завершаются, а счётчики ошибок меняются с красного на зелёный по мере их исправления. По значкам ошибок можно открыть подробности.
- **Панель развёртывания** — после успешного прохождения всех сборок видно, как приложение перезапускается уже с исправленным кодом.
- **Панель Git** — после удачного цикла исправлений изменения видны в [панели Git](/agents/agent/docs/git) , прежде чем вы их закоммитите или отправите.

Заглядывать в работу Автоисправления — хорошая привычка. С большинством рутинных ошибок оно справляется отлично, но иногда вносит правки, которые не совсем подходят вашему проекту. Быстрый взгляд на изменения (diff) перед коммитом гарантирует, что всё выглядит так, как нужно.

*Совет: если модель при исправлении стабильно повторяет одну и ту же ошибку, попросите её обновить `CLAUDE.md` или [навыки](/agents/agent/docs/skills)
, чтобы в будущем это не повторялось.*

## Чем больше сборок — тем лучше результат

Польза Автоисправления напрямую зависит от того, сколько [сборок](/agents/agent/docs/build-deploy)
 вы настроили. Каждая сборка — это независимая проверка качества со своим понятным перечнем ошибок, и агент может исправить всё, что способен увидеть парсер.

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

В разделе [Creative Builds](/agents/agent/docs/build-deploy)
 на странице «Сборка и развёртывание» есть примеры таких проверок: линтеры (eslint, ruff), проверка типов (tsc), запуск тестов (dotnet test), сканеры безопасности (npm audit) и собственные проверки проекта. Каждая добавленная сборка делает Автоисправление сильнее.

Настраивать новые сборки вручную не нужно: в `.pastukhov/README.md` описаны форматы `build.yml` и `build.parser`. Просто попросите модель добавить нужные сборки и обновить шаблоны парсера под вывод ваших инструментов.

## Ограничения

Автоисправление — мощная, но не всемогущая функция. Вот его ограничения:

- **По одной сборке за раз** — агент берёт первую сборку с проблемами, отправляет все её ошибки или предупреждения и только потом переходит к следующей.
- **Сначала ошибки** — предупреждения не отправляются модели, пока не исправлены все ошибки сборки.
- **Защита от повторов** — агент проверяет последние 10 сообщений на одинаковое содержимое. Если одни и те же ошибки появляются снова после неудачной попытки исправления, он не станет отправлять их повторно. Это спасает от бесконечных циклов, но значит, что упорные ошибки, которые модель не может исправить, в итоге перестанут сообщаться.
- **Один исправитель за раз** — соблюдается ограничение на число одновременных сессий исправления, чтобы не перегружать систему.
- **Ждёт свободной модели** — во время активного разговора опрос ошибок приостанавливается и возобновляется, когда агент свободен.
- **Не всё исправимо** — некоторые ошибки требуют вашего решения: контекста, бизнес-логики или архитектурных решений, которые знаете только вы. Сложные проблемы, затрагивающие несколько связанных модулей, часто выходят за пределы возможностей Автоисправления.

Если Автоисправление не справилось с ошибкой, сессия чата остаётся в истории. Откройте её, посмотрите, что пыталась сделать модель, и дайте ей дополнительные указания — тогда при следующей попытке она добьётся успеха.

## Когда включать Автоисправление

### Автоисправление отлично справляется с:

- Рутинными ошибками сборки, возникшими после недавних правок;
- Проблемами стиля кода и простыми синтаксическими ошибками;
- Ошибками типов, у которых есть очевидное решение;
- Частыми ошибками настройки;
- Падениями тестов с простыми исправлениями.

### Автоисправлению может быть трудно с:

- Ошибками, требующими решений по бизнес-логике или ваших знаний в предметной области;
- Сложными архитектурными изменениями, затрагивающими несколько модулей;
- Случаями, когда «исправление» зависит от специфических требований вашего проекта;
- Ошибками от инструментов, чей вывод [парсер сборки](/agents/agent/docs/build-deploy) не распознаёт — в этом случае попросите модель добавить нужные шаблоны парсера.

**[← Аналитика](/agents/agent/docs/analytics)**

**[Телефон и рабочий стол →](/agents/agent/docs/mobile)**
