DEV Community

Victor Aguilar C.
Victor Aguilar C.

Posted on

4. OpenClaw en MacMini, Canales.

Configurar canales de mensajería

a. Conectar Telegram

Si configuraste el Telegram bot de tu agent durante el onboarding, envía /start a @youragent_bot (o el handle que hayas elegido) en Telegram. Tu primer DM devolverá un pairing code. Apruébalo:

openclaw pairing list telegram
openclaw pairing approve telegram <code>
Enter fullscreen mode Exit fullscreen mode

Pro Tip: Usa un Telegram Group con Topics para conversaciones en paralelo

Un solo DM thread con tu bot funciona bien al inicio, pero rápido se vuelve una pared de conversaciones mezcladas — code tasks, research questions, content drafts, ideas random — todo revuelto. Esto infla la context window y confunde al agent.

La solución es la feature de Topics de Telegram. En vez de hacer DM a tu bot, creas un grupo privado y organizas conversaciones por topic:

  • En Telegram, crea un nuevo grupo. Ponle un nombre como “Agent HQ”.
  • Agrega tu bot (@youragent_bot) como el único otro miembro.
  • Ve a Group Settings > Topics y habilita topics.
  • Haz que tu bot sea administrator del grupo (lo necesita para leer y responder en topics).
  • Crea topics para distintos workstreams. Por ejemplo:
    • #general — chat casual, preguntas rápidas
    • #code-tasks — trabajo de desarrollo
    • #research — web lookups, análisis
    • #content — writing, borradores de Substack
    • #automations — cron jobs, scheduled tasks
  • Dile a tu agent que responda a cada mensaje del grupo, no solo cuando lo @mention. Puedes hacerlo simplemente diciéndolo en chat: “In this group, respond to every message, not just ones that tag you.”

Cada topic obtiene su propio conversation context, así que el bot se mantiene enfocado y no quema tokens cargando historial no relacionado. Cuando un topic termina, solo bórralo y crea uno nuevo.

Este es uno de los workflow improvements de mayor impacto que puedes hacer, y cuesta $0.

Arreglar Session Expiration para Topic Channels

Por defecto, OpenClaw inicia una nueva session todos los días a las 4 AM. En un solo DM thread, esto tiene sentido porque evita que la context window crezca para siempre. Pero si estás usando topic channels, este default juega en tu contra. Cada topic ya está acotado a un subject específico, y un reset diario hace que el agent olvide toda la conversación de ese topic de la noche a la mañana.

La solución es extender el session expiration para que tus topic channels mantengan continuidad. Dile a tu agent:

“Set the session expiration to one year instead of the default daily reset. I’m using Telegram topic channels to keep conversations scoped, so I don’t need daily session resets.”

Tu agent actualizará la session configuration. Puedes verificarlo confirmando que las conversaciones en tus topic channels retienen contexto de un día a otro.

Crédito: Matthew Berman mostró este approach en su OpenClaw deep dive. Encontró que el reset diario era counterproductive una vez que cambió a organización por topics.

b. Set Up Discord (Detailed Walkthrough)

https://docs.openclaw.ai/channels/discord#discord

Ya creaste el bot application y obtuviste el token en el Step 5. Ahora crearás un server, invitarás al bot, y lo conectarás a OpenClaw.

b.1 Crear un Discord Server dedicado

Haz esto desde tu cuenta existente de Discord en tu teléfono o computadora:

  1. Abre Discord y haz click en el botón “+” en la left sidebar.
  2. Selecciona “Create My Own”, luego “For me and my friends”.
  3. Ponle un nombre como “Agent HQ”.
  4. Una vez creado, crea algunos text channels para organizar tu workflow. Right-click en el nombre del server, selecciona “Create Channel”, y agrega:
    • #general — chat general con tu agent
    • #code-tasks — requests de coding y desarrollo
    • #research — research y web search tasks
    • #automations — cron jobs, webhooks, y background tasks
  5. Habilita Developer Mode (lo necesitas para obtener IDs después): Ve a User Settings > App Settings > Advanced y activa Developer Mode.
  6. Copia tu Server ID: Right-click en el nombre de tu server en la sidebar y selecciona “Copy Server ID”. Guárdalo; lo necesitarás para la configuración de OpenClaw.
  7. Copia tu User ID: Right-click en tu propio username en la lista de miembros y selecciona “Copy User ID”. Guárdalo también.
  8. Copia Channel IDs: Right-click en cada channel que creaste y selecciona “Copy Channel ID”. Guárdalos también.

b.2. Generar la Bot Invite URL

