Objetivos
- Reintentar por solicitud HTTP, no por flujo de varios pasos.
- Preservar el orden reintentando solo el paso actual.
- Evitar duplicar operaciones no idempotentes.
Valores predeterminados
| Configuración | Valor predeterminado |
|---|---|
| Intentos | 3 |
| Límite máximo de demora | 30000 ms |
| Variación aleatoria | 0.1 (10%) |
| Demora mínima de Telegram | 400 ms |
| Demora mínima de Discord | 500 ms |
Comportamiento
Proveedores de modelos
- OpenClaw permite que los SDKs de proveedores gestionen los reintentos breves normales.
- Para SDKs basados en Stainless, como Anthropic y OpenAI, las respuestas reintentables (
408,409,429y5xx) pueden incluirretry-after-msoretry-after. Cuando esa espera es superior a 60 segundos, OpenClaw inyectax-should-retry: falsepara que el SDK exponga el error de inmediato y la conmutación por error de modelos pueda rotar a otro perfil de autenticación o modelo de respaldo. - Sobrescribe el límite con
OPENCLAW_SDK_RETRY_MAX_WAIT_SECONDS=<seconds>. Establécelo en0,false,off,noneodisabledpara permitir que los SDKs respeten internamente las esperas largas deRetry-After.
Discord
- Reintenta en errores de límite de frecuencia (HTTP 429), tiempos de espera de solicitudes, respuestas HTTP 5xx y fallos transitorios de transporte, como fallos de búsqueda DNS, restablecimientos de conexión, cierres de socket y fallos de fetch.
- Usa
retry_afterde Discord cuando está disponible; de lo contrario, usa retroceso exponencial.
Telegram
- Reintenta en errores transitorios (429, tiempo de espera, conexión/restablecimiento/cierre, temporalmente no disponible).
- Usa
retry_aftercuando está disponible; de lo contrario, usa retroceso exponencial. - Los errores de análisis de HTML/Markdown no se reintentan; vuelven a texto sin formato en el primer intento.
Configuración
Establece la política de reintentos por proveedor en~/.openclaw/openclaw.json:
Notas
- Los reintentos se aplican por solicitud (envío de mensaje, carga de medios, reacción, encuesta, sticker).
- Los flujos compuestos no reintentan pasos completados.