Módulo 3 · Parte B de 3

El agente OpenClaw

El Módulo 3a conectó el navegador a un runtime persistente. OpenClaw es el entorno de ejecución del agente dentro de ese stack de NemoClaw: combina un modelo y herramientas con una sesión en el servidor y un workspace respaldado por archivos.

NemoClaw aporta el blueprint que empaqueta este entorno con OpenShell y la política de despliegue. Es OpenClaw, en lugar de un orquestador independiente escrito en Python, quien dirige cada turno en la conversación e incorpora los archivos del workspace al contexto activo. En esta página examinarás esos archivos, compararás dos configuraciones de personalidad y guardarás información en una memoria que perdura más allá de una llamada al modelo.

La estructura del directorio es la configuración: editar un archivo cambia la información que leerá el turno siguiente.

El workspace desde el punto de vista del agente

Cada archivo de la carpeta aporta una parte distinta del prompt. Como la correspondencia es estable, puedes anticipar qué comportamiento modificará cada edición.

.openclaw/workspace/ SOUL.md personalidad, límites, tono y valores AGENTS.md instrucciones de operación y reglas IDENTITY.md nombre, criatura, estilo y emoji USER.md quién es la persona y cuáles son sus preferencias TOOLS.md notas de uso para cada herramienta HEARTBEAT.md lista periódica de tareas autónomas memory/ registros diarios, un archivo al día 2026-06-11.md notas sin procesar que el agente añade mientras trabaja MEMORY.md memoria a largo plazo seleccionada (solo en la sesión principal) skills/ paquetes Markdown para cada skill (página siguiente)

La memoria se organiza en torno a dos niveles. Mientras trabaja, el agente añade notas sin procesar a un archivo con fecha dentro de memory/. Después resume lo que debe perdurar en la memoria seleccionada a largo plazo, MEMORY.md. El runtime carga MEMORY.md en la sesión principal y lo excluye de contextos compartidos o grupales, de modo que las notas personales permanezcan privadas. Más adelante leerás ambos archivos directamente desde el sandbox activo.

Trata el autoinforme como evidencia. Pregunta al agente qué contiene su prompt y compara la respuesta con el workspace activo en el Paso 1b:

Paso 1 · Pide al agente que se describa

En un turno, la celda siguiente pide a OpenClaw que enumere los archivos de su workspace y explique la función de cada uno. La respuesta refleja tanto lo que el entorno incorpora al prompt como lo que sus herramientas pueden ver, por lo que editar un archivo y volver a ejecutar la celda cambiará el informe generado.

Dado que el gateway incorpora la carpeta al prompt antes de cada turno, editar un archivo cambia la respuesta siguiente de forma inmediata.

El mismo runtime de Kickstart. Estas celdas reutilizan el launchable conectado en 3a. El curso expone su gateway, no la ruta interna /v1/chat/completions. Si una celda registra ⚠ DEGRADED o deja de responder, ejecuta Recuperar una vez para esa instancia nueva. En una implementación local, usa el playbook de configuración de NemoClaw y mantén el mismo contrato del gateway.

Aplicado · Operador¿Verificar el espacio de trabajo desde el plano del operador?

Paso 1b · Lee el workspace tú mismo

En el Paso 1, el agente describió sus archivos; no tienes que aceptar lo que afirma sin comprobarlo. Hasta ahora, el único canal era el gateway que transporta tus mensajes al agente.

El launchable también expone una terminal: un shell en el host, por encima del sandbox del agente, al que Cloudflare protege. La función de ayuda helpers.terminal() abre ese shell directamente desde esta página a través de dos puntos de entrada:

  • helpers.terminal("bash") abre el shell de la VM del host, donde puedes ejecutar openshell sandbox list.
  • helpers.terminal("openshell sandbox connect <agent>") te lleva dentro del sandbox donde se ejecuta el agente y reside el workspace.

OpenShell es el sandbox a nivel del kernel que contiene al agente. Por ahora, trátalo como el límite entre operador y agente que el Módulo 4 definirá por completo y probará directamente. El nombre del agente en el comando de conexión procede de GET /api/agent, la misma llamada que usó Kickstart para descubrir el launchable.

