Los agentes están evolucionando de sistemas de preguntas y respuestas a asistentes autónomos que pueden leer archivos, llamar APIs y gestionar flujos de trabajo complejos. No obstante, implementar un agente que ejecute código y utilice herramientas sin el aislamiento adecuado puede acarrear riesgos significativos, especialmente al emplear infraestructuras en la nube de terceros.
NVIDIA NemoClaw es un conjunto de referencia de código abierto que orquesta NVIDIA OpenShell para ejecutar OpenClaw, una puerta de enlace autohospedada que conecta plataformas de mensajería con agentes de codificación AI impulsados por modelos abiertos como NVIDIA Nemotron. NemoClaw ofrece incorporación guiada, gestión del ciclo de vida, endurecimiento de imágenes y un plano de versiones, proporcionando un pipeline completo desde la inferencia del modelo hasta el despliegue seguro de agentes interactivos.
Este tutorial detalla el proceso de despliegue de NemoClaw en NVIDIA DGX Spark, abarcando desde la configuración del entorno de ejecución y el servicio del modelo local, hasta la instalación de la pila de NemoClaw y su conexión a Telegram para acceso remoto. Aprenderás a construir un asistente AI local y aislado que funcione en tu hardware y sea accesible desde cualquier cliente de Telegram.
Enlaces rápidos a modelos y código
Accede a los siguientes recursos para el tutorial:
Software y modelos:
Código y documentación:
Requisitos previos
Para obtener instrucciones completas de configuración, visita el DGX Spark Playbook for NemoClaw, o comienza sin hardware necesario.
Si planeas utilizar otro dispositivo, NemoClaw ha sido probado y validado en dispositivos listados bajo alternativas de despliegue en la documentación. Verifica la capacidad de API/VLLM.
Antes de comenzar la configuración, asegúrate de que se cumplan los siguientes requisitos:
- Hardware: Sistema DGX Spark (GB10) ejecutando Ubuntu 24.04 LTS con los controladores NVIDIA más recientes.
- Docker: Versión 28.x o superior, con el runtime de contenedor NVIDIA configurado (cubierto en la siguiente sección).
- Ollama: Instalado como el motor de servicio de modelos local.
- Token de bot de Telegram: Creado a través de @BotFather de Telegram (detallado en la sección de integración de Telegram).
Tiempo estimado: Aproximadamente 20–30 minutos de configuración activa, más 15–30 minutos para la descarga inicial del modelo (~87 GB), dependiendo del ancho de banda de la red.
Los siguientes comandos verifican la preparación del sistema:
head -n 2 /etc/os-release # Esperado: Ubuntu 24.04 nvidia-smi # Esperado: GPU NVIDIA GB10 docker info --format '{{.ServerVersion}}' # Esperado: 28.x+
Componentes de NemoClaw
Antes de construir un asistente aislado, es importante entender el software utilizado en este entorno.
| Componente | Qué es | Qué hace | Cuándo usarlo |
| NVIDIA NemoClaw | Conjunto de referencia con capa de orquestación e instalador | Instala OpenClaw y OpenShell con políticas e inferencia. | Forma más rápida de crear un asistente siempre activo en un sandbox más seguro. |
| NVIDIA OpenShell | Runtime de seguridad y puerta de enlace | Aplica límites de seguridad (sandboxing), gestiona credenciales y hace proxy de llamadas a red/API. | Cuando necesitas un «jardín amurallado» para ejecutar agentes sin exponer información sensible. |
| OpenClaw | Marco de agente multi-canal | Opera dentro del sandbox, gestiona plataformas de chat (Slack/Discord), memoria e integración de herramientas. | Cuando necesitas crear un agente de larga duración conectado a aplicaciones de mensajería. |
| NVIDIA Nemotron 3 Super 120B | LLM optimizado para agentes (120B parámetros) | Proporciona el “cerebro” con alta capacidad de seguimiento de instrucciones y razonamiento multi-paso. | Para asistentes de calidad de producción que requieren herramientas y flujos de trabajo complejos. |
| NVIDIA NIM / Ollama | Despliegues de inferencia | Ejecuta el modelo Nemotron localmente | Si tienes una GPU y deseas ejecutar el LLM localmente |
Nota de seguridad: Aunque OpenShell proporciona un aislamiento robusto, recuerda que ningún sandbox ofrece protección completa contra inyecciones avanzadas. Siempre despliega en sistemas aislados al probar nuevas herramientas.
Comencemos.
Configura los entornos de ejecución
DGX Spark requiere varios pasos de configuración de Docker para admitir contenedores acelerados por GPU con los ajustes de aislamiento apropiados. Comienza registrando el runtime de contenedor NVIDIA con Docker:
sudo nvidia-ctk runtime configure --runtime=docker
A continuación, establece el modo del espacio de nombres del cgroup en host. Esta configuración es necesaria para que DGX Spark funcione correctamente con cargas de trabajo en contenedores:
sudo python3 -c " import json, os path = '/etc/docker/daemon.json' d = json.load(open(path)) if os.path.exists(path) else {} d['default-cgroupns-mode'] = 'host' json.dump(d, open(path, 'w'), indent=2) " Reinicia Docker para aplicar los cambios y verifica que el runtime de NVIDIA esté funcionando:
sudo systemctl restart docker docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
La salida debería mostrar la GPU GB10. Para evitar requerir sudo para los siguientes comandos de Docker, añade el usuario actual al grupo de Docker:
sudo usermod -aG docker $USER newgrp docker
Instala Ollama
Ollama es un motor ligero de servicio de modelos para ejecutar grandes modelos de lenguaje localmente. Instálalo usando el instalador oficial:
curl -fsSL https://ollama.com/install.sh | sh
Por defecto, Ollama escucha solo en localhost. Como el agente NemoClaw se ejecuta dentro de un sandbox, con su propio espacio de nombres de red, debe acceder a Ollama a través de límites de red. Configura Ollama para escuchar en todas las interfaces:
sudo mkdir -p /etc/systemd/system/ollama.service.d printf '[Service]nEnvirn' | sudo tee /etc/systemd/system/ollama.service.d/override.conf sudo systemctl daemon-reload sudo systemctl restart ollama
Verifica que Ollama esté funcionando y sea accesible en todas las interfaces:
curl http://0.0.0.0:11434
Importante: Solo inicia Ollama a través de systemd. Un proceso Ollama iniciado manualmente no recogerá la anulación OLLAMA_HOST=0.0.0.0, y el sandbox de NemoClaw no alcanzará el servidor de inferencia.
sudo systemctl restart ollama
A continuación, descarga el modelo Nemotron 3 Super 120B. La descarga es de aproximadamente 87 GB:
ollama pull nemotron-3-super:120b
Una vez que la descarga se complete, precarga los pesos del modelo en la memoria de la GPU para evitar latencias de inicio en la primera interacción del agente:
ollama run nemotron-3-super:120b
Después de que el modelo se cargue y presente un aviso, sal de la sesión con /bye. Los pesos permanecerán en caché en la memoria. Confirma que el modelo está disponible:
ollama list # Deberías ver algo como NAME ID SIZE MODIFIED nemotron-3-super:120b 95acc78b3ffd 86 GB hace 2 semanas
Instala NemoClaw
Con la base en su lugar, instala NemoClaw con un solo comando:
curl -fsSL https://www.nvidia.com/nemoclaw.sh | bash
El instalador proporciona dependencias de Node.js, el runtime de OpenShell y la CLI de NemoClaw, y luego inicia un asistente de incorporación. El asistente solicita las siguientes opciones de configuración:
- Nombre del sandbox: Especifica un nombre alfanumérico en minúsculas con guiones (por ejemplo,
my-assistant). Este nombre se utiliza en todos los comandos posteriores. - Proveedor de inferencia: Selecciona Ollama local (opción 7) para dirigir la inferencia a la instancia local de Ollama.
- Modelo: Selecciona nemotron-3-super:120b (opción 1).
- Presets de políticas: Presiona Y si aceptas las políticas predeterminadas. Estos presets configuran restricciones de sistema de archivos y red para el sandbox.
- Integración de Telegram: Puedes configurar opcionalmente tu bot de Telegram durante el paso 5 del asistente de incorporación.
Al final del proceso de incorporación, el instalador muestra una URL de interfaz web tokenizada en el formato http://127.0.0.1:18789/#token=. Registra esta URL, ya que es necesaria para acceder al panel web en el futuro y no se mostrará de nuevo.
Si el comando nemoclaw no es reconocido después de la instalación, recarga el entorno de shell para habilitarlo en todas las sesiones futuras:
Verifica la configuración
Conéctate al sandbox y verifica que el agente pueda acceder al backend de inferencia:
nemoclaw my-assistant connect
Este comando devuelve información del modelo confirmando que el entorno aislado puede comunicarse con Ollama. A continuación, envía un mensaje de prueba a través del agente:
openclaw agent --agent main --local -m "hello" --session-id test
Si la configuración es correcta, NVIDIA Nemotron 3 Super generará una respuesta. Ten en cuenta que la inferencia con el modelo de 120B generalmente toma de 30 a 90 segundos por respuesta; esto es esperado para un modelo de este tamaño ejecutando inferencia local.
La interfaz de terminal interactiva proporciona una experiencia de prueba más conversacional:
Usa Ctrl+C para salir de la interfaz de terminal al finalizar.
Accediendo a la interfaz web
Para acceder al panel web localmente, sal del sandbox y abre la URL tokenizada registrada durante la incorporación:
A continuación, navega a http://127.0.0.1:18789/#token= en un navegador.
Acceso remoto desde otra máquina. Si accedes a DGX Spark a través de la red y no directamente, se requiere configuración adicional. Primero, determina la dirección IP de Spark:
hostname -I | awk '{print $1}'
Inicia el reenvío de puertos a través de la sesión de terminal de Spark:
openshell forward start 18789 my-assistant --background
Desde tu máquina remota, crea un túnel SSH a Spark:
ssh -L 18789:127.0.0.1:18789 @
Con el túnel activo, abre http://127.0.0.1:18789/#token= en un navegador en la máquina remota.
Nota: Utiliza únicamente 127.0.0.1. Un localhost puede resultar en un error de “origen no permitido”.
Conectar a Telegram
La integración de Telegram extiende el asistente más allá de la terminal local, haciéndolo accesible desde cualquier dispositivo con un cliente de Telegram.
Crear el bot de Telegram
Abre Telegram y busca @BotFather para gestionar tus bots. Inicia una conversación y utiliza el comando /newbot. @BotFather te guiará a través del proceso de nombrar el bot y te proporcionará un token API al finalizar. Guarda este token para el paso de configuración a continuación.
Nota: Si configuraste Telegram durante el asistente de incorporación de NemoClaw, Telegram ya está funcionando dentro del sandbox.
Si no configuraste Telegram durante la incorporación, vuelve a ejecutar el asistente de incorporación con el token establecido. Esto reconstruye el sandbox con Telegram integrado. El token del bot se registra con la puerta de enlace OpenShell y no entra directamente en el sandbox.
export TELEGRAM_BOT_TOKEN= nemoclaw onboard
Verifica la integración
Abre Telegram, localiza el bot y envía un mensaje. En el primer contacto, OpenClaw requiere emparejamiento. El bot responderá con un código de emparejamiento:
OpenClaw: acceso no configurado. Tu ID de usuario de Telegram: Código de emparejamiento:
Aprueba el emparejamiento desde dentro del sandbox:
nemoclaw my-assistant connect openclaw pairing approve telegram exit
Envía otro mensaje en Telegram. Después de la ventana de latencia de inferencia, el bot debería devolver una respuesta generada por NVIDIA Nemotron 3 Super.
En este punto, el despliegue está completo. Un asistente AI está funcionando completamente en NVIDIA DGX Spark, aislado por OpenShell, impulsado por un modelo abierto de 120B, y accesible de forma remota a través de Telegram. Toda la inferencia ocurre localmente, no se envían datos del dispositivo, y no hay dependencias de servicios externos en tiempo de ejecución.
¿Qué comandos puedo consultar para el despliegue?
Los siguientes comandos son útiles para la gestión continua del despliegue de NemoClaw.
| Comando | Descripción |
|---|---|
nemoclaw my-assistant connect |
Abre una sesión de shell dentro del sandbox. |
nemoclaw my-assistant status |
Muestra el estado del sandbox. |
nemoclaw my-assistant logs --follow |
Transmite registros en vivo del sandbox. |
nemoclaw list |
Lista todos los sandboxes configurados. |
nemoclaw start / nemoclaw stop |
Inicia o detiene servicios auxiliares (puente de Telegram, etc.). |
openshell forward start 18789 my-assistant --background |
Habilita el reenvío de puertos para el acceso remoto a la interfaz web. |
Comandos para una desinstalación limpia
Para la limpieza y desinstalación, NemoClaw proporciona un desinstalador en ~/.nemoclaw/source/uninstall.sh. Consulta la página de instrucciones para detalles sobre flags de limpieza y solución de problemas comunes.
Extensión del acceso del agente con aprobaciones de políticas
Por defecto, el sandbox restringe al agente a un conjunto limitado de puntos finales de red. Cuando solicitas al agente hacer algo que requiere un servicio externo.
Por ejemplo, al intentar obtener una página web o llamar a una API de terceros, OpenShell bloquea la solicitud y el agente informa que el acceso a la red no está disponible.
Para ver esto en acción, abre el TUI de OpenShell en una terminal en el host:
En una segunda terminal, conéctate al sandbox y comienza una conversación:
Pide al agente que haga algo como “usar curl para obtener https://httpbin.org/get”.
El agente intenta la solicitud, OpenShell la bloquea y el TUI muestra la conexión bloqueada con el host de destino, puerto y el binario que la inició.
Desde el TUI, puedes aprobar la solicitud para la sesión actual o denegarla para mantener el punto final bloqueado.
Cuando desees añadir permanentemente un punto final, utiliza un preset de política desde el host:
nemoclaw my-assistant policy-add
Este flujo de aprobación te brinda visibilidad y control en tiempo real sobre a qué puede acceder el agente sin modificar la política base o reiniciar el sandbox.
Comienza ahora
Comienza a construir con NVIDIA NemoClaw hoy mismo.
Mantente al día con NVIDIA NemoClaw suscribiéndote a noticias de NVIDIA y siguiendo a NVIDIA AI en LinkedIn, X, Discord, y YouTube.
Visita la página de NemoClaw para obtener recursos para comenzar. Explora NemoClaw en GitHub y Playbook disponible en build.nvidia.com.
Participa en transmisiones en vivo de Nemotron, tutoriales, y la comunidad de desarrolladores en el foro de NVIDIA y Discord.


