Документация/Агент
Изменения сессии, откат и ветвление чата
Как проверить правки агента и откатить файл, как отменить запрос вместе с его правками и отправить исправленным и как разветвить чат.
Агент пишет сразу на диск, поэтому всё, что он сделал, можно проверить и, если нужно, вернуть. Помогают в этом экран «Изменения сессии» с откатом отдельного файла, отмена запроса вместе со всеми его правками и ветвление чата. Отдельной функции «контрольных точек» нет: её заменяют эти три инструмента.
«Изменения сессии»
Экран собирает по файлам все правки агента в этом чате. Наверху написано: «Правки агента уже на диске. Проверьте их, при необходимости откатите файл и сделайте commit.»
Как открыть
- Кнопка «Изменения сессии» в верхней панели окна. Если её там нет, она в меню «Другие инструменты».
- Команда
/diff. - ⌘ 0 (Windows и Linux: Alt 0). В наборе VS Code сочетания для этого экрана нет.
Отдельную правку можно посмотреть и прямо в ленте: стрелка у строки «Изменён» или «Создан» раскрывает дифф под ней.
Как читать дифф
Переключатель «Код» / «Поведение» меняет вид диффа. «Код» показывает изменения построчно. «Поведение» собирает их в группы по смыслу и оценивает риск: «Высокий риск», «Средний риск», «Низкий риск». Эту сводку приложение считает на вашем компьютере, без модели. Подробнее — на странице Дифф «Код / Поведение».
Что можно сделать
| Кнопка | Что делает |
|---|---|
| «Откатить» у файла | Возвращает файл таким, каким он был до агента. Появится сообщение «… возвращён к виду до агента». |
| «Отметить проверенным» | Помечает правки как проверенные. Вместо этой кнопки, «Запросить правки» и «Commit…» появятся «Проверено», время пометки и кнопка «Отменить». В списке чатов статус сменится с «К ревью» на «Проверено». |
| «Запросить правки» | Возвращает в чат, где в поле ввода уже есть заготовка. Допишите, что исправить, и отправьте. |
| «Commit…» | Открывает окно коммита со всеми рабочими изменениями проекта, включая правки других чатов (Git). |
«Откатить» стоит в заголовке каждого файла и возвращает только этот файл. Чтобы вернуть разом все правки запроса, отмените запрос. Прежний вид файла приложение берёт из диффа сессии, а дифф агент собирает из снимков, которые хранит только в проекте под git. Без git экран пуст: откатывать нечего.
«Отменить» снимает пометку и возвращает статус «К ревью». Агента пометка не останавливает и остаётся даже после его новых правок.
Когда файл не откатывается
Приложение откажется откатывать файл и назовёт причину, если:
- файл изменился после правки агента: при откате эти изменения пропали бы;
- файла больше нет на диске;
- файл, который удалил агент, снова есть на диске;
- файл лежит вне проекта.
Отменить запрос, поправить и отправить снова
Если агент понял задачу не так, отмените запрос целиком, поправьте его и отправьте снова.
- Наведите курсор на своё сообщение и нажмите значок «Отменить запрос и вернуть его в поле ввода». Для последнего
сообщения то же делает команда
/undo. - Если агент ещё работает, он остановится.
- Чат откатится до этого сообщения: этот ход и все следующие исчезнут, а файлы, которые агент в них изменил, вернутся к прежнему виду.
- Текст сообщения и его цитаты вернутся в поле ввода. Исправьте текст и отправьте.
Появится сообщение «Запрос отменён — его текст снова в поле ввода» с кнопкой «Вернуть». Кнопка возвращает отменённые
ходы вместе с правками в файлах, команда /redo делает то же самое. Вернуть отменённое можно, пока вы не отправили
в этот чат новое сообщение, даже исправленный запрос. После отправки отменённые ходы пропадут насовсем.
Важно
Файлы откатываются, только если проект под git. Иначе откатится одна переписка, а приложение покажет:
«Файлы не откатаны: проект не под git, и агент не хранит снимков.» Файлы чатов «Без проекта» лежат в домашней
папке, в DevMachine/Default. Эту папку приложение создаёт само для задач без кода и, если на компьютере есть git,
делает её git-репозиторием. Тогда файлы в ней откатываются (Проекты).
Ветвление чата
Ветвление создаёт новый чат с частью переписки. Исходный чат не меняется.
| Где | Значок | Что получится |
|---|---|---|
| У вашего сообщения | «Новый чат с перепиской до этого запроса — его текст вернётся в поле ввода» | Новый чат без этого запроса. Текст запроса ждёт в поле ввода: поправьте его и отправьте. |
| У ответа агента | «Новый чат с перепиской до этого ответа включительно» | Новый чат, который продолжается с этого места. |
Команда /fork | — | Копия всего чата. |
После ветвления откроется новый чат и появится сообщение «Открыта копия чата».
Ветвится только переписка. Файлы проекта не копируются: оба чата работают в одной папке. Чтобы агенты в разных чатах не мешали друг другу, включите отдельную копию проекта на задачу.
Если ход завершился с ошибкой
Под ходом с ошибкой есть кнопки «Повторить ход» и «Подробности». Что значат частые ошибки, читайте на странице Контекст, сжатие и повторы.
Ограничения
/redoи «Вернуть» работают только до следующего сообщения.- После отмены запроса в поле ввода возвращается только текст, без вложений. Прикрепите файлы снова.
- «Commit…» на экране изменений берёт все рабочие изменения проекта, в том числе правки других чатов. В окне коммита отмечены все файлы: снимите флажки с лишних (Git).
- Если включена отдельная копия проекта на задачу, правки агента лежат в этой копии. В самом проекте их нет (Задача в отдельной копии).
Что дальше
- Дифф «Код / Поведение» — как читать изменения по смыслу.
- Git — commit, ветки и публикация.
- Задача в отдельной копии — когда агентов несколько.
- Список чатов — статусы «К ревью» и «Проверено».
Обновлено · Нашли неточность? Напишите на support@devmachine.ai или в Telegram.