La celda siguiente se conecta al sandbox y lee tres archivos de la instancia activa: SOUL.md, la memoria diaria y el MEMORY.md seleccionado. Edita la lista de comandos y vuelve a ejecutar la celda para explorar cualquier otro archivo.

El launchable tiene dos planos de autoridad. El primero es la terminal, que se ejecuta como operador por encima del límite del sandbox y puede leer todos los archivos y enumerar los sandboxes. El agente ocupa el segundo plano. Comparte la máquina con la terminal, pero se ejecuta bajo la política más restrictiva de OpenShell que pondremos a prueba en el Módulo 4.

Paso 2 · Dos escenarios, lado a lado

Como la personalidad es un archivo, sustituir la definición de SOUL.md cambia la voz del agente. El mecanismo real consiste en escribir el archivo: guarda una nueva definición de personalidad y el turno siguiente la incorpora por sí solo.

Observar una edición real en el disco lleva tiempo, por lo que la celda de abajo simula dicho intercambio. Envía dos sesiones etiquetadas y el launchable asigna cada clave de sesión a una variante predefinida de SOUL.md. Así, dos configuraciones responden a la misma pregunta sin que edites ningún archivo.

El enrutamiento por clave de sesión es un recurso del laboratorio. La imagen de NemoClaw incluye un conjunto de variantes predefinidas de SOUL.md y vincula el sufijo de una clave de sesión con una de ellas, únicamente para mostrar dos voces con un clic. Fuera del laboratorio, el gateway no dispone de esas variantes: dos claves leerían el mismo SOUL.md y devolverían respuestas con la misma personalidad. En una implementación real, cambiarás la personalidad editando SOUL.md.

Escenario A · SOUL.md predeterminado

OpenClaw estándar: amigable, conciso y dispuesto a utilizar cualquier herramienta permitida por la política; una configuración adecuada para el desarrollo.

Al resumir un documento, produce una síntesis corta e indica qué herramientas usaría a continuación.

Escenario B · SOUL.md de auditoría

Una personalidad orientada a la revisión de código: se niega a ejecutar código antes de identificar la superficie de riesgo y cita el archivo que examina en cada afirmación.

Al resumir el mismo documento, produce una lista de riesgos y preguntas directas sobre lo que no está documentado.

La voz está en el archivo. Las respuestas difieren porque el runtime incorporó al prompt de cada sesión una definición de SOUL distinta. Para cambiar la personalidad real, edita ese archivo o añade un paquete de skills; el turno siguiente verá el cambio. En el Paso 1b leíste el SOUL.md activo desde el sandbox. Editarlo recorre la misma ruta en sentido inverso.

Paso 3 · El agente edita su propio contexto

Pídele al agente que guarde una preferencia en MEMORY.md y solicítala en el turno siguiente. El modelo no tiene estado persistente, por lo que el segundo turno solo puede responder porque el runtime conservó la preferencia en el historial de sesión y en el MEMORY.md que guardó el agente.

Esos almacenes tienen alcances distintos. El historial pertenece a tu sesión actual únicamente. MEMORY.md puede trasladar un dato guardado a una sesión nueva cuya transcripción empieza vacía.

Esta separación afecta directamente a la seguridad. Dado que el agente puede reescribir su propio contexto, la capa de contención situada debajo debe impedir que una escritura incorrecta cause daños reales. OpenClaw modifica libremente los archivos Markdown de su workspace, mientras que el sandbox de OpenShell impide que esa misma escritura alcance:

En el Módulo 4, un agente con privilegios deliberadamente excesivos intentará cruzar ese límite.

Referencias

Lista completa en Para ir más lejos · Referencias.

Prueba · conversa con tu agente activo

Todo lo visto en esta página converge en un panel: una conversación real con el agente OpenClaw que se ejecuta en tu launchable. Pídele que realice cualquiera de estas acciones y observa los indicadores de herramientas mientras trabaja:

Edita un archivo del workspace y cambiará la respuesta siguiente del agente.

← Módulo 3a: Conecta NemoClaw