OpenClaw · correo electrónico entrante

Llega un correo electrónico. Su agente OpenClaw se despierta.

Instale una habilidad, brinde al agente una bandeja de entrada gratuita y enrute el correo entrante a un enlace de puerta de enlace dedicado con autenticación solo de encabezado.

Requisito previo: un agente OpenClaw en funcionamiento con un proveedor de modelo configurado · sin sondeo · dominio personalizado más adelante

OpenClaw · instalación actual
$openclaw skills install @gwendall/domani
Instalado · @gwendall/domani
$openclaw skills verify @gwendall/domani
Verificado · última versión
$npx domani-cli login --surface skill
Aprobado · credencial guardada en el llavero del sistema

La ruta del evento

La activación de webhook reemplaza un ciclo de sondeo en la bandeja de entrada.

01

Llega el correo electrónico

Un mensaje llega a agente@domani.run.

02

Domani autentica

La Authorization más la X-Domani-Signature acompañan el evento.

03

Mapas de puerta de enlace

/hooks/domani-email convierte la carga útil en una tarea de agente aislada.

04

Actos de agente

OpenClaw puede entregar la respuesta final al canal configurado.

sondeo

Lecturas repetidas, solicitudes inactivas y retrasos establecidos por el intervalo de sondeo.

gancho web

Una pulsación cuando se procesa el correo; conciliar la bandeja de entrada almacenada sólo después del tiempo de inactividad del receptor.

1 · Entrada de puerta de enlace

Asigna la carga útil de Domani a un recorrido de agente aislado.

Fusionar esto en `~/.openclaw/openclaw.json`; preservar las configuraciones existentes más estrictas. Coloque dos valores aleatorios largos diferentes en el entorno de Gateway o `~/.openclaw/.env`: `OPENCLAW_GATEWAY_TOKEN` para autenticación del plano de control y `OPENCLAW_HOOK_TOKEN` para este ingreso. Las ejecuciones de enlaces de agentes están aisladas de forma predeterminada. Reiniciar después de validar.

openclaw.json · fusionar, no reemplazar
${ gateway: { mode: "local", bind: "loopback", auth: { mode: "token", token: "${OPENCLAW_GATEWAY_TOKEN}" } }, hooks: { enabled: true, token: "${OPENCLAW_HOOK_TOKEN}", path: "/hooks", allowRequestSessionKey: false, allowedAgentIds: ["main"], mappings: [{ match: { path: "domani-email" }, action: "agent", agentId: "main", wakeMode: "now", name: "Domani email", messageTemplate: "New email for {{email}}\nFrom: {{message.from}}\nSubject: {{message.subject}}\n\n{{message.text}}", deliver: true, channel: "last" }] } }

token dedicada

Utilice un valor aleatorio largo y no reutilice OPENCLAW_GATEWAY_TOKEN. Las banderas de OpenClaw se reutilizan como un hallazgo de seguridad crítico.

Exposición confiable

Mantén la puerta de enlace limitada a la interfaz de bucle local y expón el hook mediante HTTPS a través de una tailnet o un proxy inverso de confianza. Configura trustedProxies con las IP exactas de los proxys cuando corresponda.

agente restringido

Trate el correo electrónico como una entrada que no es de confianza. Utilice una política de herramientas restringidas y mantenga desactivadas las omisiones de contenido no seguro.

2 · Buzón Domani

Pase el token por variable de entorno y luego pruebe la entrega.

Utilice el formulario HTTPS accesible externamente de su enlace asignado. El mensaje oculto mantiene el valor del portador fuera del historial del shell y la CLI lo lee sin imprimirlo.

Domani CLI · seguro secreto
$read -rsp 'OpenClaw hook token: ' OPENCLAW_HOOK_TOKEN; echo
$export OPENCLAW_HOOK_AUTH="Bearer $OPENCLAW_HOOK_TOKEN"
$domani email webhook agent@domani.run --url 'https://YOUR_GATEWAY/hooks/domani-email' --authorization-env OPENCLAW_HOOK_AUTH
Webhook configurado · Authorization
$domani email webhook-test agent@domani.run
Prueba entregada · HTTP 200
$unset OPENCLAW_HOOK_TOKEN OPENCLAW_HOOK_AUTH

Prueba primero

Requiere un resultado 2xx antes de enviar correo en vivo.

Vive segundo

Envíe un correo electrónico real y confirme exactamente que se inicia una tarea aislada.

Reconciliarse después del tiempo de inactividad

Las devoluciones de llamada del buzón en vivo se intentan hasta tres veces. Sigue leyendo la bandeja de entrada almacenada después de un tiempo de inactividad más prolongado de Gateway porque la entrega del webhook se realiza al menos una vez y las ventanas de reintento están limitadas.

Solución de problemas

Cuatro límites para comprobar.

401 / 429Verifique el token de gancho dedicado. OpenClaw limita los fallos de autenticación repetidos; Espere a Reintentar después en lugar de volver a intentarlo con más fuerza.
404Confirme hooks.enabled, hooks.path y la ruta de mapeo. La URL de Domani debe terminar en /hooks/domani-email para este ejemplo.
Tiempo de esperaAceptación de devolución antes de un largo trabajo del agente. La prueba de Domani tiene un tiempo muerto del receptor de 10 segundos.
El agente no se ejecuta.Valida la configuración, reinicia la puerta de enlace, comprueba allowedAgentIds y revisa los registros de la puerta de enlace para detectar rechazos de asignación o de la política del modelo.

La prueba de Domani demuestra que el Gateway aceptó el evento HTTP. No mide el tiempo de finalización del modelo posterior.

Primer resultado

Crea la bandeja de entrada. Prueba el anzuelo. Envía el correo electrónico.

Mantenga la decisión del dominio personalizado para después de que funcione el bucle de eventos.

Integración comunitaria mediante interfaces documentadas OpenClaw y Domani.