Vuelve al Discord Developer Portal (https://discord.com/developers/applications) y haz click en tu bot application.

  1. En la left sidebar, haz click en “OAuth2”, luego “URL Generator”.
  2. En Scopes, marca:
    • bot
    • applications.commands (si quieres slash commands)
  3. En Bot Permissions, marca:
    • Send Messages
    • Read Message History
    • Attach Files
    • Use Slash Commands
    • Add Reactions
    • Embed Links No otorgues Administrator a menos que estés debugging y confíes totalmente en el setup.
  4. Copia la URL generada al final de la página.
  5. Abre la URL en tu browser, selecciona tu server “Agent HQ”, y haz click en “Authorize”.

Tu bot debería aparecer ahora en la lista de miembros del server (se verá como offline hasta que OpenClaw se conecte).

Step 18c: Configurar OpenClaw con el Bot Token

Si ya diste el Discord token durante el onboarding wizard (Step 12), puedes saltarte esto. Si no, configúralo ahora:

Opción A — Environment variable:

export DISCORD_BOT_TOKEN="your-bot-token-here"
Enter fullscreen mode Exit fullscreen mode

Opción B — Configuration file (edita ~/.openclaw/openclaw.json):

{
  "channels": {
    "discord": {
      "enabled": true,
      "token": "your-bot-token-here",
      "guilds": {
        "YOUR_SERVER_ID": {
          "users": ["YOUR_USER_ID"],
          "requireMention": true,
          "channels": {
            "YOUR_GENERAL_CHANNEL_ID": { "allow": true },
            "YOUR_CODE_TASKS_CHANNEL_ID": { "allow": true },
            "YOUR_RESEARCH_CHANNEL_ID": { "allow": true },
            "YOUR_AUTOMATIONS_CHANNEL_ID": { "allow": true }
          }
        }
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Reemplaza YOUR_SERVER_ID, YOUR_USER_ID y los channel IDs con los valores que copiaste en el Step 18a.

El setting requireMention: true significa que tu agent solo responde cuando lo @mention en server channels. Esto evita que responda a cada mensaje. En DMs, tu agent siempre responde.

La users allowlist restringe quién puede interactuar con el bot en tu server a solo tú.

b.3: Reiniciar el Gateway y verificar

# Restart the gateway to pick up the new config
openclaw gateway restart

# Check that Discord is connected
openclaw channels status --probe
Enter fullscreen mode Exit fullscreen mode

Ahora ve a tu Discord server y prueba:

  1. En un server channel: escribe @YourAgent hello.
  2. En un DM: haz click en tu bot en la lista de miembros y envíale un direct message.

Si este es tu primer DM y tu user ID NO está en la users allowlist del config, recibirás un pairing code. Apruébalo:

openclaw pairing list discord
openclaw pairing approve discord <code>
Enter fullscreen mode Exit fullscreen mode

Si tu user ID ya está en la users allowlist (como en el Step 18c), el pairing es automático — no se necesita código.

Discord Tips

  • Back up tu config: Algunos comandos de OpenClaw pueden sobrescribir openclaw.json. Mantén un backup:
cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bak
Enter fullscreen mode Exit fullscreen mode
  • Si el bot conecta pero nunca responde en un channel: tu guild/channel allowlist puede estar negando el channel. Revisa que los channel IDs en tu config coincidan con los que copiaste.

  • Si ves “Used disallowed intents”: vuelve al Developer Portal y asegúrate de que Message Content Intent esté habilitado, luego reinicia el gateway.

  • Thread support: OpenClaw maneja Discord threads automáticamente. Cada thread obtiene su propia conversation session, manteniendo contexts separados.

Step 19: Agregar más channels después

Siempre puedes conectar channels adicionales después del initial setup. OpenClaw soporta WhatsApp, Slack, Signal, iMessage, Microsoft Teams, Matrix, y más. Solo corre:

openclaw channels login
Enter fullscreen mode Exit fullscreen mode

O configúralos desde el Control UI.

Step 20: Test end-to-end

Envía un test message:

openclaw message send --target +15555550123 --message "Hello from OpenClaw"
Enter fullscreen mode Exit fullscreen mode

O simplemente haz DM a tu agent en la plataforma de mensajería que conectaste.

Step 20b: Gmail Integration (Future Step)

El Gmail skill que permite que OpenClaw envíe y lea email en tu nombre no se configura ahora. Tu infrastructure Gmail (yourname@gmail.com) es solo para behind-the-scenes plumbing.

Cuando estés listo para que OpenClaw le escriba a personas, revisa
Fase 10: Set Up Outbound Email abajo.

Fase 7: Instalar la macOS Companion App (Optional but Recommended)

Step 21: Descargar e instalar la macOS App

La macOS companion app provee una interfaz en la menu bar para controlar OpenClaw. Requiere macOS 14+.

  1. Descarga la app desde la official releases page en https://github.com/openclaw/openclaw/releases o desde https://openclaw.ai
  2. Arrastra OpenClaw.app a tu carpeta Applications.
  3. Ejecutala.

Step 22: Conceder permisos de macOS

En el primer launch, macOS te pedirá varios permisos. Concédeselos todos:

  • Notifications: para message alerts y gateway status.
  • Accessibility: para system integration.
  • Microphone: para voice features (optional pero útil).
  • Speech Recognition: para voice wake (optional).
  • Automation/AppleScript: para system control capabilities.

Puedes gestionar esto después en System Settings > Privacy & Security.

Step 23: Configurar la App

  • Asegúrate de que la app esté en Local mode para que conecte con tu local gateway.

  • El ícono en la menu bar muestra el gateway status y da acceso rápido a chat, voice wake controls y settings.

  • La app gestiona el gateway lifecycle y muestra native notifications.

Top comments (0)