Tools
Modo elevado
Cuando un agente se ejecuta dentro de un entorno aislado, sus comandos 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.
Directivas
Controle el modo elevado por sesión mediante comandos de barra:
| Directiva | Qué hace |
|---|---|
/elevated on |
Ejecuta fuera del entorno aislado en la ruta configurada del host y mantiene las aprobaciones |
/elevated ask |
Igual que on (alias) |
/elevated full |
Ejecuta fuera del entorno aislado en la ruta configurada del host y omite las aprobaciones cuando la política de aprobación del modo/host ya es permisiva |
/elevated off |
Vuelve a la ejecución confinada al entorno aislado |
También está disponible como /elev on|off|ask|full.
Envíe /elevated sin argumentos para ver el nivel actual.
Cómo funciona
Comprobar la disponibilidad
El modo elevado debe estar habilitado en la configuración y el remitente debe figurar en la lista de permitidos:
{ tools: { elevated: { enabled: true, allowFrom: { discord: ["user-id-123"], whatsapp: ["+15555550123"], }, }, },}Establecer el nivel
Envíe un mensaje que contenga únicamente una directiva para establecer el valor predeterminado de la sesión:
/elevated fullTambién puede usarla en línea (solo se aplica a ese mensaje):
/elevated on ejecuta el script de despliegueLos 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 para la sesión es
node. En el modo full, las aprobaciones de exec se omiten cuando la política de aprobación
resuelta para el modo/host de exec ya es totalmente permisiva (seguridad full,
solicitud off); de lo contrario, sigue aplicándose 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 (solo se aplica 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 aplicar 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 enlace del adaptador del SDK, que se utiliza cuando
tools.elevated.allowFrom.<provider>no está configurado. Actualmente, ningún canal incluido implementa este enlace, por lo que, en la práctica, todos los proveedores necesitan hoy una entrada explícita detools.elevated.allowFrom.<provider>. - Deben superarse todos los controles; de lo contrario, el modo elevado se considera no disponible
Formatos de las entradas de la lista de permitidos:
| Prefijo | Coincide con |
|---|---|
| (ninguno) | ID del remitente, E.164 o campo From |
name: |
Nombre visible del remitente |
username: |
Nombre de usuario del remitente |
tag: |
Etiqueta del remitente |
id:, from:, e164: |
Selección explícita de identidad |
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 del host: el modo elevado no convierte
autoen una anulación libre entre hosts. Utiliza las reglas de destino de exec configuradas para la sesión y eligenodesolo cuando el destino ya esnode. - Independiente de
/exec: la directiva/execajusta los valores predeterminados de exec por sesión (host, seguridad, solicitud, Node) para los remitentes autorizados y no requiere el modo elevado.
Contenido relacionado
Ejecución de comandos de shell desde el agente.
Sistema de aprobación y lista de permitidos para exec.
Configuración del entorno aislado en el nivel del Gateway.
Cómo se combinan los tres controles durante una llamada a una herramienta.