Los agentes de IA autonomos son potentes, pero conllevan un riesgo significativo. Un agente con acceso shell podria eliminar archivos accidentalmente, hacer solicitudes de red no deseadas o filtrar datos sensibles. La contenedorizacion tradicional (Docker, gVisor) no fue disenada para las politicas de seguridad granulares y especificas de agentes que las aplicaciones de IA necesitan. NVIDIA OpenShell aborda esta brecha con un entorno de ejecucion en arenal construido especificamente para agentes de IA.
OpenShell, publicado en github.com/NVIDIA/OpenShell, es la respuesta de codigo abierto de NVIDIA a la seguridad de agentes. Proporciona un entorno de ejecucion aislado donde los agentes operan bajo politicas YAML declarativas que controlan precisamente el acceso al sistema de archivos, la comunicacion de red, la ejecucion de procesos y las llamadas de inferencia. El arenal se ejecuta como un proceso separado con privilegios minimos, aplicando politicas a nivel de kernel a traves de modulos de seguridad de Linux.
Lo que distingue a OpenShell de los arenales de proposito general es su diseno consciente de IA. Comprende operaciones especificas de agentes como llamadas de inferencia de modelos, invocaciones de herramientas y limites de ventana de contexto. Las politicas pueden escribirse para permitir que un agente lea un directorio de proyecto pero nunca escriba en el, o para llamar a un endpoint de API especifico pero bloquear todo otro trafico de red. Esta granularidad es esencial para implementaciones de produccion donde los agentes manejan datos sensibles.
Que es NVIDIA OpenShell?
OpenShell es un entorno de ejecucion en arenal de codigo abierto para agentes de IA. Proporciona aislamiento de seguridad a traves de politicas YAML declarativas que controlan las operaciones del sistema de archivos, red, procesos e inferencia. Construido por NVIDIA, esta disenado para ser agnostico respecto al agente: compatible con Claude Code, agentes LangChain, AutoGPT e implementaciones de agentes personalizados.
Como funciona el arenal de OpenShell?
OpenShell utiliza las caracteristicas de seguridad del kernel de Linux para aplicar el aislamiento del agente.
| Dominio de Seguridad | Controles | Metodo de Aplicacion |
|---|---|---|
| Sistema de archivos | Lectura/escritura/ejecucion por ruta | Linux seccomp + Landlock |
| Red | Permitir/bloquear por hostname, puerto, protocolo | eBPF + nftables |
| Procesos | Restringir fork/exec, capacidades de senales | Linux seccomp-bpf |
| Inferencia | Permitir/bloquear por endpoint de modelo | Interceptacion a nivel de aplicacion |
| Entorno | Enmascarar variables de entorno, secretos | Aislamiento a nivel de proceso |
| Tiempo | Limitar tiempo de ejecucion en pared | Cuotas de cgroup de procesos |
Cada politica se compila en un filtro seccomp que se ejecuta en el kernel, haciendo que la aplicacion sea rapida y segura.
Como se ve una politica de OpenShell?
Las politicas se definen en YAML con una sintaxis clara y declarativa:
name: "code-review-agent"
version: "1.0"
filesystem:
read:
paths: ["/home/user/projects", "/usr/share/doc"]
write: []
execute: []
network:
allow:
- hostname: "api.github.com"
port: 443
protocol: "tcp"
deny:
- hostname: "*"
port: "*"
protocol: "*"
process:
max_forks: 10
allowed_executables: ["/usr/bin/git", "/usr/bin/python3"]
inference:
allowed_models:
- "nvidia/nemotron-4-340b-instruct"
max_tokens_per_call: 4096
max_calls_per_session: 100
Esta politica restringe un agente de revision de codigo a leer solo archivos del proyecto, llamar solo a la API de GitHub y un endpoint de inferencia de NVIDIA, y ejecutar solo git y Python.
Que agentes de IA son compatibles?
OpenShell esta disenado para funcionar con cualquier agente de IA que pueda lanzarse como subproceso.
| Agente | Metodo de Integracion | Estado |
|---|---|---|
| Claude Code | Inicio CLI dentro del arenal | Compatible |
| Agentes LangChain | Integracion SDK Python | Compatible |
| AutoGPT | Inicio CLI dentro del arenal | Compatible |
| Agentes Python personalizados | API Python de OpenShell | Soporte nativo |
| Cualquier binario de agente | oshell run | Universal |
La herramienta CLI oshell lanza cualquier comando dentro de un contexto de arenal:
# Lanzar Claude Code en un arenal restringido
oshell run --policy code-review.yaml -- claude code
# Lanzar un agente personalizado
oshell run --policy data-analysis.yaml -- python agent.py
Como instalo OpenShell?
La instalacion requiere un sistema Linux con soporte del kernel para los modulos de seguridad requeridos:
# Descargar la ultima version
curl -LO https://github.com/NVIDIA/OpenShell/releases/latest/download/oshell
chmod +x oshell
sudo mv oshell /usr/local/bin/
# Verificar instalacion
oshell --version
Las imagenes Docker tambien estan disponibles para entornos de desarrollo que no son Linux, aunque la aplicacion completa de seguridad requiere caracteristicas nativas del kernel de Linux.
Cual es la licencia de OpenShell?
OpenShell se publica bajo la Licencia Apache 2.0, la licencia de codigo abierto estandar de NVIDIA. Esto permite el uso, modificacion y distribucion gratuitos en proyectos comerciales y no comerciales, con proteccion de patentes de NVIDIA.
Preguntas Frecuentes
Que es NVIDIA OpenShell?
OpenShell es el entorno de ejecucion en arenal de codigo abierto de NVIDIA para agentes de IA que aplica politicas de seguridad a traves de caracteristicas del kernel de Linux. Controla las operaciones del sistema de archivos, red, procesos e inferencia mediante politicas YAML declarativas.
Como funciona el arenal de OpenShell?
Utiliza Linux seccomp, Landlock, eBPF y cgroups para aplicar politicas detalladas a nivel de kernel. Cada politica se compila en un filtro seccomp para una aplicacion rapida y segura.
Como se ve una politica de OpenShell?
Las politicas se definen en YAML con secciones para sistema de archivos (rutas de lectura/escritura/ejecucion), red (permitir/denegar hostnames y puertos), procesos (limites de fork y ejecutables permitidos) e inferencia (modelos permitidos y limites de tokens).
Que agentes de IA son compatibles?
Claude Code, agentes LangChain, AutoGPT y cualquier agente personalizado que pueda ejecutarse como subproceso. El comando oshell run envuelve cualquier binario o script en un contexto de arenal.
Como instalo OpenShell?
Descargue el binario oshell desde GitHub Releases, hagalo ejecutable y coloquelo en su PATH. Requiere un sistema Linux con soporte del kernel para seccomp, Landlock y eBPF.
Lecturas Adicionales
- Repositorio de GitHub de NVIDIA OpenShell
- Guia de Seguridad de Agentes de IA de NVIDIA
- Documentacion de Linux seccomp
- Modulo de Seguridad Landlock de Linux
- eBPF para Seguridad: Una Guia Practica
graph TD
A[Agente de IA] --> B[Areanal OpenShell]
B --> C{Aplicador de Politicas}
C --> D[Filtro seccomp]
C --> E[Landlock FS]
C --> F[eBPF Red]
C --> G[Limites cgroup]
D --> H[Kernel]
E --> H
F --> H
G --> H
H --> I[Llamadas al Sistema]
H --> J[Operaciones de Archivos]
H --> K[Paquetes de Red]
H --> L[Creacion de Procesos]flowchart LR
subgraph Declaracion de Politicas
A[Politica YAML] --> B[Reglas de Sistema de Archivos]
A --> C[Reglas de Red]
A --> D[Reglas de Procesos]
A --> E[Reglas de Inferencia]
end
subgraph Aplicacion en Kernel
B --> F[Landlock]
C --> G[eBPF]
D --> H[seccomp]
E --> I[Interceptacion de App]
end
subgraph Resultados
F --> J[Permitido]
G --> J
H --> J
I --> J
F --> K[Denegado]
G --> K
H --> K
I --> K
end
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!