Creación de un asistente personal con OpenClaw
OpenClaw es un gateway de WhatsApp + Telegram + Discord + iMessage para agentes Pi. Los plugins agregan Mattermost. Esta guía es la configuración de “asistente personal”: un número de WhatsApp dedicado que se comporta como su agente siempre activo.⚠️ Seguridad ante todo
Está poniendo a un agente en posición de:- ejecutar comandos en su máquina (según su configuración de herramientas de Pi)
- leer/escribir archivos en su espacio de trabajo
- enviar mensajes hacia afuera vía WhatsApp/Telegram/Discord/Mattermost (plugin)
- Establezca siempre
channels.whatsapp.allowFrom(nunca ejecute abierto al mundo en su Mac personal). - Use un número de WhatsApp dedicado para el asistente.
- Los heartbeats ahora tienen un valor predeterminado de cada 30 minutos. Desactívelos hasta confiar en la configuración estableciendo
agents.defaults.heartbeat.every: "0m".
Requisitos previos
- OpenClaw instalado e incorporado — vea Primeros pasos si aún no lo ha hecho
- Un segundo número de teléfono (SIM/eSIM/prepago) para el asistente
La configuración de dos teléfonos (recomendada)
Quiere esto: Si vincula su WhatsApp personal a OpenClaw, cada mensaje hacia usted se convierte en “entrada del agente”. Eso rara vez es lo que quiere.Inicio rápido de 5 minutos
- Empareje WhatsApp Web (muestra un QR; escanéelo con el teléfono del asistente):
- Inicie el Gateway (déjelo en ejecución):
- Coloque una configuración mínima en
~/.openclaw/openclaw.json:
gateway.auth.token en la configuración de Control UI. Para reabrir más tarde: openclaw dashboard.
Darle al agente un espacio de trabajo (AGENTS)
OpenClaw lee las instrucciones operativas y la “memoria” desde su directorio de espacio de trabajo. De forma predeterminada, OpenClaw usa~/.openclaw/workspace como espacio de trabajo del agente y lo creará (más los archivos iniciales AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md) automáticamente durante la configuración o la primera ejecución del agente. BOOTSTRAP.md solo se crea cuando el espacio de trabajo es completamente nuevo (no debería volver a aparecer después de eliminarlo). MEMORY.md es opcional (no se crea automáticamente); cuando está presente, se carga para sesiones normales. Las sesiones de subagentes solo inyectan AGENTS.md y TOOLS.md.
Consejo: trate esta carpeta como la “memoria” de OpenClaw y conviértala en un repositorio git (idealmente privado) para que sus AGENTS.md + archivos de memoria tengan respaldo. Si git está instalado, los espacios de trabajo completamente nuevos se inicializan automáticamente.
Flujo de trabajo de memoria: Memoria Opcional: elija un espacio de trabajo diferente con
agents.defaults.workspace (admite ~).
La configuración que lo convierte en “un asistente”
OpenClaw tiene valores predeterminados adecuados para un asistente, pero normalmente querrá ajustar:- la persona/instrucciones en
SOUL.md - valores predeterminados de razonamiento (si lo desea)
- heartbeats (una vez que confíe en él)
Sesiones y memoria
- Archivos de sesión:
~/.openclaw/agents/<agentId>/sessions/{{SessionId}}.jsonl - Metadatos de sesión (uso de tokens, última ruta, etc.):
~/.openclaw/agents/<agentId>/sessions/sessions.json(legado:~/.openclaw/sessions/sessions.json) /newo/resetinicia una sesión nueva para ese chat (configurable medianteresetTriggers). Si se envía solo, el agente responde con un saludo breve para confirmar el reinicio./compact [instructions]compacta el contexto de la sesión e informa el presupuesto de contexto restante.
Heartbeats (modo proactivo)
De forma predeterminada, OpenClaw ejecuta un heartbeat cada 30 minutos con el prompt:Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.
Establezca agents.defaults.heartbeat.every: "0m" para desactivar.
- Si
HEARTBEAT.mdexiste pero está efectivamente vacío (solo líneas en blanco y encabezados markdown como# Heading), OpenClaw omite la ejecución del heartbeat para ahorrar llamadas a la API. - Si el archivo falta, el heartbeat se ejecuta y el modelo decide qué hacer.
- Si el agente responde con
HEARTBEAT_OK(opcionalmente con relleno corto; veaagents.defaults.heartbeat.ackMaxChars), OpenClaw suprime la entrega saliente para ese heartbeat. - Los heartbeats ejecutan turnos completos del agente — intervalos más cortos consumen más tokens.
Medios de entrada y salida
Los adjuntos entrantes (imágenes/audio/documentos) pueden exponerse a su comando mediante plantillas:{{MediaPath}}(ruta de archivo temporal local){{MediaUrl}}(pseudo-URL){{Transcript}}(si la transcripción de audio está habilitada)
MEDIA:<path-or-url> en su propia línea (sin espacios). Ejemplo:
Lista de verificación operativa
/tmp/openclaw/ (predeterminado: openclaw-YYYY-MM-DD.log).
Siguientes pasos
- WebChat: WebChat
- Operaciones del Gateway: Runbook del Gateway
- Cron + activaciones: Trabajos Cron
- Aplicación complementaria de la barra de menús de macOS: OpenClaw macOS app
- App de nodo para iOS: iOS app
- App de nodo para Android: Android app
- Estado de Windows: Windows (WSL2)
- Estado de Linux: Linux app
- Seguridad: Security