OpenClaw: Dominando el Asistente de IA Autónomo para Escritorio y Terminal
Lo Que Dominarás en Este Tutorial
- Deploy OpenClaw locally on macOS, Linux, and Windows using native CLI daemons.
- Integrate omnichannel bot gateways for Telegram, Discord, and Slack.
- Configure Docker and process sandboxes to isolate autonomous shell execution.
- Mount external tools and APIs via Model Context Protocol (MCP) servers.
1. What is OpenClaw and Why is it Dominating 2026?
OpenClaw is an open-source personal autonomous agent framework that crossed 389k GitHub stars. Unlike cloud-locked assistants, OpenClaw runs directly on developer hardware, maintaining continuous background daemons that interact across messaging platforms and execute system-level operations.
# Global installation and daemon init
npm install -g openclaw@latest
# Configure local LLM backend (DeepSeek R1 via Ollama)
openclaw config set provider.type "ollama"
openclaw config set provider.model "deepseek-r1:14b"
openclaw config set provider.baseUrl "http://localhost:11434"
# Start the OpenClaw system daemon
openclaw daemon start
2. Omnichannel Bot Gateways: Telegram & Discord
OpenClaw provides drop-in connectors for messaging protocols. By connecting your personal bot token, you can message your development workstation from your phone to trigger deployments, run code tests, or summarize production logs.
# Link Telegram Bot
openclaw channel add telegram \
--token "$TELEGRAM_BOT_TOKEN" \
--allowed-users "123456789"
# Test agent response via command line
openclaw exec "Clone repo https://github.com/myorg/api and run pytest in Docker sandbox"
3. Tool Execution & Docker Sandboxing
Autonomous agents must never run arbitrary code directly on your host machine without safeguards. OpenClaw routes all bash commands, git mutations, and browser automations through ephemeral Docker containers.
# openclaw.config.json (Sandbox Definition)
{
"sandbox": {
"type": "docker",
"image": "python:3.12-slim-bookworm",
"cpuLimit": 2.0,
"memoryLimit": "4GB",
"network": "bridge",
"volumes": [
"/workspace:/app:rw"
]
},
"tools": [
"bash_exec",
"fs_read",
"fs_write",
"mcp_brave_search"
]
}
Evaluación Rápida: Pon a Prueba tus Conocimientos
4. Paso a paso: programa un agente de resumen diario
Ya tienes un demonio en marcha (sección 1), una puerta de enlace de Telegram (sección 2) y una sandbox de Docker (sección 3). El cierre natural es un trabajo que el agente ejecute sin ti: un resumen matutino, investigado dentro de la sandbox y entregado en tu teléfono. Lo vas a armar con los mismos comandos que esta guía ya enseñó, sin maquinaria nueva.
Paso 1: delimita las herramientas del trabajo en la configuración
El resumen necesita búsqueda web y escritura de archivos para sus notas, pero no acceso libre a todo tu sistema de archivos. Ajusta la definición de la sandbox de la sección 3 y conviértela en una lista de permisos específica para este trabajo: el arreglo de herramientas define lo que el agente puede hacer, y un trabajo programado debería tener el mínimo posible:
# openclaw.config.json (briefing job profile)
{
"sandbox": {
"type": "docker",
"image": "python:3.12-slim-bookworm",
"cpuLimit": 2.0,
"memoryLimit": "4GB",
"network": "bridge",
"volumes": [ "/workspace/briefings:/app:rw" ]
},
"tools": [ "bash_exec", "fs_read", "fs_write", "mcp_brave_search" ]
}
Paso 2: prueba el prompt del resumen de forma interactiva
Nunca programes un prompt que no hayas visto funcionar al menos una vez. Ejecútalo con openclaw exec exactamente como lo hará el trabajo de cron y lee el resultado con ojo crítico: es la misma ruta de exec que la sección 2 usó para probar la puerta de enlace de Telegram:
# Sanity check: the agent reports its sandbox and tool list
openclaw exec "Reply with the sandbox image you are running in and the tools you can use"
# The briefing task itself
openclaw exec "Search the web for the five most important AI developer-tool releases of the last 24 hours. For each: name, what changed, and the source link. Save the briefing as briefing.md in /app and print it."
Paso 3: ponlo en el programador del sistema anfitrión
El demonio de OpenClaw está siempre activo, pero el disparador puede ser el programador que tu sistema operativo ya trae. Una línea de crontab que llama a openclaw exec a las 07:00 mantiene el montaje honesto: un solo comando, registrado en un archivo que puedes auditar:
# crontab -e -> run the briefing every day at 07:00
0 7 * * * openclaw exec "Run the morning briefing task and save it as briefing.md in /app" >> ~/openclaw-briefing.log 2>&1
5. Un ejemplo completo
A las 07:00 se dispara la línea de cron. El demonio entrega la tarea al agente, que planifica dos llamadas a herramientas: mcp_brave_search para los lanzamientos del último día y luego fs_write para guardar briefing.md dentro de la sandbox, donde el montaje del volumen hace que aparezca en /workspace/briefings en el anfitrión. Como vinculaste Telegram en la sección 2 con tu ID de chat en --allowed-users, ese mismo agente puede entregar el resultado en tu teléfono: escríbele al bot «envíame el resumen de hoy» y leerá el archivo de vuelta con fs_read y responderá en el canal. Las piezas encajan porque cada capa hace un solo trabajo: cron dispara, el demonio razona, la sandbox ejecuta y la puerta de enlace entrega. Para las 07:05 ya estás leyendo cinco notas de lanzamientos con sus fuentes, café en mano, y el archivo de registro guarda una pista de auditoría completa de lo que se ejecutó.
El artefacto: qué contiene realmente briefing.md
Como el trabajo guarda un archivo en lugar de limitarse a chatear, cada ejecución deja un artefacto inspeccionable en /workspace/briefings en el anfitrión. Esta es la forma que produce el prompt de exec del paso 2: cinco elementos, cada uno con su fuente, en un formato que puedes revisar en menos de un minuto:
# Morning briefing - AI developer tools (last 24 hours)
1. [Tool name] - [what changed, one line] - [source link]
2. [Tool name] - [what changed, one line] - [source link]
3. [Tool name] - [what changed, one line] - [source link]
4. [Tool name] - [what changed, one line] - [source link]
5. [Tool name] - [what changed, one line] - [source link]
Generated by the OpenClaw briefing job; sources via mcp_brave_search.
Mantén el formato aburrido a propósito. Una forma de artefacto estable es lo que te permite comparar el lunes con el martes, pasar el archivo a otras herramientas o pedirle al mismo agente que te lea el resumen de ayer por Telegram: esa capacidad de componer piezas es lo que hace que un agente programado sea más útil que un script programado.
Revisa la ejecución después
Un agente programado se gana la confianza igual que un trabajo de cron: siendo auditable a la mañana siguiente. Dos comandos te dicen si la ejecución de las 07:00 ocurrió, qué hizo y si el artefacto existe; revísalos antes de cambiar cualquier configuración:
# The audit trail the crontab line appends to on every run
tail -n 50 ~/openclaw-briefing.log
# The artifact itself, on the host side of the sandbox volume mount
ls -la /workspace/briefings/
Si el registro muestra la ejecución y el archivo está actualizado, el sistema funcionó y cualquier problema está en el contenido, no en la maquinaria. Si el registro está vacío, el disparador nunca se activó; si el registro está lleno pero falta el archivo, el lugar donde mirar es el montaje del volumen de la sandbox. Ese orden te ahorra una hora depurando la capa equivocada.
6. Solución de errores
- El agente responde en la CLI pero nunca en Telegram. La puerta de enlace está rechazando tus mensajes: el ID de chat en --allowed-users no coincide con la cuenta desde la que escribes, o el canal se añadió antes de que cambiara el token. Vuelve a ejecutar el comando para añadir el canal de la sección 2 con el token actual de BotFather y prueba con openclaw exec antes de culpar al modelo.
- openclaw exec se queda colgado y termina por agotar el tiempo. No se puede llegar al backend de razonamiento. La sección 1 apuntó el proveedor a Ollama en http://localhost:11434: si Ollama no está en marcha, nada de lo que sigue puede funcionar. Inicia Ollama, confirma que el nombre del modelo coincide con lo que registró openclaw config set provider.model y repite la ejecución de comprobación.
- Las herramientas fallan con errores de red dentro de la sandbox. Esto lo controla la definición de la sandbox: "network": "bridge" (sección 3) da al contenedor acceso saliente, mientras que "none" lo aísla por completo. Una configuración copiada de un ejemplo de seguridad suele venir con la red desactivada; revisa ese valor antes de depurar la herramienta de búsqueda.
- El agente dice que una herramienta no está disponible. La herramienta no está en el arreglo tools de openclaw.config.json. Ese arreglo es una lista de permisos, no un catálogo: bash_exec, fs_read, fs_write y mcp_brave_search existen para el agente solo porque la sección 3 los declaró. Añade el nombre que falta, reinicia el demonio y repite la comprobación.