exec quedan confinados al entorno aislado. El modo elevado permite que el agente salga de él y ejecute comandos fuera del entorno aislado, con controles de aprobación configurables.
El modo elevado solo cambia el comportamiento cuando el agente está aislado. Para los agentes no aislados, exec ya se ejecuta en el host.
Directivas
Controle el modo elevado por sesión con comandos de barra:
También está disponible como
/elev on|off|ask|full.
Envíe /elevated sin argumentos para ver el nivel actual.
Cómo funciona
1
Comprobar la disponibilidad
El modo elevado debe estar habilitado en la configuración y el remitente debe estar en la lista de permitidos:
2
Establecer el nivel
Envíe un mensaje que contenga únicamente la directiva para establecer el valor predeterminado de la sesión:O utilícela en línea (se aplica únicamente a ese mensaje):
3
Los comandos se ejecutan fuera del entorno aislado
Con el modo elevado activo, las llamadas a
exec salen del entorno aislado. El host efectivo es
gateway de forma predeterminada, o node cuando el destino de exec configurado o de la sesión es
node. En el modo full, las aprobaciones de exec se omiten cuando la política de aprobación
del modo/host de exec resuelta ya es totalmente permisiva (seguridad full,
solicitud off); de lo contrario, se sigue aplicando la política de aprobación normal. En el
modo on/ask, siempre se aplican las reglas de aprobación configuradas.Orden de resolución
- Directiva en línea en el mensaje (se aplica únicamente a ese mensaje)
- Anulación de sesión (se establece enviando un mensaje que contenga únicamente una directiva)
- Valor predeterminado global (
agents.defaults.elevatedDefaulten la configuración)
Disponibilidad y listas de permitidos
- Control global:
tools.elevated.enabled(debe sertrue) - Lista de remitentes permitidos:
tools.elevated.allowFromcon listas por canal - Control por agente:
agents.entries.*.tools.elevated.enabled(solo puede imponer más restricciones; tanto el control global como el control por agente deben sertrue) - Lista de permitidos por agente:
agents.entries.*.tools.elevated.allowFrom(el remitente debe coincidir tanto con la lista global como con la lista por agente) - Lista de permitidos alternativa proporcionada por el canal: los plugins de canal pueden proporcionar opcionalmente una lista de permitidos alternativa mediante un hook adaptador del SDK, que se utiliza cuando
tools.elevated.allowFrom.<provider>no está configurado. Actualmente, ningún canal incluido implementa este hook, por lo que, en la práctica, todos los proveedores necesitan hoy una entradatools.elevated.allowFrom.<provider>explícita. - Deben superarse todos los controles; de lo contrario, el modo elevado se considera no disponible
Qué no controla el modo elevado
- Política de herramientas: si la política de herramientas deniega
exec, el modo elevado no puede anularla. - Política de selección de host: el modo elevado no convierte
autoen una anulación libre entre hosts. Utiliza las reglas del destino de exec configurado o de la sesión y solo eligenodecuando el destino ya esnode. - Independiente de
/exec: la directiva/execajusta los valores predeterminados de exec por sesión (host, seguridad, solicitud, nodo) para los remitentes autorizados y no requiere el modo elevado.
El comando de chat de bash (prefijo
!; alias /bash) es un control independiente que requiere que tools.elevated esté habilitado además de su propia opción tools.bash.enabled. Deshabilitar el modo elevado también bloquea los comandos de shell !.Relacionado
Herramienta exec
Ejecución de comandos de shell desde el agente.
Aprobaciones de exec
Sistema de aprobación y listas de permitidos para
exec.Aislamiento
Configuración del entorno aislado a nivel del Gateway.
Entorno aislado frente a política de herramientas frente a modo elevado
Cómo se combinan los tres controles durante una llamada a una herramienta.