Документация/Агент
Разрешения и вопросы агента
Карточки, где агент просит разрешения или задаёт вопрос: что на них написано, что значит каждая кнопка и как отозвать «Больше не спрашивать».
Когда агенту нужно ваше решение, он останавливается и показывает карточку над полем ввода. Карточка появляется в двух случаях: агент просит разрешения на действие или задаёт вопрос. Пока вы не ответите, работа стоит. На этой странице — как устроены карточки и где их искать, если вы в другом окне.
Где видно, что агент ждёт
Отвечаете на карточке над полем ввода. Остальные места только показывают, что агент ждёт, и ведут к ней.
- Над полем ввода — сами карточки. Они видны и в чате, и в редакторе, и в «Изменениях сессии». В ленте на их месте остаётся строка с действием, которое ждёт решения.
- В шапке окна — кнопка «Нужно решение · 1» или «Нужны решения · 3». Нажмите её, чтобы перейти к чату, который ждёт решения.
- В списке чатов под названием чата — «Ждёт решения: …» или «Агент задал вопрос».
- Под лентой — кнопка «Ждёт вашего решения · N ↑», если карточка скрылась из виду.
- Системное уведомление о новом решении приходит, только когда окно DevMachine не в фокусе. Щёлкните по уведомлению, и откроется нужный чат. На macOS число ждущих решений видно и на значке приложения в Dock.
Примечание
Когда агент заканчивает работу, уведомление не приходит. Закончил ли он, видно по статусу чата в списке, например «К ревью».
Карточка разрешения
Из заголовка видно, о чём просит агент: «Разрешить команду?», «Разрешить правку?», «Разрешить доступ вне проекта?», «Выполнить команду вне песочницы?», «Разрешить доступ в сеть?», «Запустить субагента?», «Изменить библиотеку навыков?», «Разрешить инструмент интеграции?», «Разрешить действие?».
На карточке:
- сама команда или действие;
- где оно выполнится: в проекте или вне его;
- метки риска справа:
- «Разрушительная» — команда, например, удаляет файлы или стирает данные;
- «Вне проекта» — действие выходит за папку проекта;
- «Полный доступ к компьютеру» — команда выполнится вне песочницы. Песочница — средство операционной системы, которое не даёт командам агента писать вне разрешённых папок и ходить в сеть мимо списка (Ограничения агента);
- «Секреты» — агент просит прочитать
.envи ключи проекта;
- правило, из-за которого агент спрашивает, и его ступень, например «… · Спрашивать всегда». У каждого действия одна из четырёх ступеней: «Запрещено», «Спрашивать всегда», «Спрашивать в Авто», «Без вопросов»; с какой ступени агент спрашивает, зависит от режима (Режимы агента). Под правилом — как было бы в другом режиме: «Спросит в любом режиме» или «В режиме Полный это выполнится без вопроса».
Кнопки
| Кнопка | Клавиша | Что произойдёт |
|---|---|---|
| «Разрешить» | Enter | Агент выполнит это действие один раз. |
| «Запретить» | Esc | Действие не выполнится. В ленте у строки появится отметка «Отклонено вами». |
Клавиши действуют на первую карточку, если курсор не стоит в поле ввода и не открыт другой диалог. Так случайный Enter не разрешит того, чего вы не хотели.
«Больше не спрашивать»
Отметьте «Больше не спрашивать для таких команд», и ниже появится выбор «Как долго не спрашивать»:
| Вариант | Где действует |
|---|---|
| «Всегда» (по умолчанию) | Во всех чатах этого проекта и во всех рабочих копиях (git worktree) его репозитория, например в копиях проекта для задач. Сохраняется после перезапуска. В другом проекте агент спросит снова, в том числе в отдельном клоне репозитория в другой папке. |
| «В этом чате» | Только в этом чате и только пока приложение открыто. |
Отметка «Больше не спрашивать» не отменяет запретов организации, правил проекта и самых опасных правил.
Некоторые действия приходится разрешать каждый раз отдельно: запись в базу данных, логи пода на кластерах prod,
секреты кластера, изменения на кластерах stage и prod, консольные клиенты облаков, планировщик crontab.
Галочки «Больше не спрашивать» у них нет. Что агенту можно делать с каждой базой, кластером и брокером сообщений,
задаёт уровень доступа на вкладке «Подключения» в «Настройки → Безопасность агента». Об уровнях доступа — страница
Доступ к базам, кластерам и очередям.
Карточки «На задачу» и «Для проекта»
Таких карточек две:
- «Агент просит адрес» — сеть агента ограничена списком, а ему нужен адрес не из списка. Под заголовком написано, зачем ему этот адрес.
- «Агент просит файлы с секретами проекта» — агент хочет прочитать
.envи ключи проекта. Ключи известных форматов модель не увидит, что бы вы ни ответили.
Кнопки у обеих одни и те же:
| Кнопка | Что произойдёт |
|---|---|
| «На задачу» (Enter) | Разрешено в этом чате, пока приложение открыто. |
| «Для проекта» | Разрешено для проекта, пока вы не уберёте разрешение в «Настройки → Безопасность агента». |
| «Отклонить» (Esc) | Не разрешено. |
Данные другой программы на macOS
На карточке «Агент просит данные другой программы» написаны название программы и причина. Кнопки — «Продолжить» и «Отмена». Если нажать «Продолжить», macOS сама спросит, разрешить ли доступ: ответьте в системном окне.
Вопросы агента
Вопрос приходит на карточке «Агент спрашивает» с подписью «Работа на паузе, пока вы не ответите».
- Выберите вариант ответа. Если написано «можно несколько», выберите несколько.
- Или напишите свой ответ в поле «Свой вариант…».
- Нажмите «Ответить» (Enter). Если вопросов несколько, кнопка заработает, когда вы ответите на все: вверху видно, на сколько вы уже ответили, например «2 из 3».
Кнопка «Пусть решит агент» отправляет агенту ответ: «Решите сами — на ваше усмотрение, и продолжайте». Esc на карточке вопроса делает то же самое.
В ленте вопросы остаются в виде диалога: «Агент задал 2 вопроса», ваши ответы и отметка «без ответа» там, где вы не ответили.
В режиме «План» приходит своя карточка — «План готов».
Решения субагентов
Субагенты не спрашивают вас отдельно. Их карточки приходят в чат, который их запустил, с подписью «Субагент «…» ждёт вашего решения» или «… ждёт вашего ответа». В списке чатов — «Субагент ждёт решения: …». Отвечайте на них так же, как на обычные карточки.
Как отозвать «Больше не спрашивать»
- Откройте «Настройки → Безопасность агента», вкладку «Исключения».
- В блоке «Запомненные ответы» найдите ответ. У каждого видно, сколько раз он сработал и когда в последний раз.
- Нажмите «Отозвать» или «Отозвать все».
Отозванный ответ перестаёт действовать сразу: агент снова спросит и в этом чате, и в новых. Перезапускать ничего не нужно.
Сколько будет вопросов
Число вопросов зависит от режима чата. В «Авто» агент спрашивает перед рискованными и необратимыми действиями, в «Полном» — только перед самыми опасными (Режимы агента). Ступень каждого действия можно поменять в «Настройки → Безопасность агента → Действия» (Ограничения агента).
Ограничения
- Если включён доступ с телефона, с телефона можно разрешить действие один раз и ответить на вопрос, но не поставить «Больше не спрашивать». Действия, которые приходится разрешать каждый раз отдельно, разрешаются только за компьютером.
- Карточки субагентов приходят только в тот чат, который их запустил.
Что дальше
- Режимы агента — от режима зависит, сколько будет карточек.
- Ограничения агента — ступени, песочница, сеть и файлы.
- Доступ к базам, кластерам и очередям — уровни доступа агента.
- Аварийная остановка и журнал — где видно каждое решение и действие агента.
Обновлено · Нашли неточность? Напишите на support@devmachine.ai или в Telegram.
