Повышенный режим (/elevated directives)
Что это делает
/elevated onвыполняется на хосте шлюза Gateway и сохраняет подтверждения выполнения команд (то же, что/elevated ask)./elevated fullвыполняется на хосте шлюза Gateway и автоматически подтверждает выполнение команд (пропускает подтверждения)./elevated askвыполняется на хосте шлюза Gateway, но сохраняет подтверждения выполнения команд (то же, что/elevated on).on/askне принуждаютexec.security=full; настроенная политика безопасности/запросов по‑прежнему применяется.- Изменяет поведение только когда агент sandboxed (в противном случае выполнение уже происходит на хосте).
- Формы директив:
/elevated on|off|ask|full,/elev on|off|ask|full. - Принимаются только
on|off|ask|full; всё остальное возвращает подсказку и не меняет состояние.
Что он контролирует (и чего не контролирует)
- Шлюзы доступности:
tools.elevated— глобальная базовая настройка.agents.list[].tools.elevatedможет дополнительно ограничивать повышенный режим для каждого агента (оба условия должны разрешать). - Состояние на сеанс:
/elevated on|off|ask|fullзадаёт уровень повышенного режима для текущего ключа сеанса. - Встроенная директива:
/elevated on|ask|fullвнутри сообщения применяется только к этому сообщению. - Группы: в групповых чатах директивы повышенного режима учитываются только при упоминании агента. Сообщения, состоящие только из команды и обходящие требование упоминания, считаются упоминанием.
- Выполнение на хосте: повышенный режим принудительно включает
execна хосте шлюза Gateway;fullтакже устанавливаетsecurity=full. - Подтверждения:
fullпропускает подтверждения выполнения команд;on/askучитывают их, когда этого требуют правила allowlist/ask. - Агенты без sandbox: no-op для места выполнения; влияет только на шлюзы, логирование и статус.
- Политика инструментов сохраняется: если
execзапрещён политикой инструмента, повышенный режим использовать нельзя. - Отдельно от
/exec:/execнастраивает значения по умолчанию на сеанс для авторизованных отправителей и не требует повышенного режима.
Порядок разрешения
- Встроенная директива в сообщении (применяется только к этому сообщению).
- Переопределение сеанса (устанавливается отправкой сообщения, содержащего только директиву).
- Глобальное значение по умолчанию (
agents.defaults.elevatedDefaultв конфиге).
Установка значения по умолчанию для сеанса
- Отправьте сообщение, состоящее только из директивы (допускаются пробелы), например
/elevated full. - Отправляется подтверждающий ответ (
Elevated mode set to full.../Elevated mode disabled.). - Если доступ к повышенному режиму отключён или отправитель не находится в утверждённом списке разрешённых, директива отвечает прикладной ошибкой и не меняет состояние сеанса.
- Отправьте
/elevated(или/elevated:) без аргумента, чтобы увидеть текущий уровень повышенного режима.
Доступность + списки разрешённых
- Функциональный флаг:
tools.elevated.enabled(значение по умолчанию может быть выключено через конфиг, даже если код поддерживает функцию). - Глобальный allowlist отправителей:
tools.elevated.allowFromс allowlist’ами по провайдерам (например,discord,whatsapp). - Шлюз для агента:
agents.list[].tools.elevated.enabled(необязательно; может только дополнительно ограничивать). - Allowlist для агента:
agents.list[].tools.elevated.allowFrom(необязательно; при наличии отправитель должен соответствовать и глобальному allowlist, и allowlist’у агента). - Резерв для Discord: если
tools.elevated.allowFrom.discordопущен, используется списокchannels.discord.dm.allowFromкак резерв. Установитеtools.elevated.allowFrom.discord(даже[]), чтобы переопределить. Allowlist’ы для агента резерв не используют. - Все шлюзы должны пройти проверку; иначе повышенный режим считается недоступным.
Логирование + статус
- Вызовы выполнения команд в повышенном режиме логируются на уровне info.
- Статус сеанса включает повышенный режим (например,
elevated=ask,elevated=full).