Tools
Режим підвищених привілеїв
Коли агент працює всередині пісочниці, його команди exec обмежені
середовищем пісочниці. Режим підвищених прав дає агенту змогу вийти за ці межі й натомість запускати команди
поза пісочницею, з налаштовуваними шлюзами підтвердження.
Директиви
Керуйте режимом підвищених прав для кожного сеансу за допомогою слеш-команд:
| Директива | Що вона робить |
|---|---|
/elevated on |
Запускає поза пісочницею на налаштованому шляху хоста, зберігаючи підтвердження |
/elevated ask |
Те саме, що on (псевдонім) |
/elevated full |
Запускає поза пісочницею на налаштованому шляху хоста й пропускає підтвердження |
/elevated off |
Повертає виконання, обмежене пісочницею |
Також доступно як /elev on|off|ask|full.
Надішліть /elevated без аргументу, щоб побачити поточний рівень.
Як це працює
Check availability
Режим підвищених прав має бути ввімкнений у конфігурації, а відправник має бути у списку дозволених:
{
tools: {
elevated: {
enabled: true,
allowFrom: {
discord: ["user-id-123"],
whatsapp: ["+15555550123"],
},
},
},
}
Set the level
Надішліть повідомлення лише з директивою, щоб установити типовий рівень для сеансу:
/elevated full
Або використайте її в рядку (застосовується лише до цього повідомлення):
/elevated on run the deployment script
Commands run outside the sandbox
Коли режим підвищених прав активний, виклики exec виходять за межі пісочниці. Ефективним хостом є
gateway за замовчуванням або node, коли налаштована чи сеансова ціль exec є
node. У режимі full підтвердження exec пропускаються. У режимах on/ask
налаштовані правила підтвердження все ще застосовуються.
Порядок визначення
- Вбудована директива в повідомленні (застосовується лише до цього повідомлення)
- Перевизначення сеансу (установлюється надсиланням повідомлення лише з директивою)
- Глобальне значення за замовчуванням (
agents.defaults.elevatedDefaultу конфігурації)
Доступність і списки дозволених
- Глобальний шлюз:
tools.elevated.enabled(має бутиtrue) - Список дозволених відправників:
tools.elevated.allowFromзі списками для кожного каналу - Шлюз для окремого агента:
agents.list[].tools.elevated.enabled(може лише додатково обмежувати) - Список дозволених для окремого агента:
agents.list[].tools.elevated.allowFrom(відправник має відповідати і глобальному, і агентському спискам) - Резервний варіант Discord: якщо
tools.elevated.allowFrom.discordпропущено,channels.discord.allowFromвикористовується як резервний варіант - Усі шлюзи мають пройти перевірку; інакше режим підвищених прав вважається недоступним
Формати записів списку дозволених:
| Префікс | Збігається з |
|---|---|
| (немає) | ID відправника, E.164 або поле From |
name: |
Відображуване ім'я відправника |
username: |
Ім'я користувача відправника |
tag: |
Тег відправника |
id:, from:, e164: |
Явне націлювання на ідентичність |
Чим режим підвищених прав не керує
- Політика інструментів: якщо
execзаборонено політикою інструментів, режим підвищених прав не може це перевизначити. - Політика вибору хоста: режим підвищених прав не перетворює
autoна вільне перевизначення між хостами. Він використовує налаштовані або сеансові правила цілі exec, вибираючиnodeлише тоді, коли ціль уже єnode. - Окремо від
/exec: директива/execналаштовує типові параметри exec для кожного сеансу для авторизованих відправників і не потребує режиму підвищених прав.