AiHummer
Русский
ВойтиЛичный кабинет
v1.0.x
{ }Swagger

Обязательное одобрение рискованных действий

v1.0.x · обновлено 2026-07-21

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

Тариф: обязательное одобрение — возможность платного тарифа, а не бесплатная/общеплатформенная.

Возможность Тариф
Обязательное одобрение действий Enterprise-grade (Business+/Enterprise)

Как работает обязательное одобрение

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

# ~/.aihummer/etc/gateway.env
# Список инструментов через запятую, требующих одобрения перед выполнением
AIHUMMER_APPROVAL_TOOLS=mail,http_request

Ожидающий запрос появляется в веб-интерфейсе и admin API (/v1/admin/approvals), где проверяющий видит инструмент, его аргументы и контекст, после чего одобряет или отклоняет его.

Одобрить — выполнить; отклонить — не выполнять

Проверка однозначна:

  • Одобрить — инструмент выполняется ровно с теми аргументами, которые были рассмотрены.
  • Отклонить — инструмент не выполняется. Нет частичного или отложенного выполнения; отклонённый вызов просто не происходит, и обработка продолжается без этого побочного эффекта.

[!NOTE] Отклонение — это жёсткая остановка для этого конкретного вызова. Агент не повторяет отклонённое действие без нового запроса на одобрение.

Почему это безопасно при восстановлении

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

AiHummer предотвращает это с помощью стабильного ключа в ledger, сохраняющегося при возобновлении, и барьера побочных эффектов: каждый побочный эффект записывается под стабильным ключом, а барьер отказывается повторно выполнять эффект, который в ledger уже отмечен как выполненный.

[!TIP] Практический итог: одобрение восстановленной обработки не запускает повторно почту или отправку в канал. Барьер не повторяет действие, уже отмеченное в ledger как выполненное. Для внешних систем сохраняйте идемпотентный ключ на случай потери подтверждения.

Полную механику ledger и барьера побочных эффектов см. в Multitenancy и идемпотентность.

Для каких инструментов требовать одобрение

Требуйте одобрение для инструментов, эффекты которых видны извне или трудно отменимы. Хорошие кандидаты:

  • mail — исходящая почта.
  • Отправка в канал / исходящая доставка клиентам или сотрудникам.
  • http_request и другие инструменты, способные менять внешние системы.
  • code_exec на общих хостах (там он к тому же выключен по умолчанию).

Инструменты только на чтение (поиск, обращение к знаниям, время), как правило, в обязательном одобрении не нуждаются. Сочетайте одобрения с изолированным режимом и контролем исходящих подключений для инструментов, выходящих в публичный интернет.

Куда дальше