Política de reintentos
Objetivos
Sección titulada «Objetivos»- Reintentar por cada solicitud HTTP, no por cada flujo de varios pasos.
- Conservar el orden reintentando solo el paso actual.
- Evitar la duplicación de operaciones no idempotentes.
Valores predeterminados
Sección titulada «Valores predeterminados»- Intentos: 3
- Límite máximo de retraso: 30000 ms
- Jitter: 0,1 (10 por ciento)
- Valores predeterminados del proveedor:
- Retraso mínimo de Telegram: 400 ms
- Retraso mínimo de Discord: 500 ms
Comportamiento
Sección titulada «Comportamiento»Proveedores de modelos
Sección titulada «Proveedores de modelos»- OpenClaw permite que los SDK de los proveedores manejen los reintentos cortos normales.
- Para los SDK 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 muestre el error inmediatamente y el conmutación por error del modelo pueda rotar a otro perfil de autenticación o modelo alternativo. - Anule el límite con
OPENCLAW_SDK_RETRY_MAX_WAIT_SECONDS=<seconds>. Establezca el valor en0,false,off,noneodisabledpara permitir que los SDK respeten las esperasRetry-Afterlargas internamente.
Discord
Sección titulada «Discord»- Reintentos en errores de límite de velocidad (HTTP 429), tiempos de espera de solicitud, respuestas HTTP 5xx y fallos transitorios de transporte como fallos de búsqueda de DNS, restablecimientos de conexión, cierres de socket y fallos de recuperación.
- Usa el
retry_afterde Discord cuando está disponible, de lo contrario usa retroceso exponencial.
Telegram
Sección titulada «Telegram»- Reintenta en errores transitorios (429, tiempo de espera agotado, conexión/restablecimiento/cierre, no disponible temporalmente).
- Usa
retry_aftercuando está disponible, de lo contrario usa retroceso exponencial. - Los errores de análisis de Markdown no se reintentan; se recurre a texto sin formato.
Configuración
Sección titulada «Configuración»Establezca la política de reintentos por proveedor en ~/.openclaw/openclaw.json:
{ channels: { telegram: { retry: { attempts: 3, minDelayMs: 400, maxDelayMs: 30000, jitter: 0.1, }, }, discord: { retry: { attempts: 3, minDelayMs: 500, maxDelayMs: 30000, jitter: 0.1, }, }, },}- Los reintentos se aplican por solicitud (envío de mensaje, carga de medios, reacción, encuesta, pegatina).
- Los flujos compuestos no reintentan los pasos completados.