> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Режим повышенных привилегий

Когда агент работает внутри песочницы, его команды `exec` ограничены средой песочницы. **Режим повышенных привилегий** позволяет агенту выйти из неё и выполнять команды за пределами песочницы с настраиваемыми условиями подтверждения.

> [!NOTE]
>
> Режим повышенных привилегий изменяет поведение, только когда агент работает **в песочнице**. Для агентов без песочницы exec уже выполняется на хосте.

## Директивы

Управляйте режимом повышенных привилегий для каждого сеанса с помощью команд с косой чертой:

| Директива | Действие |
| - | - |
| `/elevated on` | Выполнять вне песочницы по настроенному пути хоста, сохраняя подтверждения |
| `/elevated ask` | То же, что `on` (псевдоним) |
| `/elevated full` | Выполнять вне песочницы по настроенному пути хоста и пропускать подтверждения, если политика подтверждения для режима/хоста уже разрешает это |
| `/elevated off` | Вернуться к выполнению, ограниченному песочницей |

Также доступно как `/elev on|off|ask|full`.

Отправьте `/elevated` без аргумента, чтобы увидеть текущий уровень.

## Принцип работы

**1. Проверьте доступность**

Режим повышенных привилегий должен быть включён в конфигурации, а отправитель должен находиться в списке разрешённых:

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  tools: {
    elevated: {
      enabled: true,
      allowFrom: {
        discord: ["user-id-123"],
        whatsapp: ["+15555550123"],
      },
    },
  },
}
```

**2. Установите уровень**

Отправьте сообщение, содержащее только директиву, чтобы задать значение по умолчанию для сеанса:

```
/elevated full
```

Или используйте её прямо в сообщении (применяется только к этому сообщению):

```
/elevated on запусти скрипт развёртывания
```

**3. Команды выполняются вне песочницы**

Когда режим повышенных привилегий активен, вызовы `exec` выполняются за пределами песочницы. По умолчанию фактическим хостом является
`gateway`, либо `node`, если настроенной или сеансовой целью exec является
`node`. В режиме `full` подтверждения exec пропускаются, если политика подтверждения для определённых режима и хоста
уже полностью разрешительная (безопасность `full`,
запрос `off`); в противном случае по-прежнему применяется обычная политика подтверждения. В режимах
`on`/`ask` настроенные правила подтверждения применяются всегда.

## Порядок разрешения

1. **Встроенная директива** в сообщении (применяется только к этому сообщению)
2. **Переопределение сеанса** (задаётся отправкой сообщения, содержащего только директиву)
3. **Глобальное значение по умолчанию** (`agents.defaults.elevatedDefault` в конфигурации)

## Доступность и списки разрешённых

* **Глобальное условие**: `tools.elevated.enabled` (должно быть `true`)
* **Список разрешённых отправителей**: `tools.elevated.allowFrom` со списками для каждого канала
* **Условие для агента**: `agents.list[].tools.elevated.enabled` (может только дополнительно ограничивать; глобальное условие и условие для агента должны иметь значение `true`)
* **Список разрешённых для агента**: `agents.list[].tools.elevated.allowFrom` (отправитель должен соответствовать как глобальному списку, так и списку для агента)
* **Резервный список разрешённых от канала**: плагины каналов могут при необходимости предоставлять резервный список разрешённых через перехватчик адаптера SDK; он используется, когда `tools.elevated.allowFrom.<provider>` не настроен. Сейчас ни один встроенный канал не реализует этот перехватчик, поэтому на практике каждому провайдеру требуется явная запись `tools.elevated.allowFrom.<provider>`.
* **Все условия должны быть выполнены**; иначе режим повышенных привилегий считается недоступным

Форматы записей списка разрешённых:

| Префикс | Что сопоставляется |
| - | - |
| (нет) | Идентификатор отправителя, номер E.164 или поле From |
| `name:` | Отображаемое имя отправителя |
| `username:` | Имя пользователя отправителя |
| `tag:` | Тег отправителя |
| `id:`, `from:`, `e164:` | Явное указание идентичности |

## Что не контролирует режим повышенных привилегий

* **Политика инструментов**: если `exec` запрещён политикой инструментов, режим повышенных привилегий не может переопределить запрет.
* **Политика выбора хоста**: режим повышенных привилегий не превращает `auto` в свободное переопределение между хостами. Он использует настроенные или сеансовые правила цели exec, выбирая `node`, только когда целью уже является `node`.
* **Отдельно от `/exec`**: директива `/exec` настраивает для авторизованных отправителей сеансовые значения exec по умолчанию (хост, безопасность, запрос, Node) и не требует режима повышенных привилегий.

> [!NOTE]
>
> Команда чата bash (префикс `!`; псевдоним `/bash`) управляется отдельным условием: помимо собственного флага `tools.bash.enabled`, требуется включить `tools.elevated`. Отключение режима повышенных привилегий также блокирует команды оболочки `!`.

## Связанные материалы

> [card] [Инструмент Exec](https://docs2.openclaw.ai/ru/tools/exec.md)
>
> Выполнение команд оболочки агентом.

> [card] [Подтверждения Exec](https://docs2.openclaw.ai/ru/tools/exec-approvals.md)
>
> Система подтверждений и списков разрешённых для `exec`.

> [card] [Песочница](https://docs2.openclaw.ai/ru/gateway/sandboxing.md)
>
> Настройка песочницы на уровне Gateway.

> [card] [Песочница, политика инструментов и режим повышенных привилегий](https://docs2.openclaw.ai/ru/gateway/sandbox-vs-tool-policy-vs-elevated.md)
>
> Как три условия сочетаются при вызове инструмента.
