logo
Desarrollo
Buscar
Seguridad en tiempo de ejecución

Seguridad en tiempo de ejecución

Descripción general

La configuración de seguridad en tiempo de ejecución se utiliza para configurar las políticas de seguridad durante la ejecución del Agent, e incluye tres pestañas: Contactos, Nodos y Sandbox.

Página de seguridad en tiempo de ejecución-CN


Niveles de permisos de herramientas

Todas las herramientas se clasifican en tres niveles según su nivel de seguridad:

Nivel Nombre Comportamiento Ejemplos de herramientas aplicables
P0 Ejecución automática No requiere confirmación del usuario, se ejecuta de forma silenciosa Read File, List Directory, Memory Query
P1 Confirmación en la primera vez Muestra una ventana emergente de permisos para confirmar en la primera invocación Bash, Web Fetch, Skill
P2 Confirmación en cada ocasión Cada invocación requiere la confirmación del usuario Operaciones de alto riesgo

Ventana emergente de permisos

Cuando el Agent invoca una herramienta de nivel P1/P2, la interfaz muestra una ventana emergente de confirmación de permisos:

Ventana emergente de confirmación de permisos-CN

Información Descripción
Nombre de la herramienta La herramienta cuya invocación se solicita
Descripción de la operación La operación concreta que ejecutará la herramienta
Parámetros de entrada Detalles de los parámetros que recibe la herramienta
Permitir/Denegar Botones de decisión del usuario

Verificación previa de comandos peligrosos

La herramienta Bash incorpora un mecanismo de verificación previa de comandos peligrosos (bashCommandPreflightCheck):

Tipo de detección Descripción
Detección de rutas destructivas Detecta comandos de eliminación de alto riesgo como rm -rf /, rm -rf ~
Detección de comandos del sistema Detecta comandos a nivel de sistema como shutdown, reboot
Riesgo de pérdida de datos Detecta operaciones que podrían provocar pérdida de datos

Cuando se detecta un comando peligroso, se escala automáticamente al nivel P2 (confirmación en cada ocasión).


Interceptación con Hooks

El sistema admite los Hooks beforeToolUse y afterToolUse:

Hook Momento de activación Capacidad
beforeToolUse Antes de la ejecución de la herramienta Puede impedir la ejecución, modificar los parámetros o forzar la elevación del nivel de confirmación
afterToolUse Después de la ejecución de la herramienta Puede registrar logs o activar operaciones posteriores

Entorno de ejecución en sandbox

El sandbox proporciona un entorno de ejecución de código aislado que protege la seguridad del sistema anfitrión.

Especificaciones técnicas

Parámetro Valor
Virtualización Microvirtualización con comunicación VirtIO Serial
Arquitecturas admitidas arm64, amd64
Tiempo de ejecución Entorno Linux completo (Bash, Python, Node.js)

Tres modos de ejecución

Modo Descripción
local Se ejecuta directamente en el sistema anfitrión (predeterminado)
sandbox Se fuerza la ejecución dentro del sandbox
auto El sistema decide automáticamente si es necesario el sandbox

Proceso de instalación

  1. Detección del sistema: comprueba la compatibilidad del sistema anfitrión
  2. Descarga del Runtime: descarga el tiempo de ejecución de virtualización
  3. Descarga de la Image: descarga la imagen de disco de Linux
  4. Listo: el sandbox está disponible

Progreso de instalación del sandbox-CN

El progreso de la instalación se muestra mediante el componente CoworkSandboxProgress (fase, descargado/total, porcentaje).

Detección de estado

Campo de estado Descripción
supported Si el sistema actual admite el sandbox
runtimeReady Si el tiempo de ejecución ya está instalado
imageReady Si la imagen ya está instalada
downloading Si se está descargando

Seguridad de nodos

La pestaña Nodos configura las políticas de seguridad en escenarios de múltiples nodos:

Configuración Descripción
Visibilidad del nodo Controla el alcance de visibilidad externa de este nodo (account / enterprise)
Declaración de capacidades Configura la lista de herramientas y comandos que este nodo expone al exterior
Permisos remotos Política de gestión cuando un nodo remoto solicita permisos (las reglas específicas de distribución entre nodos se detallan en Arquitectura multinodo — Reglas de distribución de ventanas emergentes de permisos)


Impacto real de los niveles de seguridad

Comprender el impacto real de los niveles de seguridad en el uso cotidiano:

Escenario P0 (ejecución automática) P1 (confirmación en la primera vez) P2 (confirmación en cada ocasión)
El Agent necesita leer un archivo Lectura silenciosa, sin percepción Confirmación por ventana emergente en la primera vez, luego automático Ventana emergente en cada ocasión
El Agent ejecuta npm install Ejecución directa Confirmación por ventana emergente en la primera vez Ventana emergente en cada ocasión
El Agent ejecuta rm -rf node_modules Ejecución directa (¡peligroso!) Confirmación por ventana emergente en la primera vez Ventana emergente en cada ocasión
El Agent busca en la web Búsqueda directa Confirmación por ventana emergente en la primera vez Ventana emergente en cada ocasión

Nota: la herramienta Bash bajo P0 ejecutará de forma silenciosa cualquier comando de shell, incluida la eliminación de archivos. Aunque incorpora una verificación previa de comandos peligrosos, no puede cubrir todos los comandos de riesgo. Se recomienda establecer Bash al menos en P1.

Recomendaciones para elegir el nivel de seguridad

Entorno de uso Configuración recomendada Motivo
Equipo de desarrollo personal, plenamente confiable Bash: P1, resto: P0 Alta eficiencia; Bash con confirmación en la primera vez previene errores
Dispositivo compartido / entorno de equipo Bash: P2, Web Fetch: P1, resto: P0 Cada ejecución de comando requiere confirmación, evitando que los errores afecten a otros
Usuarios principiantes Todo en P1 o P2 Aprender los patrones de comportamiento del Agent mediante las ventanas emergentes de confirmación
Entorno de demostración Todo en P2 Máxima seguridad, totalmente controlable

Impacto real del sandbox

Dimensión de comparación Sandbox desactivado (modo local) Sandbox activado (modo sandbox)
Operaciones con archivos El Agent lee y escribe directamente tus archivos locales El Agent opera en un entorno aislado, sin afectar los archivos locales
Instalación de software npm install se instala directamente en tu proyecto Se instala dentro del sandbox y desaparece al salir
Comandos peligrosos rm -rf elimina directamente tus archivos Solo afecta al sistema de archivos virtual dentro del sandbox
Velocidad de ejecución Velocidad nativa Ligeramente más lenta (sobrecarga de virtualización)
Escenarios de aplicación Tareas de desarrollo cotidianas de confianza Ejecutar código no confiable u operaciones experimentales

Cómo elegir entre los tres modos de ejecución

Modo Público adecuado Descripción
local (predeterminado) Desarrolladores cotidianos Todos los comandos se ejecutan directamente en el equipo local, con la máxima velocidad
sandbox Usuarios sensibles a la seguridad Todos los comandos se ejecutan en el sandbox, con aislamiento total
auto Usuarios avanzados El sistema decide automáticamente según el riesgo del comando: los de bajo riesgo se ejecutan localmente y los de alto riesgo entran en el sandbox

Cómo instalar el sandbox

  1. Abre la APP → Configuración → Seguridad en tiempo de ejecución → pestaña Sandbox
  2. El sistema detecta automáticamente si el dispositivo actual admite el sandbox
  3. Si es compatible, haz clic en el botón Instalar
  4. Espera a que se descarguen el Runtime (aprox. 50-100 MB) y la Image (aprox. 200-500 MB)
  5. Una vez completada la descarga, el estado del sandbox se muestra como "Listo"
  6. En el modo de ejecución, selecciona sandbox o auto

Nota: actualmente el sandbox solo admite macOS (arm64 y amd64). La compatibilidad con Windows está planificada.


Impacto real de la visibilidad del nodo

Configuración Impacto
account (personal) Solo tú puedes ver e invocar este nodo cuando inicias sesión en otros dispositivos. Los miembros del equipo no lo ven.
enterprise (empresa) Todos los miembros del mismo espacio de trabajo pueden ver este nodo y pueden distribuir tareas a este dispositivo para su ejecución a través del Gateway.

Consejo: establecerlo en enterprise significa que las conversaciones iniciadas por miembros del equipo podrían ejecutar tareas del Agent en tu equipo (incluidas la lectura/escritura de archivos y la ejecución de comandos). Asegúrate de comprender este impacto y de confiar en los miembros de tu equipo.


Documentos relacionados